小程序中使用goEasy实现IM实时通讯

小程序中使用IM

想在小程序使用个人用户互相聊天、用户群组聊天功能,大致思路都一样,都是通过长连接实现,项目中没有充裕的时间去实现,于是引入了goEasy的实时通讯功能,goEasy IM通信文档,官网中有例子。由于业务代码太多不好讲解,那就针对官网的例子进行简单的讲解。

1、运行起来

首先去仓库克隆下来 GoEasy / IM即时通讯聊天(Uniapp 小程序 Vue React Taro H5)
我们选择了使用uni-app做小程序,这里我们clone后使用HBuilder X 打开文件夹web-im-demo-master\uniapp\src
备注:使用什么工具开发无所谓,这里用VScode也行,逻辑是一样的

1.1 基础配置

先把appkey配置上,去官网个人申请一个就可以了使用common key
在这里插入图片描述

1.2 运行

直接运行到Chrome,然后就可以开始通信了
在这里插入图片描述

在这里插入图片描述

2、代码分析

主要讲入口操作,以及关键的三个页面:会话列表 通讯录 聊天页面

2.1 入口初始化goEasy

在入口文件main.js (不同的框架可以是不同的入口,这个入口指的是刚进入整个项目的时候,写在哪感觉合理就行)
进行了初始化的操作,然后用了一个监听器 回调函数里面在页面底部渲染了未读数
在这里插入图片描述

2.2 会话列表

会话列表pages/conversations页面
在这里插入图片描述
在代码中主要是在页面进入时候,每次页面被重新渲染都要调起整个流程
1、获取个人信息连接GoEasy(收到个人消息)
2、通过个人id查询需要订阅的groupId 并订阅(收到群消息)
3、开起消息列表更新监听
在这里插入图片描述

2.3 通讯录

这个页面跟goEasy没啥关系,用户都是用的自己的系统的 userId 就够了

2.4 聊天页面

这里是个人的聊天、具体的各种逻辑跟着方法名搜索就可以。
群聊是同理的方式只是发送消息的对象变成了群id
在这里插入图片描述

3、其他

在业务中 goEasy 自定义能力比较强,在项目中通过订单orderId作为groupId 实现了付费咨询

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
使用goeasy与Java实现web应用有以下步骤: 1. 配置开发环境:确保已经正确安装Java开发工具箱(JDK)和集成开发环境(IDE),比如Eclipse、IntelliJ IDEA等。 2. 创建Java Web项目:在IDE新建一个Java Web项目,选择合适的项目类型和配置。 3. 导入goeasy库:从官方网站或Maven央仓库下载最新版本的goeasy Java库,然后将其导入到项目。 4. 创建Servlet:在项目创建一个Servlet类,这是Java Web应用的处理请求和响应的主要逻辑实现。可以通过继承HttpServlet类或实现Servlet接口来创建Servlet类。 5. 配置Servlet映射:在项目的web.xml文件配置Servlet的映射路径,使得当Web服务器接收到相应的请求时,能够正确地调用Servlet类进行处理。 6. 编写业务逻辑:在Servlet编写相应的业务逻辑,比如处理用户请求、查询数据库、生成动态页面等。 7. 使用goeasy发送消息:在业务逻辑,调用goeasy库提供的API发送消息。首先创建一个goeasy实例,并配置相应的参数,如Appkey和Appsecret。然后通过调用实例的publish方法,将要发送的消息发布到指定的频道或主题。 8. 接收消息并处理:在客户端页面使用goeasy库的订阅功能,订阅相应的频道或主题。当有消息到达时,goeasy会通过回调函数返回消息内容,可以根据需要进行相应的处理,比如更新页面数据、展示提示信息等。 9. 部署和测试:完成代码编写后,将Java Web项目部署到Web服务器上进行测试。在浏览器输入相应的URL,触发Servlet处理请求并使用goeasy发送和接收消息。根据测试结果对代码进行优化和调试。 总的来说,使用goeasy与Java实现Web应用需要创建Servlet、配置映射、编写业务逻辑,通过goeasy实现消息的发送和接收。这样可以实现实时通信、消息推送等功能,为Web应用增加更好的用户体验。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值