UNPKG

@tencentcloud/ai-desk-customer-wechat

Version:

AI Desk customer UIKit for wechat mini program

240 lines (167 loc) 7.05 kB
## 介绍 智能客服用户端的微信小程序 UIKit。使用此 UIKit,您可以在一天内将智能客服的能力集成到您的小程序项目。极简接入,用 AI 为您的产品增收提效。 ## 效果展示 ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027960326/cbc18d2afd8f11efbf88525400e889b2.gif?width=296&height=657) ## 开发环境要求 - 微信开发者工具 - JavaScript 或 TypeScript - node(node.js ≥ 16.0.0) - npm(版本请与 node 版本匹配) ## UIKit 源码集成 ### 步骤1:创建项目 在微信开发者工具上创建一个使用 JS-基础模板的小程序项目(是否使用模板,是否使用 TS 均可),如图所示: ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027960326/d57d220ffd8311efaf3d52540099c741.png) ### 步骤2:下载 UIKit 微信开发者工具创建的小程序项目默认没有 package.json,因此您需要先创建 package.json 文件。 ``` bash npm init -y ``` 通过 NPM 方式下载 UIKit。 ``` bash npm i @tencentcloud/ai-desk-customer-wechat@latest ``` 为了方便您对 UI 进行扩展,请在项目的根目录下执行以下命令,将 UIKit 源码复制到项目中。 【macOS 端】 ``` bash mkdir -p ./ai-desk-customer-wechat && rsync -av --exclude={'node_modules','package.json','excluded-list.txt','script'} ./node_modules/@tencentcloud/ai-desk-customer-wechat/ ai-desk-customer-wechat/ ``` 【Windows 端】 ``` bash xcopy .\node_modules\@tencentcloud\ai-desk-customer-wechat .\ai-desk-customer-wechat /i /e ``` ### 步骤3:分包引入 UIKit 为了规避小程序主包体积超限问题,我们建议您将客服 UIKit 放入分包。 #### #### 1. 工程配置 【app.js】 > **说明:** > > 以下代码使用了[分包异步化](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/async.html)的技术方案。 > ``` javascript "use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); let common_vendor; require.async('./ai-desk-customer-wechat/common/vendor').then((res) => { common_vendor = res; const _sfc_main = { onLaunch: function() { console.log("App Launch"); }, onShow: function() { console.log("App Show"); }, onHide: function() { console.log("App Hide"); } }; function createApp() { const app = common_vendor.createSSRApp(_sfc_main); return { app }; } createApp().app.mount("#app"); exports.createApp = createApp; }).catch(({ errMsg, mod }) => { console.error(`path: ${mod}, ${errMsg}`) }); ``` 【app.json】 > **说明:** > > 请务必配置 [subPackages](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/basic.html)和 [preloadRule](https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/preload.html)。 > ``` javascript { "pages": [ "pages/index/index" ], "subPackages": [ { "root": "ai-desk-customer-wechat", "pages": [ "pages/index/index" ], "entry": "index.js" } ], "preloadRule": { "ai-desk-customer-wechat/pages/index/index": { "network": "all", "packages": [ "ai-desk-customer-wechat" ] } }, "window": { "navigationBarTextStyle": "black", "navigationBarTitleText": "Weixin", "navigationBarBackgroundColor": "#ffffff" }, "style": "v2", "componentFramework": "glass-easel", "sitemapLocation": "sitemap.json" } ``` #### #### 2. 在项目主包页面中配置智能客服的入口 【主包 pages/index/index.js】 ``` javascript Page({ data: { }, getSupport() { // SDKAppID/userID/userSig 的获取请参考步骤4 const SDKAppID = 0; const userID = ''; const userSig = ''; wx.navigateTo({ url: `/ai-desk-customer-wechat/pages/index/index?SDKAppID=${SDKAppID}&userID=${userID}&userSig=${userSig}` }) }, }) ``` 【主包 pages/index/index.wxml】 ``` javascript <button class="get-support" bind:tap="getSupport">咨询客服</button> ``` 【主包 pages/index/index.wxss】 ``` css page { height: 100vh; display: flex; flex-direction: column; } .get-support { background-color: #0052d9; color: #ffffff; margin: auto; } ``` ### 步骤4:获取 SDKAppID 、userID 、 userSig 获取 SDKAppID、userID、userSig 信息后填写到 `pages/index/index.js` 中对应的字段上。 ``` typescript const SDKAppID = 0;// Your SDKAppID const userID = '';// Your userID const userSig = '';// Your userSig ``` - SDKAppID 信息,可通过 [即时通信 IM 控制台](https://console.cloud.tencent.com/im) 获取: ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027984635/1243495d5ec711efb66652540055f650.png) - userID 信息,可单击 [ 即时通信 IM 控制台 > 账号管理](https://console.cloud.tencent.com/im/account-management),切换至目标应用所在账号,**创建 2 个 userID 方便后续体验聊天功能**。 ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027984635/1245cce55ec711ef9bf1525400a9236a.png) - userSig 信息,可单击 [ 即时通信 IM 控制台 > 开发工具 > UserSig生成&校验](https://console.cloud.tencent.com/im/tool-usersig),填写创建的 userID,即可生成 userSig。 ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027984635/12515a985ec711ef8f105254002693fd.png) ### 步骤5:启动项目,并发起您的第一条客服咨询 测试前,请先清理微信开发者工具的缓存,并勾选**本地设置** > **不校验合法域名**。 ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027960326/46244897ff1411efaf3d52540099c741.png) ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027960326/497e1619ff1411efa17e525400454e06.jpeg) ## 常见问题 ### 什么是 UserSig?如何生成 UserSig? UserSig 是用户登录即时通信 IM 的密码,其本质是对 UserID 等信息加密后得到的密文。 UserSig 签发方式是将 UserSig 的计算代码集成到您的服务端,并提供面向项目的接口,在需要 UserSig 时由您的项目向业务服务器发起请求获取动态 UserSig。更多详情请参见 [服务端生成 UserSig](https://cloud.tencent.com/document/product/269/32688#GeneratingdynamicUserSig)。 ### 小程序如果需要上线或者部署正式环境怎么办? 请在 [微信公众平台](https://mp.weixin.qq.com/) > **开发** > **开发管理** > **开发设**置 > **服务器域名**中进行域名配置。域名配置详细参见:[小程序合法域名](https://cloud.tencent.com/document/product/269/75285#56e2dceb-d703-43ea-bf8d-c772318b4eb2)。 ## 交流与反馈 [点此进入 IM 社群](https://zhiliao.qq.com/s/c5GY7HIM62CK),享有专业工程师的支持,解决您的难题。