开源推荐:基于 .NET 6 的在线音视频聊天项目

dotNET全栈开发

共 1311字,需浏览 3分钟

 ·

2022-06-13 16:36

第三方依赖介绍

公用依赖

1、log4net 日志记录。

2、SignalR 用于服务器与客户端的通讯手段,该项目用于好友申请、消息提示、公告、聊天和音视频通话等一系列通知。

3、EntityFrameworkCore 操作数据库的ORM工具,服务端使用SqlServer,客户端使用Sqlite。

4、Newtonsoft.Json 序列化和反序列化JSON。

服务端

1、TencentCloudSDK 操作腾讯云服务API,该项目用于管理通话房间。

2、aliyun-net-sdk-core 操作阿里云服务API,该项目用于短信服务。

3、CHSPinYinConv 获取中文拼音。

4、Portable.BouncyCastle TRTC加密使用。

5、SixLabors.ImageSharp 操作图片,因c#中操作图片需要微软的GDI绘图,但在linux上操作需要mono的libgdiplus库,处理效果并不理想。

WPF端

1、TXLiteAV 操作腾讯云的TRTC服务,本地设备音视频推流、获取房间内其他用户音视频数据。

2、XamlAnimatedGif 播放GIF,因设备效率问题,改动作者源码后重新打包使用。

源库:https://github.com/XamlAnimatedGif/XamlAnimatedGif

问题:https://github.com/XamlAnimatedGif/XamlAnimatedGif/issues/160

后台部署

1、修改DimensionService.Common命名空间下 ClassHelper类

请填写红框内付费服务内容,本程序使用阿里的短信服务和腾讯的TRTC服务,填写内容请见官方说明。

2、数据库

该服务采用sqlserver2019数据库,并使用EF CORE作为主要的ORM框架,首次使用需要迁移数据库。

打开程序包管理控制台,输入Update-Database InitialCreate

该项目提供线上测试服务地址,http://47.96.133.119:5000

WPF端

红框内容需与服务端保持一致

实现的功能

1、登录|注册

2、添加好友

3、音视频在线通话

4、聊天(图片、文字、富文本)

5、截屏(多显示器不同dpi支持)

界面展示

功能演示


提供的测试账号和程序地址。

不过需要安装NET6桌面运行时

测试用户

1571221{1~9}177,密码统一为12345678。

所有用户登录信息我都放在程序包里啦,并且都添加了我做为好友。

程序包

https://pan.baidu.com/s/1aTh_710GpKIIHOHpvVCpBw?pwd=cp4o 

提取码:cp4o


演示视频

https://pan.baidu.com/s/1n-sQZFgO9GEhS80jHLVouA?pwd=85x3 

提取码:85x3


GitHub:https://github.com/qian-o/Dimension


转自:王_先_生

链接:cnblogs.com/xymfblogs/archive/2022/04/02/16091037.html

浏览 71
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报