docs: add livekit deployment document

pull/105/merge
moonrailgun 2 years ago
parent f29352dd87
commit 559867d689

@ -1,7 +1,7 @@
version: "3.3"
services:
# 后台应用
# livekit webhook receiver
tailchat-livekit-webhook-receiver:
build:
context: ../

@ -1,4 +1,4 @@
{
"label": "Video Conference",
"position": 60
"position": 35
}

@ -3,6 +3,10 @@ sidebar_position: 2
title: Deploy Tailchat Meeting
---
:::info
The `Tailchat Meeting` solution is currently not integrated with `Tailchat`, if you want to use the video conferencing solution in Tailchat, please choose `agora` or `livekit` solution
:::
The video conferencing service `Tailchat Meeting` can exist as an independent application. In this section, we will describe how to deploy `Tailchat Meeting` independently
The following content is based on the `docker` environment, please ensure that the server has the most basic `docker` environment.

@ -1,9 +0,0 @@
---
sidebar_position: 99
title: SDK design document
draft: true
---
## base path
The user's basic operation path is: join the room - monitor changes/push local media streams - leave the complete life cycle of the room.

@ -2,9 +2,19 @@
sidebar_position: 1
title: Summary
---
`Tailchat` provides two solutions for video and voice calls, you can choose according to the actual situation:
- `tailchat-meeting` self-deploying video conferencing (WIP)
:::info
Video Conference solutions require SSL support, so only websites that support https will work properly
:::
`Tailchat` provides those solutions for video and voice calls, you can choose according to the actual situation:
- ~~`tailchat-meeting` self-deploying video conferencing (WIP)~~
- `agora` Acoustic Network integration, for details, see: [Acoustic Network Plug-in Deployment Guide](./agora.md)
- `livekit` Allow self-host solution: [Livekit Plugin Deployment Guide](./livekit.md)
<details>
<summary>Collapsed content is outdated</summary>
## Tailchat Meeting
@ -33,3 +43,5 @@ On this basis, function addition, SDK implementation and code optimization were
### Project Architecture
![](/img/architecture/meeting.excalidraw.svg)
</details>

@ -0,0 +1,73 @@
---
sidebar_position: 20
title: Livekit Plugin Deployment Guide
---
`Livekit` is an open source video conferencing solution based on the `Apache-2.0` open source protocol, allowing self-host, supporting video conferencing, live streaming, recording and other scenarios
You can use his cloud service or self-host. Below I will introduce how to integrate `Livekit` into `Tailchat`:
## Cloud Services
First enter the Livekit cloud platform: [https://cloud.livekit.io/](https://cloud.livekit.io/), in the first time you enter, you need to create a project:
It will ask some questions, just answer them according to the situation.
![](/img/advanced-usage/livekit/1.png)
After completion, we will enter the console main dashboard:
![](/img/advanced-usage/livekit/2.png)
### Get the required environment variables
For the plugin to work, we need the following environment variables:
- `LIVEKIT_URL`
- `LIVEKIT_API_KEY`
- `LIVEKIT_API_SECRET`
Among them, `LIVEKIT_URL` can be obtained directly from the console, in the form of `wss://********.livekit.cloud`
In the `Settings` menu on the left, we need to create a pair of secret keys by ourselves
![](/img/advanced-usage/livekit/3.png)
![](/img/advanced-usage/livekit/4.png)
![](/img/advanced-usage/livekit/5.png)
Here we can get `LIVEKIT_API_KEY` and `LIVEKIT_API_SECRET`.
Record and fill in the environment variables and start `Tailchat`.
### Start the webhook
![](/img/advanced-usage/livekit/6.png)
If you need the above-mentioned channel online prompts to be updated immediately, you need to start a `webhook-receiver` separately to accept pushes from `livekit` and forward the received events to `Tailchat`, so that `Tailchat` can update all groups Display of group membership.
The official `docker-compose` configuration has been prepared for you with one click, just like `admin`:
```bash
wget https://raw.githubusercontent.com/msgbyte/tailchat/master/docker/livekit.yml
docker compose -f docker-compose.yml -f livekit.yml up -d
```
At this point you can see a `tailchat-livekit-webhook-receiver` service in the docker running container.
Then we switch to the `livekit` console and add our address in the `webhook`.
![](/img/advanced-usage/livekit/7.png)
Generally `https://<your tailchat url>/livekit/webhook`, remember to choose the same key pair as the service
![](/img/advanced-usage/livekit/8.png)
> PS: There may be some delays in cloud applications.
## Self-host
See the official documentation for self-host: [https://docs.livekit.io/oss/deployment/](https://docs.livekit.io/oss/deployment/)
In addition to the different deployment methods and configuration first, others are the same as using cloud services

@ -1,6 +0,0 @@
---
sidebar_position: 3
title: Plugin deployment
---
TODO

@ -1,6 +0,0 @@
---
sidebar_position: 4
title: SDK
---
TODO

@ -3,6 +3,10 @@ sidebar_position: 2
title: 部署视频会议
---
:::info
`Tailchat Meeting` 方案目前没有与 `Tailchat` 做集成如果你期望在Tailchat中使用视频会议方案请选择 `agora``livekit` 解决方案
:::
视频会议服务 `Tailchat Meeting` 可以作为一个独立应用单品存在。在本节中将会讲述如何独立部署 `Tailchat Meeting`
以下内容均基于`docker`环境,请确保服务端有 `docker` 最基本程度的环境。

@ -1,9 +0,0 @@
---
sidebar_position: 99
title: SDK设计文档
draft: true
---
## 基本路径
用户基本操作路径是: 加入房间 —— 监听变更/推送本地媒体流 —— 离开房间这样完整的生命周期。

@ -3,11 +3,18 @@ sidebar_position: 1
title: 概述
---
`Tailchat` 提供两套方案用于视频语音通话,可以根据实际情况自行选择:
- `tailchat-meeting` 自部署视频会议(WIP)
:::info
音视频解决方案需要SSL支持因此只有支持https的网站才能正常使用
:::
`Tailchat` 提供以下方案用于视频语音通话,可以根据实际情况自行选择:
- ~~`tailchat-meeting` 自研视频会议(WIP)~~
- `agora` 声网集成, 详细说明见: [声网插件部署指南](./agora.md)
- `livekit` 可自部署的解决方案: [Livekit 插件部署指南](./livekit.md)
## Tailchat Meeting
<details>
<summary>折叠内容已过时</summary>
视频会议模块是 `Tailchat` 系列的一套重要组成部分。提供能力如下:
- 语音通信
@ -34,3 +41,4 @@ title: 概述
### 项目架构
![](/img/architecture/meeting.excalidraw.svg)
</details>

@ -0,0 +1,73 @@
---
sidebar_position: 20
title: Livekit 插件部署指南
---
`Livekit` 是一款基于 `Apache-2.0` 开源协议的,允许自部署的开源视频会议解决方案,支持视频会议、视频直播、录制等场景
你可以使用他的云端服务或者自部署。以下我会介绍怎么将 `Livekit` 集成到 `Tailchat` 中:
## 云端服务
首先进入Livekit云平台: [https://cloud.livekit.io/](https://cloud.livekit.io/), 首次进入要创建一下项目:
此时会问一些问题,按照情况随便回答一下就行
![](/img/advanced-usage/livekit/1.png)
完成后我们会进入控制台主界面:
![](/img/advanced-usage/livekit/2.png)
### 获取需要的环境变量
为使插件工作,我们需要以下环境变量:
- `LIVEKIT_URL`
- `LIVEKIT_API_KEY`
- `LIVEKIT_API_SECRET`
其中 `LIVEKIT_URL` 我们可以直接从控制台上获取,形如 `wss://********.livekit.cloud`
在左边 `Settings` 菜单中,我们需要自行创建一对秘钥
![](/img/advanced-usage/livekit/3.png)
![](/img/advanced-usage/livekit/4.png)
![](/img/advanced-usage/livekit/5.png)
在这里我们可以获取到 `LIVEKIT_API_KEY``LIVEKIT_API_SECRET`.
记录下来填入环境变量后启动 `Tailchat` 即可.
### 启动 webhook
![](/img/advanced-usage/livekit/6.png)
如果你需要上述的频道在线提示能够即时更新,则需要单独启动一个 `webhook-receiver` 来接受来自 `livekit` 的推送并将接收到的事件转发给 `Tailchat`,让 `Tailchat` 来更新所有群组成员的显示。
官方已为您准备好了一键启动的`docker-compose`配置, 就像 `admin` 一样:
```bash
wget https://raw.githubusercontent.com/msgbyte/tailchat/master/docker/livekit.yml
docker compose -f docker-compose.yml -f livekit.yml up -d
```
此时你可以在docker运行的容器中看到一个 `tailchat-livekit-webhook-receiver` 服务.
然后我们切换到 `livekit` 控制台,在 `webhook` 中添加我们的地址。
![](/img/advanced-usage/livekit/7.png)
一般为 `https://<your tailchat url>/livekit/webhook`, 记得选择与服务一致的密钥对
![](/img/advanced-usage/livekit/8.png)
> PS: 在云端应用可能会有一些延时。
## 自部署
自部署可见官方文档: [https://docs.livekit.io/oss/deployment/](https://docs.livekit.io/oss/deployment/)
除了部署方式不一样与配置为先,其他的与使用云端服务一样

@ -1,6 +0,0 @@
---
sidebar_position: 3
title: 插件部署
---
TODO

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Loading…
Cancel
Save