iOS聊天客服功能(Udesk)
前言:
在商城或者需要用户和平台交流的app中需要用到客服功能。接下来会讲解udesk客服功能的实现。技术文档在udesk官网可以看到,本文讲述在项目中的集成实现流程。客服使用的pc端交流工具账号在公司客服手中,作者也没权限。想了解的开发者可联系作者,作者私下交流。
集成sdk:
pod 'udesksdk'
使用的时候导入头文件
#import "udesk.h"
初始化sdk:
//初始化公司(appkey、appid、domain都是必传字段)
udeskorganization *organization = [[udeskorganization alloc] initwithdomain:kudeskdomain appkey:kudeskappkey appid:kudeskappid];
//注意sdktoken 是客户的唯一标识,用来识别身份,是你们生成传入给我们的。
//sdk_token: 传入的字符请使用 字母 / 数字 等常见字符集 。就如同身份证一样,不允许出现一个身份证号对应多个人,或者一个人有多个身份证号;其次如果给顾客设置了邮箱和手机号码,也要保证不同顾客对应的手机号和邮箱不一样,如出现相同的,则不会创建新顾客。
udeskcustomer *customer = [udeskcustomer new];
//必填(请不要使用特殊字符)
customer.sdktoken = self.usermodel.id;
//非必填
customer.nickname = self.usermodel.nick;
//需要严格按照邮箱规则(没有则不填,不可以为空)
//customer.email = @"test@udesk.cn";
//需要严格按照号码规则(没有则不填,不可以为空)
customer.cellphone = self.usermodel.mobile;
//customer.customerdescription = @"我是测试";
//初始化sdk
[udeskmanager initwithorganization:organization customer:customer];
注意,昵称和手机号码,最好用自己app用户的信息,这样和客服交流的时候,客服人员可以轻松知道用户的信息。
打开客服交流页面:
//客服组
//udesksdkconfig *sdkconfig = [udesksdkconfig customconfig];
//sdkconfig.groupid = @"groupid";
//sdkconfig.agentid = @"agentid";
//头像
udesksdkstyle *sdkstyle = [udesksdkstyle customstyle];
//通过url设置头像
sdkstyle.customerimageurl = self.usermodel.avatar;
//表情
udeskemojipanelmodel *model = [udeskemojipanelmodel new];
//必填
model.emojiicon = [uiimage imagenamed:@"likesticker"];
model.bundleurl = [[nsbundle mainbundle] urlforresource:@"sticker" withextension:@".bundle"];
//非必填
model.stickertitles = @[@"愤怒",@"哭泣",@"糟糕",@"冷汗",@"大笑",@"可爱",@"爱",@"流汗",@"害羞",@"睡觉",@"惊讶",@"调皮"];
udesksdkconfig *sdkconfig = [udesksdkconfig customconfig];
sdkconfig.imagepickerenabled = yes;
//最大选择图片数量(开启状态)
sdkconfig.maximagescount = 1;
//是否支持选择视频(开启状态)
sdkconfig.allowpickingvideo = yes;
//压缩质量 0.1-1(开启状态)
sdkconfig.quality = 0.5f;
//
udesksdkactionconfig *actionconfig = [udesksdkactionconfig new];
//离开人工im页面回调
actionconfig.leavechatviewcontrollerblock = ^{
[[nsnotificationcenter defaultcenter] postnotificationname:notication_cusetercenterback object:nil];
[self getcustercenrernewscount];
};
udesksdkmanager *sdkmanager = [[udesksdkmanager alloc] initwithsdkstyle:sdkstyle sdkconfig:sdkconfig sdkactionconfig:actionconfig];
[sdkmanager pushudeskinviewcontroller:self completion:nil];
//使用present
//[sdkmanager presentudeskinviewcontroller:self completion:nil];
详细文档和账号注册可到udesk官网操作
地址:http://www.udesk.cn/
上一篇: 初识jQuery