Logo

CIM - 适用于开发者的分布式即时通讯系统

cim

CIM - 面向开发者的分布式即时通讯系统

CIM(CROSS-IM)是一款开源的、面向开发者的即时通讯系统,旨在帮助开发者快速构建可扩展的IM应用。它提供了一套完整的分布式IM解决方案,包括服务端、客户端SDK以及丰富的功能组件。

CIM系统架构图

主要特性

  • 支持群聊和私聊
  • 消息推送
  • 分布式架构,支持水平扩展
  • 丰富的客户端命令
  • AI聊天模式
  • 消息历史查询
  • 表情包支持
  • 延时消息
  • 完整的服务端和客户端实现

系统架构

CIM采用分布式架构设计,主要包含以下组件:

  • cim-server: IM服务器,负责维护客户端连接、消息转发等
  • cim-forward-route: 消息路由服务,处理消息路由、用户登录等
  • cim-client: 客户端SDK,提供丰富的API和内置命令

系统使用Redis存储路由信息,Zookeeper做服务发现,整体架构清晰灵活,易于扩展。

快速开始

  1. 部署必要的中间件:Zookeeper、Redis

  2. 部署cim-server:

java -jar cim-server-1.0.0-SNAPSHOT.jar --cim.server.port=9000 --app.zk.addr=zk地址
  1. 部署cim-forward-route:
java -jar cim-forward-route-1.0.0-SNAPSHOT.jar --app.zk.addr=zk地址 --spring.redis.host=redis地址
  1. 启动客户端:
java -jar cim-client-1.0.0-SNAPSHOT.jar --cim.user.id=userId --cim.user.userName=userName --cim.route.url=http://路由服务器:8083/

核心功能

群聊/私聊

CIM支持灵活的群聊和私聊功能。群聊消息会广播给所有在线用户,私聊则需要指定目标用户ID。

群聊演示

AI聊天模式

使用":ai"命令可以开启AI聊天模式,由AI自动回复消息,为用户提供智能对话体验。

AI聊天模式

消息历史查询

CIM会保存用户的聊天记录,可以通过":q 关键字"命令来查询历史消息。

消息历史查询

表情包支持

使用":emoji"命令可以查看支持的表情列表,直接输入表情别名即可发送表情。

表情包支持

延时消息

支持发送延时消息,指定延迟时间后消息会被自动发送。

延时消息演示

总结

CIM为开发者提供了一套完整的IM解决方案,包含服务端、客户端SDK以及丰富的功能组件。它采用分布式架构设计,支持水平扩展,适用于构建大规模的IM系统。不论是即时通讯应用、消息推送服务,还是IoT设备通信,CIM都能很好地满足开发需求。

如果你正在寻找一个开源的、可定制的IM解决方案,CIM无疑是一个值得考虑的选择。它不仅提供了核心的通信功能,还包含了AI对话、表情包等增强特性,能够帮助开发者快速构建功能丰富的IM应用。

欢迎开发者们探索CIM的更多可能性,为项目贡献代码,一起推动开源IM技术的发展!

相关项目

Project Cover
chat21-android-sdk
Chat21-android-sdk为开发者提供一个开源的Android即时通讯SDK,支持一对一消息、群聊、表情、图片附件等功能,并通过Firebase提供简单快捷的集成方法,打造稳定高效的聊天应用环境。
Project Cover
Chatter-App
Chatter App是一款基于Flutter技术开发的现代化即时通讯应用,允许用户注册和登录,与亲朋好友以及工作群组进行交流。应用集成了Firebase Cloud Firestore和Firebase身份验证,确保数据安全与实时更新。提供优化的用户交流体验。同时提供APK下载,方便快捷地体验全部功能,并明确强调是一个开源项目,便于技术爱好者参与和贡献。
Project Cover
im_service
im_service提供高性能即时通讯服务,特点包括支持点对点消息、群组及聊天室交互,单机处理能力可达50万用户在线和5000条消息/秒。此外,该平台支持3000人超大群组及集群部署,适应各种高并发场景,并提供完整的安装和配置指南。
Project Cover
smalltalk
smalltalk是一个开放源代码项目,基于tinystruct框架,支持即时消息、文件共享等功能。项目允许用户通过CLI和Web界面与OpenAI的ChatGPT语言模型进行交互。同时,smalltalk提供多种部署选项,易于安装和设置。
Project Cover
qcloud-im-server-sdk-java
qcloud-im-server-sdk-java 是腾讯云即时通信服务的 Java 服务端 SDK。该项目提供简洁的 API 接口,支持账号导入、消息发送等核心功能,并包含详细文档和示例代码。这个 SDK 适用于需要集成即时通信功能的 Java 开发项目,可简化开发流程,提高效率。
Project Cover
WuKongIM
WuKongIM是一个开源的高性能通用通讯系统,适用于即时通讯、站内消息、消息中台等多种场景。系统特点包括大规模群聊支持、低资源消耗、高安全性和卓越性能。采用自研二进制协议和分布式架构,实现消息永久存储和多设备同步。WuKongIM部署简便,提供多平台SDK,是开发即时通讯应用的理想基础架构。
Project Cover
element-android
Element Android是基于Matrix协议开发的开源即时通讯应用,适用于Android 5.0及以上系统。该应用提供端到端加密、去中心化和跨平台功能,采用全新用户界面设计。Element Android可通过Google Play、F-Droid下载,或直接安装APK文件。项目开源并欢迎开发者贡献,提供详细的开发文档支持。
Project Cover
Telegram
Telegram是一个注重速度和安全的开源即时通讯平台。该项目以快速消息传递、简洁界面和免费使用为特色。Telegram鼓励开发者利用其API和源代码创建应用,但要求遵循特定规则,包括获取独立api_id和遵守安全准则。此外,Telegram提供完整的API文档和编译指南,便于开发者进行定制化开发。
Project Cover
FalconMessenger
FalconMessenger,一款操作简便、集成实时聊天、多设备同步以及高级消息功能的应用,适用于iOS平台。支持手机验证登录、群组消息以及多种自定义主题,保障用户隐私和数据安全。提供详细的安装和配置指南,可方便集成Firebase服务以及支持多种编程环境的配置,优化用户沟通体验。

最新项目

Project Cover
豆包MarsCode
豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。
Project Cover
AI写歌
Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。
Project Cover
商汤小浣熊
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
Project Cover
有言AI
有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。
Project Cover
Kimi
Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。
Project Cover
吐司
探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。
Project Cover
SubCat字幕猫
SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。
Project Cover
AIWritePaper论文写作
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。
Project Cover
稿定AI
稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。
投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号