数万人のユーザーに対応する、機能が充実したルームベースのチャット。クライアントとサーバー。 Oat++ Web フレームワークで構築されています。
Single-Node
In-Memory
WebSocket
TLS
。
docker run -p 8443:8443 -e EXTERNAL_ADDRESS=localhost -e EXTERNAL_PORT=8443 -it lganzzzo/ canchat
すべてのコミュニケーションはチャット ルームで行われます。
各ルームには固有の URL があります。
ルームURLがあれば誰でもルームに参加できます。十分な長さのランダムなルーム URL を生成することで、参加者にプライバシーが確保されます。ルーム URL は、希望する参加者とのみ共有してください。
ルームは、最初の参加者がルームに参加すると自動的に作成され、最後の参加者がルームから退出すると自動的に削除されます。
チャット履歴は、新しく参加した参加者が利用できます。ルーム内のメッセージの数がmaxRoomHistoryMessages
構成パラメーターを超えると、履歴は丸められます。ルームが削除されると履歴は削除され、利用できなくなります。
ユーザーは複数のファイルを一度に共有できます。
ファイルはホストピアマシンから直接ストリーミングされます。サーバーには何もアップロードされず、3D パーティの場所にも保存されません。
ホストピアがファイル共有をキャンセルすると、ファイルは利用できなくなります。
ホストピアがルームから退出すると、そのファイル共有はすべてキャンセルされます。
LibreSSL
バージョン3.0.0
以降をインストールします。 oatpp モジュールをインストールするには、 utility/install-oatpp-modules.sh
スクリプトを使用できます。
$ cd < this-repo > /server/
$ mkdir build/ && cd build/
$ cmake ..
$ make
チャットサーバーを実行します
$ canchat -exe --host localhost --port 8443
$ docker build -t canchat .
$ docker run -p 8443:8443 -e EXTERNAL_ADDRESS=localhost -e EXTERNAL_PORT=8443 -it canchat
次に、ブラウザで https://localhost:8443/ に移動します。 (自己署名証明書を受け入れます)
画像パラメータ:
-e EXTERNAL_ADDRESS
- クライアントの接続先となるアドレス。-e EXTERNAL_PORT
- クライアントの接続先となるEXTERNAL_ADDRESS
のポート。チャット サーバーもこのポートで実行されます。-e TLS_FILE_PRIVATE_KEY
- TLS 秘密鍵ファイルへのパス。-e TLS_FILE_CERT_CHAIN
- TLS 証明書チェーン ファイルへのパス。 - front/ # - Front-end sources are here
- server/ # - Server sources are here
- cert/ # - test TLS certificate is here
- utility/
|
|- install-oatpp-modules.sh # - useful script to install required oatpp modules
このプロジェクトはApache License 2.0
に基づいてリリースされています。
楽しむ!