xiaoNeng
initSDK logout stopChat setTopBarBgColor setHeadIconCircle setCloseChatSessionTime sendCustomMsg openGoodsList openConversationList deleteConversationItem setBeepPath addEventListener
概述
xiaoNeng 封装了小能客服,使用 xiaoNeng 模块可以轻松集成客服功能。
使用小能客服基本流程说明: 1.在小能客服网站(https://www.xiaoneng.cn/)注册帐号,在集成小能SDK之前请先与小能相关人员对接好企业信息,如siteid、settingid、SDKKey等基本信息。
2.在config.xml中配置xiaoneng feature,填写siteid及sdkkey参数
3.前端调用xiaoNeng模块方法,初始化和监听事件。
使用此模块之前需先配置config文件的Feature,方法如下
initSDK
初始化方法
initSDK({parmas},callback(ret))
params
siteid:
- 类型:字符串
- 描述:(必填项)企业id,即企业唯一标识。格式示例:kf_9979
sdkkey:
- 类型:字符串
- 描述:(必填项)企业key,即小能通行密钥
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
status:true,//布尔型;true||false
msgCode:0 //数字类型; 0 表示初始化成功, 201 表示传入siteid错误, 202表示传入sdkkey错误
}
err:
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.initSDK({
siteid:"xx_0000",
sdkkey:"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},function(ret){
console.log(ret)
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
login
登录方法
login({parmas},callback(ret))
params
userId:
- 类型:字符串
- 描述:(必填项)登录用户的id,只能输入数字、英文字母和“@”、“.”、“_”三种字符。长度小于40,并且不能重复,
userName:
- 类型:字符串
- 描述:(选填项)登录用户名,长度小于32,显示于PC客服端,如未填写,系统随机会随机生成一个用户名,,如:客人9527
userlevel:
- 类型:数字
- 描述:(必填项)登录用户的等级,普通用户“0”,VIP用户传“1”。默认写 0
callback(ret)
ret:
- 类型:字符串
- 内部字段:
{
msgCode:0 //数字类型;0 表示登录成功 401表示传入userid错误 402表示传入username错误 403表示传入userlevel错误 404 表示登录失败
}
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.login({
userId:"9527",
userName:"麦帅比",
userlevel:0
},function(ret){
console.log(ret)
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
logout
登出方法
logout(callback(ret))
callback(ret)
ret:
- 类型:字符串
- 内部字段:
{
status:true,//布尔型;true||false
msgCode:0 //数字类型;0 表示登出成功, 501 表示登出失败
}
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.logout(function(ret){
console.log(ret)
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
startChat
打开聊窗的方法(前提是已经执行了initSDK方法)
startChat({parmas},callback(ret))
params
settingid:
- 类型:字符串
- 描述:(必填项)有效接待组Id
goodsID:
- 类型:字符串
- 描述:(必填项)标识id,例如商品id
itemparam:
- 类型:字符串
- 描述:(选填项)额外扩展参数
startPageTitle:
- 类型:字符串
- 描述:(选填项)咨询发起页标题
startPageUrl:
- 类型:字符串
- 描述:(选填项)咨询发起页URL
callback(ret)
ret:
- 类型:字符串
- 内部字段:
{
status:true,//布尔型;true||false
msgCode:0 //数字类型;0 表示打开成功,604表示打开聊窗失败
}
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.startChat({
goodsID::"66666",
itemparam:"额外参数",
settingid:"xx_0000_1652013140616"
},function(ret){
console.log(ret)
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
stopChat
停止某个聊天会话,用于android打开聊天窗不刷新的时候需要先停止当前聊天会话
stopChat({parmas})
params
settingid:
- 类型:字符串
- 描述:(必填项)有效接待组Id
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.stopChat({
settingid:"xx_0000_1652013140616"
});
可用性
Android系统
可提供的1.0.0及更高版本
setShowCard
名片链接的显示样式设置,默认纯文本
setShowCard({parmas})
params
isShow:
- 类型:布尔
- 描述:(必填项)true为显示;false为不显示
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.setShowCard({
isShow:true
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setTopBarBgColor
setTopBarBgColor({parmas})
params
bgColor:
- 类型:字符串
- 描述:(必填项)指示器颜色;支持 rgb、rgba、#;
示例代码
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setUsersHeadIcon
访客头像的设置
setUsersHeadIcon({parmas})
imgPath:
- 类型:字符串
- 描述:(必填项)图片路径(本地路径,fs://、widget://)
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.setUsersHeadIcon({
imgPath:'widget://image/xx.png'
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setHeadIconCircle
设置聊天头像是否显示为圆形,建议统一设置,否则在ios上存在设置圆形就无法设置回正方形
setHeadIconCircle({parmas})
params
isCircle:
- 类型:布尔
- 描述:(必填项)true为圆形;false为方形
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.setHeadIconCircle({
isCircle:true
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setNotificationShowTitleHead
android通知消息的标题前称设置
setNotificationShowTitleHead({parmas})
params
titleHead:
- 类型:字符串
- 描述:(必填项)称呼,例如名字
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.setNotificationShowTitleHead({
titleHead:'麦帅比'
});
可用性
Android系统
可提供的1.0.0及更高版本
setCloseChatSessionTime
关闭聊天会话的时间设置(分钟)
setCloseChatSessionTime({parmas})
params
timeInMinute:
- 类型:数字
- 描述:(必填项)多少分钟
示例代码
xiaoNeng.setCloseChatSessionTime({
timeInMinute:5
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
openVideoPlus
开启聊天小视频功能
openVideoPlus()
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.openVideoPlus();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
sendCustomMsg
消息发送的扩展,在聊天窗口
sendCustomMsg({parmas})
params
sendType:
- 类型:数字
- 描述:(必填项)1为普通文字的消息;2为最近商品格式的消息;3为订单格式的消息;
msgs:
- 类型:字符串数组
- 描述:(必填项)发送的消息信息, -当sendType=1,msgs={txt:”内容”}; -当sendType=2,msgs={goodsId:”id”,goodsTitle:”标题”,goodsPrice:”价格”,goodsImageUrl:”图片路径”}; -当sendType=3,msgs={orderId:”id”,orderNo:”订单号”,orderNum:”商品数量”,orderPrice:”价格”,orderTime:”时间”,imageUrl:”图片路径”};
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.sendCustomMsg({
sendType:2,
msgs:{goodsId:"id",goodsTitle:"标题",goodsPrice:"价格",goodsImageUrl:"图片路径"}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
addPlusFunction
增加聊天面板+号功能区除默认功能之外的功能(点击事件配合PlusFunctionClick事件使用)
addPlusFunction({parmas})
params
functionType:
- 类型:数字
- 描述:(必填项)1表示商品列表;2表示订单列表;android支持其他自定义,ios目前不支持其他自定义;
functionName:
- 类型:字符串
- 描述:(必填项)增加功能的名字
functionNomalIcon:
- 类型:字符串
- 描述:(必填项)增加功能的默认图片(本地路径,fs://、widget://)
functioPressIcon:
- 类型:字符串
- 描述:(必填项)增加功能的按下切换图片(本地路径,fs://、widget://)
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.addPlusFunction({
functionName:"最近商品",
functionNomalIcon:"widget://image/Nomal.png",
functioPressIcon:"widget://image/Press.png",
functionType:1
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
openGoodsList
打开最近商品列表界面(配合聊天窗下方面板功能使用)
openGoodsList({parmas})
params
title:
- 类型:字符串
- 描述:(选填项)打开窗口的标题
goodsList:
- 类型:对象数组
- 描述:(必填项)商品集合如下
[{
goodsId:"id",
goodsTitle:"标题",
goodsPrice:"价格",
goodsImageUrl:"图片链接"
}]
示例代码
var xiaoNeng = api.require('xiaoNeng');
var goodsList =[{
goodsId:"20693",
goodsTitle:"标题1",
goodsPrice:"66.00",
goodsImageUrl:""
},{
goodsId:"25564",
goodsPrice:"66.00",
goodsImageUrl:""
}];
xiaoNeng.openGoodsList({
title:"",
goodsList:goodsList
});
可用性
iOS系统,Android系统
openOrderList
打开最近订单列表界面(配合聊天窗下方面板功能使用)
openOrderList({parmas})
params
title:
- 类型:字符串
- 描述:(选填项)打开窗口的标题
goodsList:
- 类型:对象数组
- 描述:(必填项)订单集合如下
[{
orderId:"订单id",
orderNo:"订单号",
orderNum:"商品数量",
orderPrice:"总价格",
orderTime:"订单时间",
imageUrl:"缩略图链接"
}]
示例代码
iOS系统,Android系统
可提供的1.0.0及更高版本
openConversationList
打开会话列表界面(配合聊天窗下方面板功能使用)
openConversationList({parmas})
params
title:
- 类型:字符串
- 描述:(选填项)打开窗口的标题
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.openConversationList({
title:""
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getConversationList
获取消息(会话)列表(支持同步)
getConversationList(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
{
"conversationList:":[{
"isSelfMsg":false;//是否是自己发送的消息
"isunread":false;//是否已读
"uname":"";//发送消息的客服名称
"textmsg":"",//消息内容
"msgtime":2656516,//消息时间
"messagecount":2,//未读的消息数量
"uicon":"",//客服头像
"settingid":""//发送消息的客服组接待id
}]
}
示例代码
var xiaoNeng = api.require('xiaoNeng');
同步;
异步:
xiaoNeng.getConversationList({},function(rs){
console.log(JSON.stringify(rs.conversationList));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
deleteConversationItem
根据settingid移除消息(会话)
deleteConversationItem({parmas})
params
settingid:
- 类型:数字
- 描述:(必填项)会话id
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.deleteConversationItem({
settingid:"xx_0000_1652013140616"
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
openExplorer
根据链接打开自定义浏览器
openExplorer({parmas})
params
title:
- 类型:字符串
- 描述:(选填项)打开窗口的标题
netUrl:
- 类型:字符串
- 描述:(必填项)网络地址
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.openExplorer({
netUrl:"http://www.xiaoneng.cn/index.html"
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setBeepPath
设置播放提示音
setBeepPath({parmas})
params
soundPath:
- 类型:字符串
- 描述:(选填项)声音路径
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.setBeepPath({
netUrl:"widget://res/1.wav"
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
beepPlay
播放提示音
beepPlay({parmas})
params
isOpenVibrator:
- 类型:布尔
- 描述:(选填项)是否震动
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.beepPlay({
isOpenVibrator:false
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
addEventListener
基本的事件监听
addEventListener({parmas}, callback(ret))
params
name:
- 类型:字符串
- 描述:监听的事件类型
- 类型如下:
- UnreadMsg(未读消息的监听)
- MsgUrlClick(点击聊天的消息监听)
- ClickShowGoods(显示头部商品点击事件的监听)
- PlusFunctionClick(+号功能区的扩展的监听)
- CustomMsgClick(聊窗自定义消息点击事件的监听)
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
- UnreadMsg
{
"settingid":"",//客服组接待id
"username":"",//客服名字
"msgcontent":"",//消息内容
"messagecount":""//消息总数
}
- MsgUrlClick
{
"contentType":3,//数字类型 3数字电话类 还有其他类型等
"urlorEmailorNumber":"",//网址或者数字或者Email
}
- ClickShowGoods
{
"goodsId":"",//商品id
"goodsTitle":"",//商品名称
"goodsPrice":"",//商品价格
"goodsImageUrl":"",//商品图片URL
"goodsUrl":"",//商品URL(点击跳转)
"goodsShowurl":"",//商品小页面URL(设置以商品URL显示时传入)
"itemparam":"",//附加扩展参数
}
- PlusFunctionClick
{
"functionType":1,//功能类型
"functionName":"",//功能名称
}
- CustomMsgClick
{
"msgType":1,//1为普通文字的消息;2为最近商品格式的消息;3为订单格式的消息;
"msg":"",//发送的消息信息对应 sendCustomMsg方法的字段
}
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.addEventListener({
name:"UnreadMsg"
},function(ret){
console.log(ret);
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
enableDebug
是否开启debug日志模式
enableDebug({parmas})
params
isDebug:
- 类型:布尔
- 描述:(选填项)是否开启debug
示例代码
var xiaoNeng = api.require('xiaoNeng');
xiaoNeng.enableDebug({
isDebug:true
iOS系统,Android系统