即时通讯(IM)系统,提供免费的私有部署服务端程序,支持全部功能,并提供第三方拉流、推流功能

即时通讯(IM)系统,提供免费的私有部署服务端程序,支持全部功能,并提供第三方拉流、推流功能。
即时通讯(IM)系统,免费IM系统(含单聊,群聊,聊天室,文件传输),免费一对一视频聊天,VOIP,语音对讲(回音消除),直播连麦,视频直播,RTSP拉流,RTMP推流,webRTC服务端,在线教育,白板,小班课,在线会议,视频会议,局域网直连(无需服务器),兼容webRTC, 支持webRTC加速,P2P高清传输,安卓、iOS、web互通,支持门禁对讲,可视对讲,电视盒子,树莓派,海思,全志,任天堂switch,云游戏,OTT设备,物联网平台,C语言自研方案,支持二次开发成类微信,类映客等APP

纯语音直播间

互动连麦直播多人视频会议在线教育

pdf文档上传标记直播,白板

 
IM演示

轻量级IM,安卓,ios和web互通,支持一对一聊天,群聊,聊天室,公有云免费!


P2P直连

不经过服务器直连:



门禁对讲

物联网硬件

海思arm板采集mac电脑的hdmi信号进行实时录屏直播:


服务端程序免费私有部署

以下服务端均完全免费(采用C语言开发),无鉴权,可用于腾讯云,阿里云或局域网内部署,现已开放:

[td]

服务端 功能 备注
voipServer 一对一视频通话 需要搭配msgServer使用
msgServer 单聊(如文字聊天),私信,信令
chatDBServer 离线消息存储
groupServer 群聊 如果只需要单聊,不需要群聊的话,不用启动
chatRoomServer 多人聊天室
liveSrcServer 多人视频会议 RTMP推流
liveVdnServer 互动连麦直播,vdn分发网络
liveProxyServer RTSP 拉流服务端
videoRecServer 录制录像功能
groupPushHttpProxy 系统消息及群操作功能
web-supported目录里面是支持web端的服务端程序与自签名证书。do-not-support-web目录里面的服务端程序不支持web端。
支持CentOS 64bit,Ubuntu 64bit。Windows上请自行安装虚拟机(请使用桥接)或docker测试。
部署步骤(请切换为root用户或者用sudo执行):
第1步:下载服务端程序:
  1. 然后进入相应目录,直接执行chmod +x *.sh && ./start.sh 即部署成功!如果想单独运行,请继续下面的步骤。

复制代码

第2步:进入相应目录,给所有服务端程序加可执行权限: chmod +x *Server
第3步:部署各服务端程序,具体如下:
其中.log后缀文件为日志文件,可通过命令tail -f xxx.log查看相关日志。

voip服务端部署

  1. 后台启动:
  2. nohup ./voipServer > voipServer.log 2>&1 &
  3. 刚开始为了验证是否启动成功,可以不后台启动,而是通过运行 ./voipServer 直接看输出日志是否成功,成功了以后就可以后台启动。

复制代码

注:也需要部署msgServer,用于传输呼叫,接听等消息。

IM服务端部署

IM全套服务,分为3个服务端程序,分别是:
消息服务端msgServer、离线消息数据服务端chatDBServer,群管理服务端groupServer,分别启动即可。
只需要单聊的,不需要启动groupServer。
可以保持自己原有的im系统不变,用我们的im系统作为voip等服务的信令服务。
  1. 后台启动:
  2. nohup ./msgServer     > msgServer.log 2>&1 &
  3. nohup ./chatDBServer  > chatDBServer.log 2>&1 &
  4. nohup ./groupServer   > groupServer.log 2>&1 &

复制代码

chatRoom服务端部署

  1. 后台启动:
  2. nohup ./chatRoomServer > chatRoomServer.log 2>&1 &

复制代码

liveSrc服务端部署

  1. 后台启动:
  2. nohup ./liveSrcServer > liveSrcServer.log 2>&1 &

复制代码

RTMP推流测试:可打开安卓客户端,新建一个会议室,点击RTMP推流,填上RTMP URL后,点击推流即可。然后用其它第3方播放器如VLC就可以打开该RTMP URL观看会议画面了。
同理,可以在直播间推流,用vlc打开就可以观看直播了。

liveVdn服务端部署

互动直播,观众不限人数
  1. 后台启动:
  2. nohup ./liveVdnServer > liveVdnServer.log 2>&1 &

复制代码

录制服务端(videoRecServer)部署

目前用于liveSrcServer和voipServer的视频录像功能,目前为测试版,输出为ts文件,支持自定义切片或不切片,音频只支持AAC格式。
videoRecServer默认是切片模式,30s一片,若不切片,请在程序同级目录中新建starrtc.conf文本文件,写入recSegMode=off,即关闭切片模式,不切片的时候切片序号一直为0。
文件目录格式为:
在线会议或互动直播:
./RECFOLDER/liveChannels/用户名/resSessionId_用户名_切片序号.ts,如./RECFOLDER/liveChannels/tom/1573119917990_tom_0.ts
一对一视频通话(VOIP):
./RECFOLDER/voips/用户名/resSessionId_用户名_切片序号.ts,如./RECFOLDER/voips/tom/1573119917990_tom_0.ts
其中,sessionId在移动端SDK中获取得到,详见android文档。
  1. 后台启动:
  2. nohup ./videoRecServer > videoRecServer.log 2>&1 &

复制代码

系统消息及群操作功能服务

用户使用AEC高级模式的情况下使用,比如给某用户发送系统消息(例如购买消费成功通知),或给某个群的全部用户发送群系统消息(例如某人进群、退群)。
请注意该服务仅供内网其他服务使用,不要将19922端口暴露到外网!
  1. push系统消息:
  2. toUsers:需要发送消息的所有用户,用逗号隔开
  3. msg: 需要发送的文本内容
  4. digest: 需要发送的文本内容的摘要,用于用户不在线时的push推送使用
  5. http://www.xxx.com:19922/pushSystemMsgToUsers?toUsers=userId1,userId2,userId3,…&msg=xxxx&digest=xxxx
  6. push群消息(全员):
  7. http://www.xxx.com:19922/pushGroupMsg?groupId=xxx&msg=xxxx

复制代码

下面五个和群有关的接口,在客户端sdk同样有实现,但通过这些接口,服务端可以主动给群服务器同步群成员,或对群成员进行其他操作,请您根据实际需求来选取合适的群成员同步策略。
  1. 同步群成员:
  2. groupId: 群id
  3. groupList:   所有群成员,用逗号隔开,不传groupList表示清空这个群的成员
  4. ignoreList: 对该群设置了消息免打扰的群成员id,用逗号隔开
  5. http://www.xxx.com:19922/syncGroupList?groupId=xxx&groupList=userId1,userId2,userId3,…&ignoreList=userId1,userIdx,…
  6. 添加群成员:
  7. addedUsers: 要添加进的群的所有用户id,用逗号隔开
  8. http://www.xxx.com:19922/addUsersToGroup?groupId=xxx&addedUsers=userId1,userId2,userId3,…
  9. 删除群成员:
  10. deledUsers: 需要从群内删除的所有用户id,用逗号隔开
  11. http://www.xxx.com:19922/delUsersFromGroup?groupId=xxx&deledUsers=userId1,userId2,userId3,…
  12. 设置免打扰:
  13. ignoreList: 对该群设置消息免打扰(不接收群消息)的所有用户id,用逗号隔开
  14. http://www.xxx.com:19922/setPushIgnore?groupId=xxx&ignoreList=userId1,userIdx,…
  15. 取消免打扰:
  16. ignoreList: 对该群取消免打扰(接收群消息)的所有用户id,用逗号隔开
  17. http://www.xxx.com:19922/unsetPushIgnore?groupId=xxx&ignoreList=userId1,userIdx,…

复制代码

拉流服务端部署

用于拉取第三方rtsp流(RTMP流暂未开放),转换为starRTC协议后转发到liveSrcServer, 然后就可以在各终端(Android,iOS,PC和web)的在线会议或互动直播中播放这个流了。
  1. 后台启动:
  2. nohup ./liveProxyServer > liveProxyServer.log 2>&1 &

复制代码

测试方法:首先找到一个可以正常播放的rtsp流(也可以使用示例程序里面的默认测试流), 然后可以打开安卓示例程序,打开设置-》第3方流测试-》新建一个流,填一下名字,和流的rstp地址(也可以不填直接使用默认的测试流), 同时选择该流是在直播中播放,还是在会议中播放。 然后去直播间或会议室就可以看到拉的视频流画面了。
也可以自己使用HTTP方式调用:
  • 1 创建channelId并拉流(streamType暂时只支持rtsp),接口返回channelId:
http://www.xxx.com:19932/push?streamType=rtsp&streamUrl=rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov&roomLiveType=0&roomId=xxxx&extra=xxxxx
其中roomId和extra为可选参数
  • 2 拉流到指定的channelId:
http://www.xxx.com:19932/push?streamType=rtsp&streamUrl=rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov&channelId=xxxx
  • 3 停止拉流(不删除channelId,仍在列表中存在):
http://www.xxx.com:19932/close?channelId=xxxx
  • 4 停止拉流,同时删除channelId:
http://www.xxx.com:19932/delete?channelId=xxxx

需要开放端口
[td]

服务端 端口 web端需开放端口
msgServer 19903(tcp) 29991(tcp):https信任测试
voipServer 10086(udp) 44446(udp)2P通讯 10087(tcp):websocket 10088(udp):webrtc 29992(tcp):https信任测试
chatRoomServer 19906(tcp) 29993(tcp):https信任测试
liveSrcServer 19931(udp) 19934(tcp):websocket 19935(udp):webrtc 29994(tcp):https信任测试
liveVdnServer 19928(udp) 19940(tcp):websocket 19941(udp):webrtc 29995(tcp):https信任测试
liveProxyServer 19932(tcp)

附件中包含如下源码:

文档
android源码
ios源码
网页版聊天源码
web版本在线教育与白板演示示例源码
server源码
windows示例源码
web源码
Raspberry Pi 树莓派源码
CentOS Ubuntu 直播源码
海思 Hisilicon Hi3516a arm-hisiv300-linux源码

下载说明:
1.本站资源都是白菜价出售,同样的东西,我们不卖几百,也不卖几十,甚至才卖几块钱,一个永久会员能下载全站100%源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如果源码下载地址失效请联系站长QQ进行补发。
3.本站所有资源仅用于学习及研究使用,请必须在24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担。资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您权益请联系本站删除!
4.本站站内提供的所有可下载资源(软件等等)本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发);但本网站不能保证资源的准确性、安全性和完整性,由于源码具有复制性,一经售出,概不退换。用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug;同时本站用户必须明白,【安安资源网】对提供下载的软件等不拥有任何权利(本站原创和特约原创作者除外),其版权归该资源的合法拥有者所有。
5.请您认真阅读上述内容,购买即以为着您同意上述内容,由于源码具有复制性,一经售出,概不退换。
安安资源网 » 即时通讯(IM)系统,提供免费的私有部署服务端程序,支持全部功能,并提供第三方拉流、推流功能