こんにちは。草井真良です。
最近は忙しくて記事の更新が中々できない日々が続いています。
本題に入って、今回は古の通信規格「XMPP」を取り上げたいと思います。
はじめにXMPPとは?
XMPPとは、2004年にIMPPのインターネットメッセージの標準案として制定されたもので、Jabber社が開発した「Jabber」の仕組みを改良したものです。
拡張性が高く、Google TalkやSlackなどとの通信が可能でした。過去形です。
というのもGoogle Talkはサービスを終了し、SlackはアップデートによりXMPPに非対応となりました。
このように20年前の規格で今では便利な各種チャットツールの場により、はっきり言って時代遅れのものですが、今回は面白そうなので取り上げる事にしました。
それでは良ければ解説を読んでいってください。
XMPPの詳しい歴史と解説
XMPPの歴史はその前身たるJabberの開発された1998年まで遡ります。
ジェリミー・ミラーという人がソースコードを公開したオープンソースという形式で、2000年にjabberdというツールのバージョン1.0を発表しました。
それがXMPPの基礎となり、その系譜は今日まで続いております。
技術の解説をします。
XMPPはXML形式を基礎としており、主に5222番ポート(TCP)を用いて通信を行います。
ポートって何だ?と思われる人のために解説しますと、ポートは建物でいえば複数あるうちの出入り口のようなもので、インターネット上では分かりやすくするために番号が振られています。
例えばWebサイトで使うポートは80番と443番、サーバの管理に使うのは21番と22番という風に大まかに決められています。
メールのような方式を採用しており、現在の主なチャットサービスのようにどこか1つの企業や組織のサーバで管理されておらず、メールサーバのように自分のXMPPサーバを用意する必要があります。
XMPPのアカウントは「[email protected]」のように、「ユーザー名@ドメイン名」という形式になっています。
オープンソースのソフトウェアなので、マシンかサーバさえあれば、誰でもXMPPサーバを立てて運用する事ができます。
XMPPサーバの立て方と現在続いているXMPPサーバの紹介
XMPPのサーバを立てるツールは主に2つあります。
「Openfire」と「ejabberd」というツールで、これをVPSなどにインストールするとサーバを立てられます。
インストール方法は以下のページでそれぞれあるので参照してください。
面倒くさいと思いますが、こういう手間をかけないと安全に安定した通信ができない時代があったみたいです。
という訳で既にあるXMPPサーバに登録して使った方が手間が省けるという事で、既存の安心できそうなXMPPサーバを見つけてきました。
ここから好きなXMPPサーバを選んで登録してみてください。一番上のXMPP.JPが日本語で使いやすいかも。
これでアカウント登録は終わりです。
XMPPクライアントソフトの紹介
アカウントを登録して用意したら次はクライアントソフトを用意します。
情報は古いものの、下記のページが参考になるでしょう。
個人的に私が使っているのはGajimとConversations(F-Droid版)を使っています。
GajimはWindows・Mac・Linux・BSDで動いて汎用性があり、ConversationsはF-Droid版ですと無料で使えて信頼性の高いAndroidのアプリとなります。
上記画像はGajimを利用した際の画像です。
iOSでXMPPのおすすめクライアントアプリがあったら教えてください。
そこは今の私にはまだよく分かりません。
強いて言えば「converse.js」という、ブラウザ上のXMPPクライアントを使うくらいでしょうか。
ちなみにこれもオープンソースです
代表的なXMPPサーバの部屋
XMPPのサーバとクライアントを用意したら、最後はXMPPのチャットルームに入ってみましょう。
2つ見つけましたので興味がございましたらどちらか好きな方、もしくは両方に入ってみましょう。
談話室「XMPP users」
日本語でXMPPの話をしている数少ないチャットルームの1つです。
「[email protected]」というリンクから入れます。
部屋の雰囲気はまったりしています。
076 XMPP
テクニカル諏訪子さんが運営しているチャットルームです。複数あります。
ルール無用とはいえ常識を守って使う方が良いでしょう。
最後に
どうでしたでしょうか?
2010年のものですが書籍もあります。
今でもプログラムの更新と文化が続いており、TorやVPNからでもチャットの利用が可能なのですが、どうしても選択肢が多くて面倒くさい所はあります。
古い技術なので利便性でいえばSkypeやDiscord、匿名性でいえばSessionやSimpleXに劣る所はありますが、長い歴史があって反面信頼できる技術でもあります。
XMPP、試してみませんか?
コメント