期盼已久全平台支持-开源IM项目OpenIM之uniapp更新

简介: 期盼已久全平台支持-开源IM项目OpenIM之uniapp更新

国内uniapp使用广泛,OpenIM的uniapp sdk以及文档和demo (https://github.com/OpenIMSDK/Open-IM-Uniapp-Demo)都已更新,本文主要展示如何打包、初始化、登录。


离线插件方式

  1. 下载最新离线插件
    git clone https://github.com/OpenIMSDK/Open-IM-SDK-Uniapp.git
  2. 将下载下来的Tuoyun-OpenIMSDK文件夹整个放入uniapp项目根目录下的nativeplugins文件夹下(若没有该文件夹则新建)。


  1. 打开uniapp项目根目录下manifest.json文件,打开App原生插件配置,选则本地插件进行导入。


  1. 在项目中引入SDK及监听器。
    const openIM = uni.requireNativePlugin("Tuoyun-OpenIMSDK");
    const event = uni.requireNativePlugin("globalEvent");

    export { openIM,event }
  2. 项目云打包自定义调试基座。


  1. 启动自定义调试基座
    需先选择运行基座为自定义调试基座



插件市场云插件方式

  1. 在dcloud插件市场为uniapp项目绑定云插件。
    选择后需要绑定对应包名。


  1. 打开uniapp项目根目录下manifest.json文件,打开App原生插件配置,选则云端插件进行导入。


  1. 余下步骤同上离线插件方式4-6。


初始化SDK

调用其他API之前必须先初始化SDK。
im.initSDK(operationID, {                                           // operationID为随机字符串即可  用于定位问题
      platform: Platform,                                           // 平台号 参考通用结构中Platform
      api_addr: "http://121.37.25.71:10002",    // IM API地址
      ws_addr: "ws://121.37.25.71:10001",           // IM Ws地址
      data_dir:"data_dir",                                      // SDK数据存放目录(绝对路径)
      log_level: 6,                                                     // SDK日志级别
      object_storage: "minio",                              // 图片等资源储存方式 目前支持"minio"、"cos"
    });


设置监听

设置监听的时机必须在初始化之后,登录之前。
im.setUserListener();                   // 用户相关监听
im.setFriendListener();             // 好友相关监听
im.setGroupListener();              // 群聊相关监听
im.setAdvancedMsgListener();  // 消息相关监听
im.setConversationListener(); // 会话相关监听


登录IM

必须等待登录成功回调之后才能调用其他API(除初始化和设置监听) 如获取好友列表等。注意一定要等待成功回调
im.login(
    operationID,    // operationID为随机字符串即可  用于定位问题
    userID,             // 用户ID    注意此userID要和token中的userID一致
    token,              // 用户token  注意此token中的platform要和初始化的platform一致
    (res) => {
      if (res.errCode !== 0) {
       // 登录失败
      } else {
        // 登录成功
      }
    }
  );

项目成果

从服务端到客户端SDK开源即时通讯(IM)整体解决方案,可以轻松替代第三方IM云服务,并能根据业务需求高度自定义和二次开发,打造具备聊天、社交、办公功能的app。

OpenIM继续领跑开源IM领域,在广大开发者的大力支持下,目前github star持续突破。越来越多的开发者把OpenIM应用在社交,协同办公领域。在运营过程中也暴露并修复了代码的一些bug,由于使用场景广泛,OpenIM越来越健壮,开源价值也凸显出来了。



github地址: https://github.com/OpenIMSDK/Open-IM-Server

开发者中心:https://doc.rentsoft.cn/#/

OpenIM是什么

OpenIM是由IM技术专家打造的开源的由golang实现的即时通讯组件,目前github社区活跃,star近万,排名遥遥领先,开发者7000人,力争开源IM项目No1。支持Android、iOS原生开发,支持Flutter、uni-app跨端开发,支持小程序、React等所有主流web前端技术框架, PC支持Electron,Flutter、iOS、uniapp已有成熟demo可以体验。。OpenIM包括IM服务端和客户端SDK,实现了高性能、轻量级、易扩展等重要特性。开发者通过集成OpenIM组件,并私有化部署服务端,可以将即时通讯、实时网络能力快速集成到自身应用中,并确保业务数据的安全性和私密性。

目录
相关文章
|
2月前
|
存储 网络协议 前端开发
基于开源IM即时通讯框架MobileIMSDK:RainbowChat v11.7版已发布
Android端主要更新内容: 1)[优化] 优化了首页“消息”列表中单聊类型未正确同步时的收发消息和点击后的处理逻辑; 2)[优化] 优化了首页“消息”列表中同一好友和陌生人会话不能自动合并的问题;
69 2
|
3天前
|
算法 前端开发 API
开源轻量级IM框架MobileIMSDK的鸿蒙NEXT客户端库已发布
MobileIMSDK-鸿蒙端是一套基于鸿蒙Next(纯血鸿蒙)系统的IM即时通讯客户端库: 1)超轻量级(编译后库文件仅50KB)、无任何第3方库依赖(开箱即用); 2)纯ArkTS编写、无Native代码、高度提炼、简单易用; 3)基于鸿蒙Next标准WebSocket API,简洁优雅; 4)可运行于任何支持鸿蒙Next的平台; 5)能与 MobileIMSDK的各种客户端完美互通; 6)可应用于鸿蒙Next中的消息推送、客服聊天、企业OA、IM等场景。
75 45
|
2月前
|
移动开发 网络协议 小程序
基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v9.1版已发布
RainbowChat是一套基于开源IM聊天框架 MobileIMSDK 的产品级移动端IM系统。RainbowChat源于真实运营的产品,解决了大量的屏幕适配、细节优化、机器兼容问题
66 5
|
3月前
|
JSON JavaScript 小程序
使用VSCode搭建UniApp + TS + Vue3 + Vite项目
`uniapp` 是一个基于 Vue.js 的框架,支持一次开发多端部署,深受前端开发者喜爱。本文详细介绍如何使用 `VSCode` 搭建 `uniapp` 项目,包括安装 `node` 和 `pnpm`、创建项目、安装扩展组件、配置 `Json` 文件注释及安装相关插件。通过这些步骤,你可以高效地使用 `VSCode` 开发 `uniapp` 项目,并享受代码提示和自动补全功能,提高开发效率。
361 24
使用VSCode搭建UniApp + TS + Vue3 + Vite项目
|
2月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
365 3
|
2月前
|
机器学习/深度学习 自然语言处理 搜索推荐
大厂 10Wqps智能客服平台,如何实现架构演进?
40岁老架构师尼恩,凭借深厚的架构功力,指导众多小伙伴成功转型大模型架构师,实现职业逆袭。尼恩的《LLM大模型学习圣经》系列PDF,从基础理论到实战应用,全面覆盖大模型技术,助力读者成为大模型领域的专家。该系列包括《从0到1吃透Transformer技术底座》《从0到1吃透大模型的基础实操》《从0到1吃透大模型的顶级架构》等,内容详实,适合不同水平的读者学习。此外,尼恩还分享了多个智能客服平台的实际案例,展示了大模型在不同场景中的应用,为读者提供了宝贵的实践经验。更多技术资料和指导,请关注尼恩的《技术自由圈》公众号。
大厂 10Wqps智能客服平台,如何实现架构演进?
|
3月前
|
移动开发 前端开发 JavaScript
开源即时通讯IM框架MobileIMSDK的H5端技术概览
开源即时通讯IM框架MobileIMSDK的H5端技术概览
71 2
开源即时通讯IM框架MobileIMSDK的H5端技术概览
|
4月前
|
小程序 前端开发 Java
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
JavaDog Chat v1.0.0 是一款基于 SpringBoot、MybatisPlus 和 uniapp 的简易聊天软件,兼容 H5、小程序和 APP,提供丰富的注释和简洁代码,适合初学者。主要功能包括登录注册、消息发送、好友管理及群组交流。
118 0
SpringBoot+uniapp+uview打造H5+小程序+APP入门学习的聊天小项目
|
13天前
|
机器学习/深度学习 自然语言处理 搜索推荐
深度分析 | 2024主流的智能客服系统有哪些?他们是怎么实现的?
本文深入探讨了智能客服系统的使用方法和相关技术实现逻辑,涵盖前端交互、服务接入、逻辑处理、数据存储四大层面,以及自然语言处理、机器学习、语音识别与合成、数据分析与挖掘、知识库管理和智能推荐系统等核心技术,帮助企业更好地理解和应用智能客服系统,提升服务效率和客户满意度。
77 1
|
2月前
|
存储 自然语言处理 机器人
实战揭秘:当RAG遇上企业客服系统——从案例出发剖析Retrieval-Augmented Generation技术的真实表现与应用局限,带你深入了解背后的技术细节与解决方案
【10月更文挑战第3天】随着自然语言处理技术的进步,结合检索与生成能力的RAG技术被广泛应用于多个领域,通过访问外部知识源提升生成内容的准确性和上下文一致性。本文通过具体案例探讨RAG技术的优势与局限,并提供实用建议。例如,一家初创公司利用LangChain框架搭建基于RAG的聊天机器人,以自动化FAQ系统减轻客服团队工作负担。尽管该系统在处理简单问题时表现出色,但在面对复杂或多步骤问题时存在局限。此外,RAG系统的性能高度依赖于训练数据的质量和范围。因此,企业在采用RAG技术时需综合评估需求和技术局限性,合理规划技术栈,并辅以必要的人工干预和监督机制。
165 3