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/
iOS聊天客服功能(Udesk)的更多相关文章
- ios开发之 -- 5分钟集成融云的客服功能
最近项目中遇到了客服的功能,首先想到的就是使用融云的功能,因为以前做的即时通讯的项目,用的都是融云的sdk,花了点时间研究了下,希望能帮到大家! 废话不多说,步骤如下: 一.申请融云账号 二.创建应用 ...
- spring boot+vue实现H5聊天室客服功能
spring boot+vue实现H5聊天室客服功能 h5效果图 vue效果图 功能实现 spring boot + webSocket 实现 官方地址 https://docs.spring.io/ ...
- Tawk.to一键给自己的网站增加在线客服功能
Tawk.to一键给自己的网站增加在线客服功能 很多外贸网站只有contact页面,留下邮箱.电话等联系方式,而在国际贸易当中能够及时在线交流沟通,能给客户留下更好的印象.接下来,就让我们一起来了解一 ...
- C#开发微信门户及应用(7)-微信多客服功能及开发集成
最近一直在弄微信的集成功能开发,发现微信给认证账户开通了一个多客服的功能,对于客户的咨询,可以切换至客服处理的方式,而且可以添加多个客服进行处理,这个在客户咨询比较多的时候,是一个不错的营销功能.微信 ...
- weixin-java-mp集成微信公众号自带客服功能
电脑端登录公众号管理后台,[添加功能插件]开通客服功能,输入"人工客服"接入客服热线 底部有我的微信二维码,如有问题,可加好友进行技术交流! weixi ...
- 前端开发之旅-zopim在线即时聊天客服
一.与潜在客户实时聊天的神奇-zopim Zopim是一款高效的可嵌入网页中去的即使通讯与网站访客信息追踪的的Web软件.知道谁在访问您的网站吗?想和他们实时交流吗?想更有效的把握商机吗?使用Zopi ...
- 项目接入即时聊天客服系统(环信系统)PHP后端操作
环信工作原理: 一.由于环信没有直接的接口来主动调取本项目中的用户数据,所有用户信息必须在环信服务器上注册对应信息成为环信的用户:(这样才能当用户进入聊天时显示其基本信息,如:名称.昵称.电话.邮箱等 ...
- 【情人节来一发】网站添加QQ客服功能
今年的元宵节遇到情人节,挺不自量力的,呵呵,开篇给各位讲个段子,早上一美女同学在空间发说说道:“开工大吉 起床啦,卖元宵,卖玫瑰,卖避孕套啦-有木有一起去发财的小伙伴?Let’s go…”,对于此种长 ...
- 网页调启用qq对话聊天客服窗口的链接地址方法大全(包含移动端)
z转自: http://www.wazhuti.com/1781.html 在PC端,腾讯的QQ软件还是应用最为广泛的即时通讯工具了,除了网站自动的一些对话软件外,qq可以有效的将用户留存下来, ...
随机推荐
- 记账本-NABCD分析
N(Need)需求 这个软件主要解决了大学生管理自己财务状况的问题,随着手机支付的日趋流行大家对财务的概念就变成了银行卡账户余额的一串数字,在不知不觉中,这串数字就一变小,也就出现了月光族.由此看来, ...
- Logstash利用ruby将有用的日志放到一个ES_INDEX将无用的日志放到另一个ES_INDEX
input{ kafka { bootstrap_servers => "127.0.0.1:9092" client_id => "nginxlog&quo ...
- js属性对象的hasOwnProperty方法
Object的hasOwnProperty()方法返回一个布尔值,判断对象是否包含特定的自身(非继承)属性. 判断自身属性是否存在 var o = new Object(); o.prop = 'ex ...
- 如何在cocos中为节点添加监听事件
一般在监听键盘事件时,可是采用以下方式来监听键盘事件: 以及记得定义取消监听的函数(这个摧毁函数会自己调用吗?): 同时这里还有一种传统的监听方式: 但是cocos官方的文档建议我们不要使用这种方式, ...
- python之基于libsvm识别数字验证码
1. 参考 字符型图片验证码识别完整过程及Python实现 2.图片预处理和手动分类 (1)分析图片 from PIL import Image img = Image.open('nums/ttt. ...
- Hexo主题yilia增加gitalk评论插件
虽然gitment可以实现评论功能,但是适配方面做的并不好,这里借用GitHub上的gitalk项目用来优化个人博客的评论功能 下面记录自己从gitment到gitalk的替换过程: 1.在layou ...
- Jarvis OJ 一些简单的re刷题记录和脚本
[61dctf] androideasy 164求解器 50 相反 脚本如下: s='' a=113, 123, 118, 112, 108, 94, 99, 72, 38, 68, 72, 87, ...
- Nginx实现URL重写
本文利用Nginx实现URL重写,本文使用Nginx与静态页面配合重写URL. 1.准备工作. 结合本文场景,需要安装Nginx. 1.1 关于Linux系统安装Nginx可以参考我的文章---(传送 ...
- css 网格布局简单应用
将属性 display 值设为 grid 或 inline-grid 就创建了一个网格容器,所有容器直接子结点自动成为网格项目. grid :网格项目按行排列,网格项目占用整个容器的宽度. inlin ...
- cons-跨域请求
当一个资源从与该资源本身所在的服务器不同的域或端口不同的域或不同的端口请求一个资源时,资源会发起一个跨域 HTTP 请求. 出于安全考虑,浏览器会限制从脚本内发起的跨域HTTP请求.例如,XMLHtt ...