微信小程序使用腾讯云云通信IM(一)

IMSDK小程序demo运行

建议看这个https://gitee.com/cloudtencent/TIMSDK/tree/master/WXMini

本 IM 小程序 demo 是基于 MpVue 框架进行开发的。一分钟跑通 demo 小节只是用于引导您打开编译后的文件进行快速预览,如果您想要进行二次开发,请看开发运行小节。

一分钟跑通demo

  1. 克隆仓库到本地

    # 命令行执行
    git clone https://github.com/tencentyun/TIMSDK.git
    
    # 进入小程序 Demo 项目
    cd TIMSDK/WXMini
    
  2. 安装微信小程序 开发者工具

  3. 使用微信开发者工具导入项目,请注意目录为 /dist/wx,然后填入自己的小程序 AppID。

    [图片上传失败...(image-aadd6a-1584674697398)]

  4. 配置 SDKAPPIDSECRETKEY,获取方式参考:密钥获取方法

    • 打开 /debug/GeneraterUserSig.js 文件

    • 按图示填写相应配置后,保存文件

    [图片上传失败...(image-c47d46-1584674697398)]

  5. 本地配置如下图所示

    • 勾选ES6转ES5选项
    • 勾选不检验合法域名选项
    • 基础库版本 > 2.1.1

    [图片上传失败...(image-aa700e-1584674697398)]

  6. 点击编译即可运行

    [图片上传失败...(image-3851a0-1584674697398)]

    注意事项

    合法域名

    如果您要发布小程序,请将以下域名在【微信公众平台】>【开发】>【开发设置】>【服务器域名】中进行配置

    进入微信公众平台,在小程序开发的服务器域名配置相关域名信息

    添加到 request 合法域名

    域名 说明 是否必须
    https://webim.tim.qq.com Web IM 业务域名 必须
    https://events.tim.qq.com Web IM 业务域名 必须
    https://yun.tim.qq.com Web IM 业务域名 必须
    https://grouptalk.c2c.qq.com Web IM 业务域名 必须
    https://pingtas.qq.com Web IM 统计域名 必须

    添加到 uploadFile 合法域名

    域名 说明 是否必须
    https://cos.ap-shanghai.myqcloud.com 文件上传域名 必须

    添加到 downloadFile 合法域名

    域名 说明 是否必须
    https://cos.ap-shanghai.myqcloud.com 文件下载域名 必须

    [图片上传失败...(image-69f38f-1584674697398)]

开发运行

项目目录

├───sdk/               - 存放tim-wx.js,demo 中未使用,仅供自行集成  
├───build/   
├───config/
├───dist/
│   └───wx/            - MpVue 项目编译后文件目录,使用小程序开发工具导入此文件夹
├───src/
│   ├───components/    - 组件
│   ├───pages/         - 页面
│   ├───store/         - Vuex 目录
│   ├───stylus/        - 全局主题色样式,可以修改全局颜色
│   ├───utils/         - 方法
│   ├───app.json
│   ├───App.vue
│   └───main.js
├───static/            - 静态依赖资源
│   ├───debug/         - 包含 userSig 验证登录方法
│   ├───images/        - 图片
│   └───iview/         - 使用的 iview 组件
├───_doc/
├───.babelrc
├───.editorconfig
├───.eslintignore
├───.eslintrc.js
├───.postcssrc.js
├───index.html
├───package-lock.json
├───package.json
├───project.config.json
└───README.md

准备工作

  1. 获取到您应用的 SDKAPPIDSECRETKEY,方式参考:密钥获取方法

  2. 安装微信小程序 开发者工具

  3. 安装 nodejs 环境 ( Version > 8 ) ,选择合适您安装环境的安装包

    • 安装后,在命令行输入node --version ,如果 > 8 即可

启动流程

  1. 克隆仓库到本地

    # 命令行执行
    git clone https://github.com/tencentyun/TIMSDK.git
    
    # 进入 Demo 项目
    cd TIMSDK/WXMini
    
  2. project.config.json文件中的appid修改为自己微信小程序的appid

    [图片上传失败...(image-3a09d2-1584674697398)]

  3. 配置 SDKAPPIDSECRETKEY,获取方式参考:密钥获取方法

    • 打开 /static/utils/GeneraterUserSig.js 文件

    • 按图示填写相应配置后,保存文件

    [图片上传失败...(image-62009b-1584674697398)]

  4. 安装依赖并启动

    # 安装demo构建和运行所需依赖
    npm install
    
    # 构建并生成最终可在小程序开发工具内使用的代码
    npm run start
    

    使用 npm install 命令,如果有些依赖包无法成功安装

    您可以试着切换源, 例如: npm config set registry http://r.cnpmjs.org/

    然后再执行 npm install

  5. 使用微信开发者工具导入项目,目录为/dist/wx

    [图片上传失败...(image-173f46-1584674697398)]

  6. 本地配置如下图所示

    • 勾选ES6转ES5选项
    • 勾选不检验合法域名选项
    • 基础库版本 > 2.1.1

    [图片上传失败...(image-30d7b2-1584674697398)]

  7. 点击开发工具的编译即可预览该项目

    [图片上传失败...(image-c13d1d-1584674697398)]

    注意事项

    合法域名

    如果您要发布小程序,请将以下域名在【微信公众平台】>【开发】>【开发设置】>【服务器域名】中进行配置

    进入微信公众平台,在小程序开发的服务器域名配置相关域名信息

    添加到 request 合法域名

    域名 说明 是否必须
    https://webim.tim.qq.com Web IM 业务域名 必须
    https://events.tim.qq.com Web IM 业务域名 必须
    https://yun.tim.qq.com Web IM 业务域名 必须
    https://grouptalk.c2c.qq.com Web IM 业务域名 必须
    https://pingtas.qq.com Web IM 统计域名 必须

    添加到 uploadFile 合法域名

    域名 说明 是否必须
    https://cos.ap-shanghai.myqcloud.com 文件上传域名 必须

    添加到 downloadFile 合法域名

    域名 说明 是否必须
    https://cos.ap-shanghai.myqcloud.com 文件下载域名 必须

    [图片上传失败...(image-50d735-1584674697398)]

项目截图

[图片上传失败...(image-e70b7c-1584674697398)]

备注

页面结构

目录 /src/pages

页面 简介
login/ 登录页
index/ 首页,对话列表
chat/ 聊天对话页 & 群信息/用户信息
contact/ 通讯录
own/ 个人信息
create/ 创建群聊
members/ 群成员
profile/ 修改个人信息
groups/ 群列表
groupDetail/ 群详细页
system/ 系统通知页
blacklist/ 黑名单页
detail/ 个人信息&群信息
friend/ 发起会话
mention/ @选择页

注意事项

1. 避免在前端进行签名计算

本 Demo 为了用户体验的便利,将 userSig 签发放到前端执行。若直接部署上线,会面临 SECRETKEY 泄露的风险。正确的 userSig 签发方式是将 userSig 的计算代码集成到您的服务端,并提供相应接口。在需要 userSig 时,发起请求获取动态 userSig。更多详情请参见 服务端生成 UserSig

Change Log

2019/11/21

Feat Add

  • 小程序支持发送视频消息

2019/10/17

Feat Add

  • 增加视频消息的解析
  • 增加语音消息的发送

2019/10/12

Bug Fixes

  • 修复 React 框架下发图片消息失败的问题

2019/09/21

Bug Fixes

  • 修复收到新群系统通知事件名不正确的问题

2019/09/06

Bug Fixes

  • 修复 IE 下超长文本消息的显示超出会话框的问题
  • 修复重发消息失败时无错误提示的问题

2019/09/05

Bug Fixes

  • 修复预览图片时,图片显示不正确的问题
  • 修复点击群组列表时,群成员列表不更新的问题
  • 解决修改个人资料时,报错的问题
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,137评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,824评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,465评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,131评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,140评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,895评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,535评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,435评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,952评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,081评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,210评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,896评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,552评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,089评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,198评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,531评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,209评论 2 357

推荐阅读更多精彩内容

  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 13,778评论 0 15
  • 首先看文档,跑通demo。https://cloud.tencent.com/document/product/2...
    是狮子呀_阅读 5,524评论 1 8
  • 感觉这两天有点要疯,浩姐姐说男生和女生失恋不一样,女生刚失恋的时候痛苦的死去活来,感觉不会再爱了,过一段时间就元气...
    旗木卡卡西是我男神阅读 320评论 0 0
  • 你可能做过傻事,喜欢过不好的人,但成长就是因为克服了这些事,才会发生。晚安。
    柿子大宝阅读 184评论 0 0
  • 一提到上刑这个词首先我就想到了当年看过的看电影江姐,在敌人的老虎凳上被折磨的景象。虽然我感觉今天也有种上刑...
    功不唐捐2019阅读 1,446评论 0 4