Tubumu.Abp.Meeting
1.0.0
See the version list below for details.
dotnet add package Tubumu.Abp.Meeting --version 1.0.0
NuGet\Install-Package Tubumu.Abp.Meeting -Version 1.0.0
<PackageReference Include="Tubumu.Abp.Meeting" Version="1.0.0" />
paket add Tubumu.Abp.Meeting --version 1.0.0
#r "nuget: Tubumu.Abp.Meeting, 1.0.0"
// Install Tubumu.Abp.Meeting as a Cake Addin #addin nuget:?package=Tubumu.Abp.Meeting&version=1.0.0 // Install Tubumu.Abp.Meeting as a Cake Tool #tool nuget:?package=Tubumu.Abp.Meeting&version=1.0.0
基于 Mediasoup 的 Abp vNext 视频会议模块。
一、安装
1、创建项目
# 当前目录:任意
mkdir Sample && cd Sample
abp new Sample
2、安装 Tubumu.Abp.Meeting 模块
使用 Abp CLI 安装:
# 当前目录:Sample
cd src/Sample.Web
# 当前目录:Sample/src/Sample.Web
abp add-package Tubumu.Abp.Meeting
或者手工安装,在 Nuget 搜索 Tubumu.Abp.Meeting 并安装,然后修改 SampleWebAbpModule
:
// File: Sample/src/Sample.Web/SampleWebModule.cs
// ...
typeof(AbpSwashbuckleModule),
// 配置点:1
typeof(TubumuAbpMeetingModule)
)]
public class SampleWebModule : AbpModule
// ...
3、下载配置文件及修改 IP
将 mediasoupsettings.json 配置文件下载到 Sample.Web
项目中。
# 当前目录:Sample/src/Sample.Web
curl -o mediasoupsettings.json https://raw.githubusercontent.com/albyho/Tubumu.Abp.Meeting/main/samples/Tubumu.Abp.Meeting.Sample/src/Tubumu.Abp.Meeting.Sample.Web/mediasoupsettings.json
打开 mediasoupsettings.json
配置文件,搜索 AnnouncedIp
键将值修改为本机在局域网中的 IP 或者公网 IP。
// File: Sample/src/Sample.Web/mediasoupsettings.json
// ...
"WebRtcTransportSettings": {
"ListenIps": [
{
"Ip": "0.0.0.0",
"AnnouncedIp": "192.168.1.5" // 修改为本机在局域网中的 IP 或者公网 IP 。
}
],
"InitialAvailableOutgoingBitrate": 1000000,
"MinimumAvailableOutgoingBitrate": 600000,
"MaxSctpMessageSize": 262144,
// Additional options that are not part of WebRtcTransportOptions.
"MaximumIncomingBitrate": 1500000
},
// 用于 FFmpeg 推流
"PlainTransportSettings": {
"ListenIp": {
"Ip": "0.0.0.0",
"AnnouncedIp": "192.168.1.5" // 修改为本机在局域网中的 IP 或者公网 IP 。
},
"MaxSctpMessageSize": 262144
}
// ...
4、Web 前端
可将 Sample 的前端项目的源码 tubumu-abp-meeting-sample-client 下载、编译并复制到 Sample.Web 项目的 wwwroot 目录下。比如:Sample/src/Sample.Web/wwwroot/meeting
目录。
# 当前目录:tubumu-abp-meeting-sample-client
yarn build
cp -R ./dist/* xxxx/Sample.Web/meeting
注意:如有必要,请修改
index.html
文件中的css
和js
的路径。
5、新增菜单
菜单链接至 Web 前端的首页。
// File: Sample/src/Sample.Web/Menus/SampleMenus.cs
public class SampleMenus
{
private const string Prefix = "Sample";
public const string Home = Prefix + ".Home";
//Add your menu items here...
// `Meeting` menu item
public const string Meeting = Prefix + ".Meeting";
}
// File: Sample/src/Sample.Web/Menus/SampleMenuContributor.cs
private async Task ConfigureMainMenuAsync(MenuConfigurationContext context)
{
if (!MultiTenancyConsts.IsEnabled)
{
var administration = context.Menu.GetAdministration();
administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName);
}
var l = context.GetLocalizer<SampleResource>();
context.Menu.Items.Insert(0, new ApplicationMenuItem(SampleMenus.Home, l["Menu:Home"], "~/"));
// `Meeting` menu item
context.Menu.Items.Insert(1, new ApplicationMenuItem(SampleMenus.Meeting, "Meeting", "~/meeting/index.html"));
}
二、启动
将 Sample.Web 设为启动项进行启动。
打开浏览器并登录;还可以打开不同的浏览器(Sample使用Cookie认证)使用不同账号登录;如果是局域网或公网还可以通过其他电脑或手机登录。
访问会议页面。操作流程请参考截图。
三、截图
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net5.0
- Tubumu.Core (>= 2.0.3)
- Tubumu.Mediasoup (>= 2.0.3)
- Tubumu.Mediasoup.AspNetCore (>= 2.0.3)
- Tubumu.Mediasoup.Common (>= 2.0.3)
- Tubumu.Mediasoup.Executable (>= 2.0.3)
- Tubumu.Meeting.Server (>= 2.0.3)
- Volo.Abp.AspNetCore (>= 4.2.0)
- Volo.Abp.AspNetCore.SignalR (>= 4.2.0)
- Volo.Abp.MultiTenancy (>= 4.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.1.1 | 537 | 9/9/2021 |
4.0.1 | 411 | 8/28/2021 |
3.2.1 | 419 | 8/28/2021 |
3.2.0 | 378 | 8/25/2021 |
3.0.0 | 394 | 8/21/2021 |
1.0.1 | 475 | 6/25/2021 |
1.0.0 | 409 | 4/14/2021 |
0.0.9 | 400 | 2/1/2021 |
0.0.8 | 336 | 1/31/2021 |
0.0.7 | 382 | 1/29/2021 |
0.0.6 | 454 | 1/26/2021 |
0.0.5 | 413 | 1/25/2021 |
0.0.4 | 470 | 1/24/2021 |
0.0.3 | 476 | 1/24/2021 |
0.0.2 | 533 | 1/24/2021 |
0.0.1 | 553 | 1/24/2021 |