安卓SDK接入常见问题
Q:安卓sdk发送消息的sessionId如何获取?
A:安卓端可通过UnicornMessageBuilder类中的getSessionid方法来获取sessionid。
Q:app端访客分配/多入口分配不生效有哪些原因?
A:1、app信息不正确:后台添加app时,需要确认app名称、app包名(安卓端)、bundleid(iOS端)与实际开发者设置的app信息完全一致,如果不一致就会导致设置后不生效的情况2、代码中设置了分组或客服id:开发者需要确认代码中是否指定了分组或客服id,代码的优先级高于后台设置,当有代码设置的情况时后台设置不会生效3、未切换人工客服:请确认当前是否处于人工客服模式,只有切换到人工客服时,才会触发分配逻辑。
Q:原生接入APP未访问的访客,七鱼采用主动推送消息达到营销效果是怎么样的?
A:对原生sdk接入app且未进行客服咨询的访客,七鱼提供主动推送消息接口供开发者使用,访客端通过点击推送消息,并回复信息给客服。这里ios和安卓的区别在于ios用户直接回复信息即可,安卓用户需要点击2次发送才能将消息成功发送给客服,原因在于ios和安卓的推送机制不一样。
Q: android 接入的时候 设置ImageLoader是GLide,GLide是4.0 以上的版本,这些版本中onLoadFailed没有Exception 怎么办?
A: 需要设置一下: listener.onLoadFailed(null), 这样是回调一个 null 的异常 ,只需要告诉七鱼 sdk 异常了就可以了。
Q:安卓sdk接入后,用户发不了图片或发图片后显示叹号是什么原因?
A:确认下是否安卓9.0及以上版本出现的问题,请查看报错是否有:”javax.net.ssl.SSLHandshakeException: Domain specific configurations require that hostname aware checkServerTrusted(X509Certificate[], String, String) is used”安全认证错误,检查是否允许http请求,七鱼的图片都是通过http请求发送的,需要设置允许http请求才可以,具体可参考: https://www.jianshu.com/p/57047a84e559?tdsourcetag=s_pcqq_aiomsg的解决办法
Q:setUserInfo示例中authToken有什么用?
A:authToken是七鱼这边提供的一套用户认证机制,即企业自行在前端生成一个authToken,在调用setUserInfo时,将authToken字符串的值带入给七鱼,七鱼这边会在建立客服连接前,请求企业的接口(企业需要预先提供一个接口给七鱼,七鱼添加到系统配置中),企业通过authToken与userid进行用户身份的判断,若身份信息合法则正常请求客服,若不合法则访客无法连接上客服,如有需要可联系七鱼技术支持进行配置,若不需要,可忽略该参数。
Q:如何设置通过栏推送消息的头像?
A:StatusBarNotificationConfig接口中有notificationSmallIconId与bigIconUrl,建议把两个头像都设置一下。
Q:queryLastmessage获取不到消息怎么处理?
A:queryLastmessage查到的content中的消息是文本消息,如果最后一条发的消息是图片或其他类型的消息,需要通过getAttachment获取。
Q:主动调用发送消息接口buildTextMessage时,其中的sessionid如何获取?
A:可通过UnicornMessageBuilder类中的getSessionId方法获取到sessionid。
Q:安卓端如何自定义请求人工客服?
A:开发者可通过EventService类中的requestStaff(Boolean humanOnly)接口,在合适位置调用,以达到自定义请求人工客服的场景。
IOS SDK接入常见问题
Q:iOS端apns推送逻辑是怎么样的?
A:app在前台时不会走apns推送,只有在app退到后台时才会有apns推送,若企业想要app在前台时也有推送,可通过onReceiveMessage监听接收到客服回复的消息,判断app在前台时自行做本地推送即可。
Q:sessionviewcontroller该如何管理?
A:sessionViewController需要每次开启会话时都进行新建,退出界面时自动释放,不能够持有。
WEB-JS接入常见问题
Q:浮层样式下传groupid或staffid不生效是什么问题?
A:由于浮层样式的特殊性,在页面加载时就已经生成了url,可能会存在不运行config中代码的情况,解决方案是需要在后台 在线系统—访客端—样式设置—web端处,添加一个对话框样式模板(添加后可不使用),添加后系统不会自动生成链接,此时即会正常运行前端的config中的代码。
Q:浮层样式下可以使用ysf(‘url’)方法获取链接吗?
A:浮层样式下不支持通过ysf(‘url’)方法直接获取链接打开,若企业一定要在浮层样式下获取url打开,可在获取到url后,将链接上的 /iframe 的参数去掉,再去打开处理后的链接即可。
Q:浮层样式下如何监听sdk加载完成事件?
A:分两种情况:1、在后台样式中有添加模板的情况下,需要通过ysf(‘onready’)监听sdk加载完成 2、在后台样式中未添加模板的情况下,需要通过ysf(‘onlayerload’)事件来监听sdk加载完成。
Q:web端访客看到的访客头像可以自定义吗?
A:目前web端仅支持设置客服看到的访客头像(通过config接口中的avatar字段),访客看到的访客头像目前不支持自定义设置,只能使用系统默认头像。
Q:webview集成后,安卓及iOS端点击拍照没反应该如何处理?
A:1、安卓端webview接入请先确认开启了localstorage,webview在与原生界面交互时,需要单独加代码处理,可下载zip压缩包,查看相关说明及代码参考:点击查看
Q:iOS端点击拍照按钮无反应
A:根源是因为包含UIWebView的ViewController是Model弹出的,处理方案有两种:1.修改为不Model弹出2.继承Model弹出的ViewController,在派生类中加上workround的方法: -(void)dismissViewControllerAnimated:(BOOL)flagcompletion:(void (^)(void))completion{if ( self.presentedViewController){[super dismissViewControllerAnimated:flag completion:completion];}}
Q:iOS端webview接入后输入框不能输入的
A:在webview配置中添加代码:[webView evaluateJavaScript:@”document.documentElement.style.webkitUserSelect=”auto” completionHandler:nil]
Q:在七鱼咨询页面,访客点击返回上一页时,会提示是否离开此页面,这个提示如何去除?
A:在config接口调添加参数:unconfirm:1 就可以将提示去掉了,如果使用H5咨询链接,可在链接后拼接参数:&unconfirm=1
WEB-纯链接接入常见问题
消息接口接入常见问题
Q:为什么消息接口中微信来源用户有时候发送的图片会展示“此图片来自微信公众平台未经允许不可引用”?
A:微信对于公众号素材的版权控制很严格,若企业将图片上传至微信公众平台素材库,然后得到该图片链接并引用到非公众号图文消息中,那么微信就会显示以上提示。有效的规避方法是将图片转存到自己的存储,这样拿到的链接将不受引用限制。
Q:企业crm接口对接中,是否支持将自定义字段展示在用户信息标签页?
A:crm接口可以使用zone字段控制字段是否显示在用户信息页,map字段可针对三个默认字段(real_name、mobile_phone、email),对客户资料下的对应三个参数值进行填值覆盖。
Q:订单绩效的逻辑是怎么样的?
A:企业需要调用七鱼的订单绩效接口,将订单信息上报给七鱼,上报的订单系统中包含支付时间参数,七鱼侧会根据支付时间参数往前推48小时,找到最近一次与访客咨询的客服账号,算作该客服的成单绩效。
Q:crm接口和iframe对接时,使用https还是http链接?
A:建议使用https链接,crm接口与iframe页面都是由客服前端直接发起的请求,会存在跳协议的问题,若crm接口与iframe页面使用了http链接,则只能通过http登陆七鱼系统使用,若使用了https链接,则可以通过http和https登陆七鱼使用(呼叫中心必须使用https登陆七鱼)
Q:工单推送接口中的accessToken加密策略是怎么样的?
A:工单推送中的accessToken=md5(企业的appKey+推送的时间戳)
微信授权接入常见问题
公众号授权
Q:微信公众号有微信自己的客服是否可以和七鱼的客服一起使用?
A:微信公众号自己的客服和七鱼客服有冲突,会导致七鱼客服收不到消息,授权接入七鱼时,需要将微信公众号自己的客服关闭掉。
Q:公众号报错:该公众号提供的服务出现故障,请稍后再试 如何处理?
A: 这条报错产生后,七鱼这边消息收发是正常的,没有影响七鱼,本条提醒语是微信发送的提示,需要企业自行排查微信接入的其他第三方接入是否正常或是否做了微信开发,一般建议可以其他第三方服务全部解绑,找到是哪个服务异常导致。
Q:微信公众号授权绑定接入,怎么对接CRM接口或iframe?
A:微信公众号授权绑定可以对接CRM接口或iframe,不过需要有一个前提:企业有用户微信号openid和CRM信息的对应关系,因为授权绑定方式,七鱼直接获取了用户的openid作为userid做了上报,crm接口在对接时,七鱼侧会将访客的openid上报给crm接口,接口需要根据openid返回对应用户的信息。
小程序授权
Q:webview集成小程序的情况下,如何设置校验域名?
A:1、先添加企业的二级域名xxx.qiyukf.com 至小程序后台进行校验 2、将小程序后台的校验文件下载后(不做任何修改),上传至七鱼后台 在线系统—在线接入—网站—第三方认证文件设置 处,完成二级域名的校验 3、此时已经可以在小程序webview中直接接入H5咨询链接,若要在webview中通过web js方式接入,则需要在七鱼的js后添加?subdomain=1 的参数,即:http://qiyukf.com/script/KEY.js?subdomain=1 添加后前端发起的请求都将以二级域名开头,符合小程序webview的验证规则。