介绍

OpenIM:由前微信技术专家打造的基于 Go 实现的即时通讯(IM)开源项目,包括IM服务端和客户端SDK。开发者私有化部署,基于SDK二次开发,可以轻松替代第三方IM云服务,打造具备聊天、社交功能的app。无论是开发同城交友、企业办公亦或是当今最热门的元宇宙,还是在应用中集成IM功能,都非常便捷。OpenIM代码100%开源,开源协议Apache-2.0 License任何企业和个人都可以免费使用(包括商用)。

请各位看官多多支持,转发和宣传,助力OpenIM成为开源IM的No1

web端体验地址

http://121.37.25.71:23232/

项目成果

截止到今天,github star数量达到6k,开源IM项目的领跑者

  • 开发者文档:https://doc.rentsoft.cn/
  • github地址:https://github.com/OpenIMSDK/Open-IM-Server

OpenIM不是个人兼职项目, 是商业化全职团队运作,有针对性VIP客户的收费服务,保证项目长期健康发展。

本周重点特性

客户端SDK v1.0.7

特性 类别
pc web demo第二版发布,多端同步,群组功能完善 新特性
支持免打扰功能:设置接收消息不提醒;设置不接收消息 新特性
修复bug:同一个手机重复登录和踢出 bug修复

服务端 v1.0.6

特性 类别
支持免打扰功能:设置接收消息不提醒;设置不接收消息 新特性
支持iOS推送 新特性

docker已更新,请拉取最新镜像,docker部署常见问题总结分析和解决办法 见文档: https://doc.rentsoft.cn/demo/server_deploy/docker_singe.html

OpenIM每周都会迭代发布新版本,主要针对bug修复和系统优化,特别值得注意的是,版本号的第一位数字代表大版本,一般是做了协议改造升级,服务器和客户端两者必须保持大版本一致。

分支说明:(1)dev:外部开发者在此分支上提交pr; (2)tuoyun:OpenIM内部专用;(3)main:最新可用分支;

服务端一键部署

docker 安装、启动

安装

curl -sSL https://get.daocloud.io/docker | sh

或者

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

启动、停止

重启docker服务

 sudo service docker restart

关闭docker

 sudo service docker stop

docker-compose安装

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

部署

如果确定是首次安装,可以直接采用如下命令完成1-4步

git clone https://github.com/OpenIMSDK/Open-IM-Server.git --recursive; cd Open-IM-Server/script ; chmod +x *.sh ; ./env_check.sh;cd .. ; docker-compose up -d;cd script ; ./docker_check_service.sh

端口开放

需要开通外网端口(TCP):17778(消息,必须开),10000(API,必须开), 30000(jssdk专用,需要才开), 42233 (短信验证码端口,需要才开),25(邮箱验证码端口,需要才开)

如果check成功,但是端口连接不上,一般是端口开放或者防火墙问题导致。

当然也可以不开通以上端口,而通过nginx做转发。

web端一键部署

环境要求

  • node 14.17.5+

开发测试

  • 拉取项目

    git clone https://github.com/OpenIMSDK/Open-IM-PC-Web-Demo.git
    
  • 安装依赖

    npm install
    
  • 修改配置

    配置文件位置为:src/config/index.ts

    项目默认配置地址为OpenIM测试服务器地址,若您已部署OpenIM-Server在自己的服务器上,需要修改为对应地址,否则可跳过此步骤。

    项目默认使用腾讯云COS服务,可根据需求自行更改文件存储服务。

    //    注册服务地址
    export const AXIOSURL = "http://47.112.160.66:42233"
    //  axios请求超时时间
    export const AXIOSTIMEOUT = 60000
    //  OpenIM-Server JS SDK port
    export const IMURL = "ws://47.112.160.66:30000"
    //  获取cos临时密钥地址
    export const COSAUTHORIZATIONURL = "http://47.112.160.66:10000"
    //  cos bucket
    export const COSBUCKET = "echat-1302656840"
    //  cos region
    export const COSREGION = "ap-chengdu"
    //  cos 缩略图格式配置
    export const PICMESSAGETHUMOPTION = "?imageView2/1/w/200/h/200/rq/80"
    
  • Web运行调试

    默认运行端口为3000

    npm run start:renderer
    
  • 打包部署

    打包生成文件在项目根目录build文件夹下,将文件夹内容上传服务器部署即可。

    npm run build:renderer
    

重点特性展示


关于我们

托云信息技术(成都)有限公司

我们致力于通过开源模式,为全球企业/开发者提供简单、易用、高效的IM服务和实时音视频通讯能力,帮助开发者降低项目的开发成本,并让开发者掌控业务的核心数据。

开源的价值

从公司成立之初就将“开源”作为核心战略来推进,开源充分体现了自由、平等、分享的互联网精神。

全球范围频繁发生的数据泄露、勒索病毒、隐私滥用等安全事件一次次给企业敲响警钟,企业管理者对数据资产的价值、数据安全的重要性有了更清晰的认识,数据安全成就企业核心价值。

IM作为核心业务数据,安全的重要性毋庸置疑,OpenIM开源以及私有化部署让企业能更放心使用。

我们的团队

创始团队来自前微信技术团队,我们致力于用开源技术创造服务价值,打造轻量级、高可用的IM架构,开发者只需简单调用 SDK,即可在应用内构建多种即时通讯及实时音视频互动场景。

OpenIM邀请全球技术极客参与技术优化,让开发者轻松集成,让每一个应用都具备IM功能,同时考虑企业的接入成本、服务器资源以及最重要的数据安全性和私密性。

OpenIM有什么特色

(1) 开源永久免费

代码全部开源,永久免费,包括客户端和服务端,由前微信技术专家打造,并邀请全球技术极客参与建设。开源协议Apache-2.0 License任何企业和个人都可以免费使用(包括商用),但必须在应用启动页加上 :由OpenIM提供技术支持

(2) 易扩展

服务端采用golang实现,首创“一切皆消息”的通讯模型,轻松实现自定义消息和扩展功能。,无论是已读回执,群通知等都采用此模型,复用消息通道。

(3) 专业技术服务

每个技术人员都承担技术客服的角色,强化社区,及时解答。搭建微信社区,telegram群组,github上issue和社群互动,提升问题解决效率。

(4) 高性能

借鉴并优化通讯架构,抽象在线消息、离线消息、历史消息存储模型,分层治理架构,支持集群部署,平行扩展。

(5) 安全

代码全部开源,服务端私有化部署,数据自我掌控。数据安全大于天,中华人民共和国个人信息保护法有效保护用户信息不受侵犯。

(6) 全平台支持

sdk通过golang实现,通过gomobile生成 aar和framework,统一架构,支持Andorid、iOS原生开发,支持Flutter、uni-app跨端开发,支持小程序、React等所有主流web前端技术框架, PC支持Electron,Flutter、iOS、uni-app、pc已有成熟demo可以体验。

开发者可以使用OpenIM替代市场上各种IM云服务,除了降低成本,还赋予开发者更多的灵活性和自主性。我们通过开源的方式,邀请全球技术极客来参与OpenIM建设,使每位开发者都能免费使用最优秀的IM组件,让每个app都具备即时通讯能力。

即时通讯(IM)开源项目OpenIM本周版本发布- v1.0.7-web端一键部署相关推荐

  1. 即时通讯(IM)开源项目OpenIM重构版本发布- v2.0.0

    介绍 OpenIM开发团队花费了2个月时间,加班加点对代码进行了局部重构,优化代码结构,规范代码开发流程,为社区未来深度参与开发打好基础.由于改动较大,涉及大量的测试工作,并且还有打包 发布 等一些琐 ...

  2. # 重要-即时通讯IM开源项目OpenIM关于版本管理及v2.3.0发布计划

    越来越多的客户把OpenIM用到了生产环境,由于新特性持续迭代和bug修复,会涉及到后续的升级方案,为了让大家后续从容应对,本文重点总结OpenIM对未来版本管理的思路和方案.同时,官网对于文档进行了 ...

  3. 收藏-即时通讯(IM)开源项目OpenIM-功能手册

    OpenIM简介 OpenIM是由IM技术专家打造的开源即时通讯组件,也是目前最受欢迎的开源IM项目之一,目前github star近万.开发者通过集成OpenIM组件,并私有化部署服务端,可以将即时 ...

  4. .NET ORM FreeSql 第一个正式版本发布 v1.0.0

    一.简介 FreeSql 是 .NET 平台下的对象关系映射技术(O/RM),支持 .NetCore 2.1+ 或 .NetFramework 4.0+ 或 Xamarin. 从 0.0.1 发布到今 ...

  5. IM开源项目OpenIM部署文档-从准备工作到nginx配置

    IM开源项目OpenIM部署文档-从准备工作到nginx配置 2022-11-14 22:27·OpenIM 一.准备工作 运行环境 linux系统即可, Ubuntu 7.5.0-3ubuntu1~ ...

  6. 恩布企业即时通讯软件,EntboostChat 1.4.2发布,iOS开源IM

    为什么80%的码农都做不了架构师?>>>    恩布企业即时通讯软件,iOS苹果开源手机客户端 EntboostChat 发布 1.4.2 版本. EntboostChat 是 iO ...

  7. 开源IM-免费企业即时通讯-恩布互联ENTBOOST 1.4发布,增加管理中心

    恩布互联ENTBOOST发布v1.4版本,主要版本更新内容: 增加恩布平台管理中心,包括应用功能管理.系统配置管理.部门及员工资料导入等功能: 增加实现设置应用功能图标,集成单独应用功能按钮到恩布IM ...

  8. 环信开源计划开启即时通讯云开源平台时代

    12月22日,在"首届移动社交创新价值峰会"上,环信即时通讯云(http://www.easemob.com)发布了被称为"4X100计划"的<环信开源平 ...

  9. 即时通讯:XMPP项目实践-微聊

    即时通讯系列阅读 即时通讯基础 即时通讯:XMPP基础 即时通讯:XMPP项目实践-微聊 Smack类库最好的学习资料 1. 项目简介 做一个类似QQ 的通讯工具,要求有注册.登录.添加好友.添加分组 ...

最新文章

  1. 设置apache目录认证
  2. mysql ignore index,mysql强制索引FORCE INDEX/IGNORE INDEX忽略索引
  3. 每天学一点儿shell:正则表达式
  4. OpenCV SURF FLANN匹配的实例(附完整代码)
  5. php 安全设置总结。
  6. 每日程序C语言43-链表原地逆置
  7. 兼容FF,IE的纯CSS下拉菜单
  8. 判断给定的两个数是否是亲和数_动画演示LeetCode算法题:004-寻找两个有序数组的中位数...
  9. 转载:SQL server2005 里面没有management studio!下载SQL开发版本
  10. Python机器学习(Sebastian著 ) 学习笔记——第五章通过降维压缩数据(Windows Spyder Python 3.6)...
  11. 卸载java_Java面试必备——类的加载过程
  12. os.getcwd()
  13. 1500页,40万字,阿里淘系技术2020技术年货来了!
  14. ecshop源码教程第1季
  15. python如何将批量txt文本转成批量word格式
  16. 判断是否安装Alexa工具条
  17. LabelMe安装报错解决方案
  18. MongoDB下载安装教程 全
  19. 对话Chris Jones:机器人行业的下一步应该这样走
  20. 如何显示密件抄送人员地址_什么是密件抄送,以及为什么不使用它会成为一个可怕的人...

热门文章

  1. Kinect for Windows培训视频
  2. Golang 安装与常用命令
  3. MapBar的一个Demo
  4. Java高效率复习-MySQL下篇[MySQL]
  5. Linux中网络连接不上,CentOS7.6网络连接激活失败
  6. C++中函数返回数组指针的几种方法总结
  7. C语言输入输出函数的返回值(超详细)
  8. 新的一个田地!!我要坚持耕种!
  9. 大数据的数据服务开发技术与数据中台
  10. JavaScript输出语句以及变量定义