uni-app小程序接入腾讯云智服会话插件

uni-app小程序接入腾讯云智服会话插件

首先,腾讯云智服会话插件是一个微信的原生第三方插件,他的开发文档也只给原生微信小程序提供了接入方式,并没有给其他框架提供接入的方式,看过他的开发文档后,先想的是怎么在uni-app里面接入,but尝试了很久,没成功,具体原因就不说了,如果有大佬知道怎么在uni-app里面接入请记得告诉我,哈哈哈
我的实现方式其实很简单就是在编译后的文件里面修改,操作如下:

  1. 申请使用插件
    登录小程序管理后台(在微信公众平台登录小程序账号),通过“设置-第三方设置-插件管理”添加插件:
    腾讯云智服小程序插件appid:wx738958e0f4c894f9,请使用最新稳定版本。
    提交申请审核通过后就可以使用了。
    开发文档说在小程序的app.json里面配置插件plugins的相关信息,那么在Uni-app的项目里与app.json所对应的文件就是manifest.json文件,在该对应的微信配置(mp-weixin)里加入:
 "plugins": {
    "chat": {
      "version": "xxx",
      "provider": "wx738958e0f4c894f9"
    }
  },
  "sitemapLocation": "sitemap.json"

记得“version”版本号不要忘记填!!!

  1. 组件初始化
    这一步是我纠结了很久的,不知道在哪里去初始化,最终选择在编译后的文件里面操作了。。。
    在编译后的dist => dev => mp-weixin首先在这个下面加入plugin文件夹,里面放我们的这个会话插件:
    在这里插入图片描述
    这个chat文件夹里面的js、json、wxss都是空的,只有wxml里面有一个chat组件
<view>
    <chat></chat>
</view>

插件的官方文档说必须要用一个单独的页面来放置组件,所以在uni-app的页面配置里面就需要新建一个空白页面,同样,在编译后的空白页面的js文件里面先删掉所有的代码然后初始化组件:

var plugin = requirePlugin("chat");
Page({
  onLoad() {
      plugin.init({
      sign: '',  //必传,公司渠道唯一标识,腾讯云智服后台系统创建「小程序插件」渠道后,在「渠道管理」获取
      token: '', //非必填
      uid: '',   //用户唯一标识,如果没有则不填写,默认为空
      title: '', //非必填,如果未填写,默认获取配置标题
      isRMB: '', //商品是否显示人民币¥,默认显示,false不显示
      data: {    //参数c1,c2,c3,c4,c5用于传递用户信息,参数d1,d2,d3,d4,d5,d6用于传递商品信息,默认为空
          c1: '',
          c2: '',
          c3: '',
          c4: '',
          c5: '',
          d1: '', //商品描述
          d2: '', //价格
          d3: '', //原价格
          d4: '', //展示商品图片链接
          d5: '', //商品跳转链接
          d6: '', //商品id
          data: ''//加密串,非必填
      },
      viewUrl(res){  //需要跳转的链接,则需要配置一个web-view
        if (res) {
          wx.navigateTo({
            url: '/pages/webview/index?href=' + res
          })
        }
      },
      setTitle(res){  //设置标题
        if (res) {
          wx.setNavigationBarTitle({
            title: res
          })
        }
      },
      setBarColor(res) {   //设置导航栏背景色
        if (res) {
          wx.setNavigationBarColor({
            frontColor: '#ffffff',
            backgroundColor: res
          })
        }
      },
      success(res){  //初始化成功时调用
        if (res.data == 'success') {
          console.log('success');
        }
      },
      fail(res){    //初始化失败时调用
        if (res.data == 'initError') {
          console.log(res.message);
        }
      },
      leave(res){       //离开会话页面
        if (res) {
          console.log(res);
        }
      }
    })
  }
})

在组件的json文件里面进行配置:

{
  "usingComponents": {
    "chat": "plugin://chat/chat"
  }
}

在新建的页面wxml里面使用组件:

<view bind:__l="__l">
	<chat></chat>
</view>
  1. 获取sign值
    这一部分插件的开发文档讲的很清楚,我就不赘述了,将获取的这个sign填入初始化组件的js文件中就ok啦~
    记住:第二步的所有操作都是在编译后的文件中进行的。
    这样做其实很别扭,虽然说目的达到了,但是过程并不美好,而且只要项目重新编译就要重复一次这样的操作。。。但是目前也想不到其他的操作了,所以如果有大神知道怎么接入这个插件,请记得告诉我,谢啦~~
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值