在移动端开发中,与用户互动的界面往往是非常重要的一环。为了提供更好的用户体验,我们常常会使用各种第三方库。今天,我们要介绍的是一个非常实用的 npm 包:react-native-udesk
。
Udesk 简介
Udesk 是一家国内领先的客服解决方案提供商,他们提供了包括实时通信、IM 机器人、工单、客户信息、知识库等多项服务。而 react-native-udesk
则为你提供了一个快速接入 Udesk 服务的解决方案。
安装
首先,我们需要使用 npm 安装 react-native-udesk
:
--- ------- ------------------ ------
接下来,我们需要添加 Udesk SDK。如果您使用的是react-native
< 0.60 版本,请在项目根目录下执行:
------------ ---- ------------------
如果使用的是react-native
>= 0.60 版本,请使用 autolinking 功能,无需手动链接。
集成
初始化
在你的 App 启动时,需要执行初始化操作。因为 Udesk 的 SDK 是基于 Native 开发的,为了让 JS 与 Native 端建立链接,需要执行如下初始化代码:
------ ----- ---- --------------------- ------------------- - ----------------------- ------- ----------------------- ------ -------------- ------- --------------- --- -
其中 domain
、appId
和 appKey
可以在 Udesk 后台管理中心找到。
启动聊天界面
执行如下代码,打开聊天界面:
---------------------
如果你需要传入自定义信息,可以使用如下代码:
-------------------- --------- - --------- ----------------- --------- ---------- --- ---------------- ------------ ------ ---------------------- ------------ ---------- -------------- - - --------- -------------- ----------- ---------------- -- - --------- -------------- ----------- ---------------- -- -- -- ---
其中 sdkToken
可以通过 Udesk 的 API 接口获取,其他参数则为自定义信息。
接收推送消息
Udesk 提供了在后台管理系统中进行消息推送的功能,我们只需要在前端进行简单的配置就可以实现消息推送服务。
首先,请确保你已经在 Udesk 后台管理系统中开启了消息推送功能,并且进行了相应的配置。
接下来,在你的 App 启动时,执行如下代码:
------ - ------------------ - ---- --------------- ------ ----- ---- --------------------- ------------------- - -------------------------------------- --- -- - ------------------ ------- ---------- ----- --- - ---------------------- - ------------------------------------------ -
这里使用了 RN 自带的 DeviceEventEmitter
,用于在 Native 端和 Javascript 端进行消息通信。
在这里,我们监听名为 UdeskReceive
的事件,当有新消息接收时,就会触发这个事件,从而执行相应代码。
总结
通过上面的介绍,我们可以看到,使用 react-native-udesk
包非常方便。只需要简单的几行代码即可接入 Udesk 的服务,让你的客服服务更加便捷高效。
如果你正在开发一款移动应用,并且需要集成客服功能,可以考虑使用 react-native-udesk
作为你的第一个选择。
示例代码
------ ------ - --------- - ---- -------- ------ - ----------- ----- ----------------- ---- - ---- --------------- ------ ----- ---- --------------------- ------ ------- ----- --- ------- --------- - ------------------- - ----------------------- ------- ----------------------- ------ -------------- ------- --------------- --- -------------------------------------- --- -- - ------------------ ------- ---------- ----- --- - ---------------------- - ------------------------------------------ - ----------- - -- -- - -------------------- --------- - --------- ----------------- --------- ---------- --- ---------------- ------------ ------ ---------------------- ------------ ---------- -------------- - - --------- -------------- ----------- ---------------- -- - --------- -------------- ----------- ---------------- -- -- -- --- -- -------- - ------ - ----- ------------------------- ----- ---------------------------- -- -- ---------- ----------------- --------------------------- ----- ----------------------------- --------- ------------------- ------- -- - - ----- ------ - ------------------- ---------- - ----- -- --------------- --------- ----------- --------- ---------------- ---------- -- ------ - --------- --- ---------- --------- ------- --- -- ------- - --------- --- ------ ---------- ---------------- ---------- ----------- --- -------------- --- ------------ --- ------------- --- ------------- -- -- ---
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600562a381e8991b448dfd74