点此源码获取

前几篇博文

前几篇文章实现了,利用云开发的即时通信demo做的仿照微信好友聊天
本篇文章主要在前几篇的基础上进行的修改,实现 即时一对一聊天,群聊天,发送文件图片,发送语音,更换聊天背景图、利用订阅消息发送好友申请的通知

云开发实现小程序即时通信

是借助于小程序云开发的即时通信demo实现的聊天功能。具体实时的聊天是在chatrooom文件中实现的。通信功能,订阅消息的实现在前几篇文章已经说过了,下边就简单说一下如何实现其他的功能。

发送文件、发送语音

wx.chooseMessageFileconst //选择文件
recorderManager = wx.getRecorderManager() //录音
const innerAudioContext = wx.createInnerAudioContext()//播放录音
wx.cloud.downloadFile//云存储的文件下载到本地,进行文件的下载或者播放录音
wx.cloud.getTempFileURL//获取云存储的临时路径

我只是做了个模板而已,样式大家也可以自己进行更改。
像在录音的时候,同步记录录音的秒数,展示在聊天框的时候可以根据录音的秒数同步 语音效果显示的长度(就跟微信的语音一样,几秒几秒的)。还有发送文件的样式,可以修改css wxml文件,更改成自己想要的效果。

更换聊天背景

更换聊天背景图,用的是更改字段的方法,在user表中的friends数组中寻找好友,添加backgroundimage字段,从而进行修改。

    try {await db.collection('user').where({_openid:myopenid,'friends._openid':event.haoyouopenid}).update({data:{'friends.$.backgroundimage':event.pic}})} catch (e) {console.error(e)}

微信小程序云开发实现一对一即时聊天,发送语音、文件、图片、朋友圈、添加好友等功能相关推荐

  1. 微信小程序云开发如何实现读取和下载excel文件导入数据到云数据库中?简单好理解

    一般我们在开发中会遇到通过excel文件一键导入数据的模板操作,我们在微信小程序中可以使用node-xlsx插件来解析excel文件的内容变成以json格式的数据返回. 在处理该操作的云函数中下载安装 ...

  2. 【微信小程序-原生开发】转发给好友/群,分享到朋友圈(含单页模式访问云开发数据库的方法)

    转发给好友/群 在对应页面的 js 文件中,添加如下代码 // 点击右上角转发分享给好友/群onShareAppMessage() {let detail = this.data.detailretu ...

  3. 获取微信html代码,微信小程序云开发js抓取网页内容

    最近在研究微信小程序的云开发功能.云开发最大的好处就是不需要前端搭建服务器,可以使用云端能力,从零开始写出来一个能上线的微信小程序,避免了买服务器的开销,对于个人来尝试练手微信小程序从前端到后台的开发 ...

  4. html访问微信云数据库,node.js 抓取网页内容(针对微信小程序云开发)

    最近在研究微信小程序的云开发功能.云开发最大的好处就是不需要前端搭建服务器,可以使用云端能力,从零开始写出来一个能上线的微信小程序,避免了买服务器的开销,对于个人来尝试练手微信小程序从前端到后台的开发 ...

  5. 微信小程序云开发入门实践

    云开发介绍 什么是云开发 2017年微信小程序发布后,一度的开发模式是前端页面使用微信小程序的相关组件,在涉及到后台登录及业务交互的时候,需要使用自建的服务器,后台不管是PHP还是JAVA架构,都需要 ...

  6. 微信小程序--云开发之获取多条数据(大于限制20条)

    前言 微信小程序云开发中的获取数据API一次最多获取20条记录,那么怎么获取全部记录呢? 方法一 利用上拉刷新,每上拉一次(触碰底部时触发function)便获取20条记录,然后与原来记录合并. js ...

  7. 微信小程序云开发实战:网上商城(五)

    微信小程序云开发实战:购物车 前言 服务端 客户端 商品列表页面 购物车页面 下一节 前言 代码下载 一般购物车如上图所示.具体结算时,有满减.优惠卷.免单等各种方式. 服务端 在管理页面添加[活动] ...

  8. python操作微信小程序云端数据库_微信小程序云开发之数据库操作

    本文实例为大家分享了微信小程序云开发之数据库操作的具体代码,供大家参考,具体内容如下 新建集合 1.打开云开发控制台,数据库 2.添加集合users 添加代码 onAdd: function () { ...

  9. 微信小程序云开发不完全指北

    微信小程序云开发不完全指北 首先必须说明云开发的"云"并不是类似云玩家里的云的意思,而是微信小程序真的提供了云开发的接口以及一个简单的提供存储.数据库服务的虚拟后台(对于一些轻量小 ...

最新文章

  1. elasticsearch报错expected <block end>, but found BlockMappingStart解决方法
  2. 大小端、位段和内存对齐
  3. 在Spring MVC Web应用程序中添加社交登录:单元测试
  4. this.get_element .style为空或不是对象
  5. testng_TestNG @工厂注释
  6. 赛尔笔记 | 通用领域条件性知识图谱数据集
  7. oracle esb 灾备,两地三中心双活系统灾备切换场景和数据补录问题?
  8. MATLAB图像滤波去噪分析及其应用
  9. [OpenDrive] OpenDrive学习笔记
  10. Node.js 将MEGA网盘的指定目录下载并打包成ZIP
  11. 计算机专业研究生的读研规划思考------转载
  12. MATLAB求解矩阵特征值的六种方法
  13. 统计推断——假设检验——检验的功效(势)
  14. 静坐常思己过,闲谈莫论人非。
  15. 内网自建yum源和apt源(含各信创系统)
  16. 58、【backtrader股票策略】两资产的配对交易策略(pairs trading strategy)
  17. C语言中的Sleep函数
  18. php stomp rabbitmq,rabbitmq-web-stomp 优化过程
  19. 浅谈矩阵 矩阵快速幂 动态dp 矩阵求逆
  20. 电商微营销茶会第2期 | “微信营销、淘宝成交”玩法解析

热门文章

  1. 智能车竞赛技术报告 | 节能信标组 - 浙江大学 - 浙大三队
  2. python微信推送消息_Python实现微信推送模板消息功能示例
  3. K3 Cloud中有关锁库与预留的功能解释
  4. ARMv8-A编程指导之MMU(1)
  5. 一文读懂:支持向量机(SVM)非线性分类问题
  6. Hive中 Oder by 、sort by、distribute by 和 cluster by
  7. Python3.xprint时只回车不换行方法
  8. ubuntu16.04LTS使用gnome桌面
  9. 【VSCODE】切换分支
  10. DIV+CSS实现电台列表设计