
アーカイブ、クライアント間のメッセージの同期、通知の読み取り、公開チャットなど、すべての新しい機能を備えた独自のジャバーサーバーを簡単に作成する方法を教えたらどうでしょうか。
また、オーディオとビデオの通話をサポートし、優れたインターフェイスを備え、ブラウザーから直接機能する、素晴らしいJabberクライアントを共有します。
サーバーとクライアントの両方が無料ライセンスの下でライセンスされているため、これらの両方を完全に無料で受け取ります。
Metronome IMと
Jappixについて
です 。
両方のプロジェクトが互いに独立して動作し、Metronome IMで動作し、Jabberクライアントに接続でき、BOSHをサポートする他のJabberサーバーにJappixを使用できることを考慮する必要があります。
メトロノームIM
作者:マルコチリーロ
サイト: lightwitch.org/metronomeライセンス: MIT
で書かれた:ルア
それでは、サーバー側から始めましょう。
Metronome IMは、悪名高い
Prosody IMのフォークであるJabberサーバーで、Habré
について何度も
書かれています。 Prosodyとは異なり、Metronomeは主に
pubsub 、
ユーザーアクティビティ 、
ムードなどのさまざまなソーシャル機能をサポートするために作成されましたが、これらは私たちにとって主な関心事ではありません。
すぐに使用できるすべてのXEPの完全なリストは、
このページにあります 。 同意して、リストはかなり印象的です!
すべてのXEPには、メッセージアーカイブ(メッセージアーカイブ)、Carbons(クライアント間のメッセージ同期)、およびオフラインメッセージ(オフラインメッセージ)があります。平凡であり、ファイルでファイナライズする必要があります。
Metronome IMでは、すべてのXEPが箱から出してすぐに、ほとんどのJabberクライアントで正しく機能します。
練習から、メッセージがどこかで失われたり、複製されたり、あるクライアントで表示されたりすると、他のクライアントはそれを見ることさえない場合、そのような不快なグリッチはもうほとんどないでしょう。
さらに、サーバーはluaで記述されており、多くのモジュールとかなりわかりやすい構成を備えています。
Prosody IMのほとんどのモジュールも、少しドップした後には適合しますが、ほとんどの場合、これも必要ないでしょう。
設置
デフォルトでは、Metronome IMは既製のパッケージの形では提供されないため、
ソースから収集します
。Dockerを使用してインストールすることもできます
まず、依存関係をインストールします。
Ubuntu / Debian:
apt-get update apt-get -y install libssl-dev libidn11-dev build-essentials lua5.1 liblua5.1-dev liblua5.1-bitop-dev liblua5.1-expat-dev liblua5.1-event-dev lua5.1-posix-dev lua5.1-sec-dev lua5.1-socket-dev lua5.1-filesystem-dev
CentOS:
yum -y install epel-release yum -y install gcc lua-devel openssl-devel libidn-devel lua-expat lua-socket lua-filesystem lua-sec lua-dbi lua-event
ソースをダウンロードし、収集してインストールします。
useradd -r -s /sbin/nologin -d /var/lib/metronome metronome curl -L https://github.com/maranda/metronome/archive/v3.7.tar.gz | tar xz -C /usr/src/ cd /usr/src/metronome* ./configure --prefix=/usr --sysconfdir=/etc/prosody --datadir=/var/lib/prosody --require-config --ostype=debian
systemdのユニットを作成します:/etc/systemd/system/metronome.service
[Unit] Description=XMPP (Jabber) Server After=network.target [Service] Type=forking PIDFile=/run/metronome/metronome.pid ExecStart=/usr/bin/metronomectl start ExecStop=/usr/bin/metronomectl stop [Install] WantedBy=multi-user.target
インストール完了
カスタマイズ
jappix.comから親切に提供されたmetronome.cfg.lua構成をダウンロードします
少し編集した後、この設定のようなものを得ました:
構成は非常によくコメントされており、追加のコメントを自分の側に残しても意味がありません。
jappixまたは他のWebクライアントをインストールする場合は、BOSHコンポーネントが必要だとしか言えません。 これにより、Webクライアントがサーバーと通信します。
サーバーの構成の詳細について
は、プロジェクトの
公式Webサイトで例を参照してください。
DNSサーバーに必要なDNSレコードを登録することを忘れないでください:
xmpp IN A 1.2.3.4 muc IN CNAME xmpp pubsub IN CNAME xmpp vjud IN CNAME xmpp bind IN CNAME xmpp websocket IN CNAME xmpp me IN CNAME xmpp stats IN CNAME xmpp proxy IN CNAME xmpp anonymous IN CNAME xmpp _xmpp-client._tcp.example.org. IN SRV 0 5 5222 xmpp.example.org. _xmpp-server._tcp.example.org. IN SRV 0 5 5269 xmpp.example.org.
サービスを開始します。
systemctl enable metronome systemctl start metronome
ログを確認してください。
すべて問題なければ、ユーザーを作成します。
prosodyctl adduser me@example.com
そして接続してみてください。
サーバーの準備ができました!

Jappix
作成者: ValérianSaliou、Julien Barrier
サイト: jappix.orgライセンス: AGPL
記述
: JavaScript
デモ: jappix.com先ほど言ったように、Jappixは非常に優れたインターフェイスを備え、音声通話とビデオ通話をサポートし、ほとんどの一般的なXEPをサポートし、ブラウザーウィンドウから直接動作するJabberクライアントです。
クライアント自体は次のようになります。
また、サイトに埋め込むための小さなバージョンがあります。
設置
クライアントをインストールします。
インストールは簡単なことではありません。 すべてのアクションは、プロジェクトファイルをWebサーバーのディレクトリにコピーすることです。 ただし、
Dockerを使用してJappixをインストールすることはできます。
それでは、依存関係をインストールしましょう。
Debian / Ubuntu:
apt-get install php5-gd php5-curl
CentOS:
yum install php-mbstring
ここで
jappix-1.1.6-primo.tar.bz2をダウンロードし、/ var / wwwに解凍します。
curl -L https://download.jappix.org/1.1.6/jappix-1.1.6-primo.tar.bz2 | tar xvj -C /var/www
Webサーバーの設定を書きましょう。たとえば、nginxの場合、次のようになります。
jappix.conf server { listen 80; server_name jappix.example.org; return 301 https://jappix.example.org$request_uri; } server { listen 443 ssl; server_name jappix.example.org; root /var/www/jappix; index index.html index.php; access_log /var/log/nginx/jappix-access.log; error_log /var/log/nginx/jappix-error.log;
Webサーバーを再起動します。
公式プロジェクト
wikiでインストールに関するより詳細な情報を見つけることができ
ます 。
カスタマイズ
Jappixにはグラフィカルインストーラーがあります。 リンクをたどります:
https://jappix.example.org/?m=install
管理者を作成し、他の質問に答え、サーバーにアドレスを入力します。
サーバー設定戦略は次のようになります。
インストールが完了すると、ログインウィンドウに移動します。
今後、次のリンクから管理パネルにアクセスできます。
https://jappix.example.org/?m=manager
暗号化しましょう
証明書について一言。
サーバーに自己署名証明書を残すのは良くありません。少なくとも無料でインストールする必要があります。
私たちは非常に多くのサブドメインを作成しているので、1つの無料の証明書ではすべての人にとって十分ではありません。 解決策があります-これはLet's Encryptです。
ハブで 、
MalcolmReynoldsは、Let's Encryptから証明書
を取得する
手順をすでに説明してい
ます 。
DigitalOceanに関するいくつかのクールな記事もあります-nginx、
apacheただし、Dockerを使用する場合は、私の画像を試してみることをお勧めします:
kvaps / letsencrypt-webrootご清聴ありがとうございました!