前言:

在商城或者需要用户和平台交流的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)的更多相关文章

  1. ios开发之 -- 5分钟集成融云的客服功能

    最近项目中遇到了客服的功能,首先想到的就是使用融云的功能,因为以前做的即时通讯的项目,用的都是融云的sdk,花了点时间研究了下,希望能帮到大家! 废话不多说,步骤如下: 一.申请融云账号 二.创建应用 ...

  2. spring boot+vue实现H5聊天室客服功能

    spring boot+vue实现H5聊天室客服功能 h5效果图 vue效果图 功能实现 spring boot + webSocket 实现 官方地址 https://docs.spring.io/ ...

  3. Tawk.to一键给自己的网站增加在线客服功能

    Tawk.to一键给自己的网站增加在线客服功能 很多外贸网站只有contact页面,留下邮箱.电话等联系方式,而在国际贸易当中能够及时在线交流沟通,能给客户留下更好的印象.接下来,就让我们一起来了解一 ...

  4. C#开发微信门户及应用(7)-微信多客服功能及开发集成

    最近一直在弄微信的集成功能开发,发现微信给认证账户开通了一个多客服的功能,对于客户的咨询,可以切换至客服处理的方式,而且可以添加多个客服进行处理,这个在客户咨询比较多的时候,是一个不错的营销功能.微信 ...

  5. weixin-java-mp集成微信公众号自带客服功能

    电脑端登录公众号管理后台,[添加功能插件]开通客服功能,输入"人工客服"接入客服热线 底部有我的微信二维码,如有问题,可加好友进行技术交流! ​ ​ ​ ​ ​ ​ ​ weixi ...

  6. 前端开发之旅-zopim在线即时聊天客服

    一.与潜在客户实时聊天的神奇-zopim Zopim是一款高效的可嵌入网页中去的即使通讯与网站访客信息追踪的的Web软件.知道谁在访问您的网站吗?想和他们实时交流吗?想更有效的把握商机吗?使用Zopi ...

  7. 项目接入即时聊天客服系统(环信系统)PHP后端操作

    环信工作原理: 一.由于环信没有直接的接口来主动调取本项目中的用户数据,所有用户信息必须在环信服务器上注册对应信息成为环信的用户:(这样才能当用户进入聊天时显示其基本信息,如:名称.昵称.电话.邮箱等 ...

  8. 【情人节来一发】网站添加QQ客服功能

    今年的元宵节遇到情人节,挺不自量力的,呵呵,开篇给各位讲个段子,早上一美女同学在空间发说说道:“开工大吉 起床啦,卖元宵,卖玫瑰,卖避孕套啦-有木有一起去发财的小伙伴?Let’s go…”,对于此种长 ...

  9. 网页调启用qq对话聊天客服窗口的链接地址方法大全(包含移动端)

    z转自:    http://www.wazhuti.com/1781.html 在PC端,腾讯的QQ软件还是应用最为广泛的即时通讯工具了,除了网站自动的一些对话软件外,qq可以有效的将用户留存下来, ...

随机推荐

  1. Java项目使用SQLite数据库后无法启动的问题

    背景: Java > maven 的 jar 项目 功能是记录用户的每天的按键次数 使用 jar2exe 工具将 jar 转为 exe 可执行文件 原本项目中使用的Mysql数据库,使用Myba ...

  2. node+mongoose+vue

    app.js 入门 let express = require('express'); let app = express(); let allowCrossDomain = function (re ...

  3. 树莓派做coolpy服务器

    安装前需要了解的 1. coolpy是一个基于NodeJS的物联网平台(官网http://icoolpy.com). 注:国内物联网平台有乐联网,yeelink等,但只有coolpy是开源的. 2. ...

  4. There is no getter for property named 'XXX' in 'class java.lang.String'解决方法

    <select id="ProjectHomePage" parameterType="string" resultType="java.uti ...

  5. Wxpython入门

    Wxpython入门 api文档以及中文教程: https://pan.baidu.com/s/1TDTgHg9Mwc74ODQy68YnlQ 提取码:354n 入门示例 frame=wx.Frame ...

  6. 作业二 | Git的安装与使用

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址https://github.com/k ...

  7. Java 中的内部类

    前言 在第一次把Java 编程思想中的内部类这一章撸完后,有点印象.大概知道了什么时内部类,局部内部类,匿名内部类,嵌套内部类.随着时间的推移,自己慢慢的就忘记了,总感觉自己思考的东西不多,于是 看了 ...

  8. ko.js学习一

    一.KO是一个MVVM框架 声明式绑定 (Declarative Bindings):使用简明易读的语法很容易地将模型(model)数据关联到DOM元素上. UI界面自动刷新 (Automatic U ...

  9. React(三)JSX内置表达式

    (一)JSX是什么? React 使用 JSX 来替代常规的 JavaScript. JSX 是一个看起来很像 XML 的 JavaScript 语法扩展. 我们不需要一定使用 JSX,但它有以下优点 ...

  10. GMA Round 1

    学弟说我好久没更blog了. 因为自己最近其实没干什么. 所以来搬运一下GMA Round 1 的比赛内容吧,blog访问量.网站流量一举两得. 链接:https://enceladus.cf/con ...