2008-01-14
第一回 一人 ejabberd 勉強会
環境
ejabberd
twitter でも使われていたりとなかなか素敵。
バイナリ版はスルー
ソース版を落としてきます。
ちなみにバイナリ版では動作確認済み。
http://www.process-one.net/downloads/ejabberd/2.0.0-beta1/ejabberd-2.0.0-beta1.tar.gz
erang R12B-0 で ejabberd 2.0.0 beta はコンパイル出来ません。
ejabberd 2.0.0-beta1 released (updated) | ejabberd Community Site
http://www.ejabberd.im/ejabberd-2.0.0-beta1#comment-51550
ということでとりあえずパッチを当てちゃいます。
https://support.process-one.net/browse/EJAB-446
当てるとさくっと通ります。
$ ./configure --prefix=/usr/local/ejabberd-2.0.0 $ make $ sudo make install
次に、管理者を登録します。
まずは ejabberdcrl を使ってユーザを登録して、
そのユーザを ejabberd.cfg にて管理者に仕立て上げます。
$ cd /usr/local/ejabberd-2.0.0 $ sudo ./sbin ejabberdctl register admin localhost password
登録したら設定ファイルで管理者に仕立て上げます。
$ sudo vim ./etc/ejabberd/ejabberd.cfg
311 行目あたりのコメントアウトを外して、
ちょこちょこっと書き換えてください。
{acl, admin, {user, "admin", "localhost"}}.
これで準備は出来ました。
まずは起動してみましょう。
$ sudo ./sbin/ejabberdctl start
なにも言われなければ起動しています。
不安ならプロセス見てみて起動しているか確認してください。
ps -xa | grep erlang
さて、ここまできたら Web 管理画面に入ってみましょう。
http://localhost:5280/admin/
パスワードは ejabberdctl register ときの password の部分に入れたものです。

ejabberd 1 posted by (C)voluntas
この画面が見えたら成功です。
そうしたら Virtual Hosts をクリックしてください。

ejabberd 2 posted by (C)voluntas

ejabberd 3 posted by (C)voluntas
ここでサーバの細かい設定をします。
ここではまずはユーザを追加してみましょう。
Users をクリックします。

ejabberd 4 posted by (C)voluntas
User を適当に追加します。パスワードは忘れないようにしてください。

ejabberd 5 posted by (C)voluntas
追加されると下に保存されます。

ejabberd 6 posted by (C)voluntas
さて、ここからは Jabber クライアントに実際登録してみましょう。
ここでは Adium を使ってアカウントを追加してみます。

ejabberd 7 posted by (C)voluntas
サーバーを設定します。

ejabberd 8 posted by (C)voluntas
そしてログインして online と表示されれば無事接続できています。
![]()
ejabberd 9 posted by (C)voluntas
これだとちょっと切ないので、もう一人ユーザを追加します。

ejabberd 10 posted by (C)voluntas

ejabberd 11 posted by (C)voluntas
さて、ここでどちらかのコンタクトリストにもう一方を追加してみましょう。

ejabberd 12 posted by (C)voluntas
追加すると登録許可しますか?と聞かれるので許可してください。

ejabberd 13 posted by (C)voluntas
自作自演なので変な感じがしますが、気にしないでください。
さてさっそく会話してみましょう。
まずコンタクトリストに登録して、オンラインになってることを確認します。

ejabberd 14 posted by (C)voluntas
メッセージを送ってみましょう。

eabberd 15 posted by (C)voluntas

ejabberd 17 posted by (C)voluntas
タブが出来てもう一つの人が話しかけてきたら成功です。
自作自演。

ejabberd 16 posted by (C)voluntas
感想
かなり簡単です。何も気にせず使うことが出来ます:-)
コンパイルが面倒な人はバイナリを使えば同じようなことが簡単にできます。
皆さんもお試しください。
特に社内用メッセンジャーサーバとしては文句ないのではないでしょうか。
今後の予定
これいいなぁ
Cybozu Developer Network: 社内 Twitter
http://cydn.cybozu.co.jp/2007/12/intra_twitter.html
pateo さんの作った twitter もどきはソース公開されないのかなぁ。
社内向けに使いたいw
http://labs.monospace.jp/monologista/
あ、デバッグ画面。
メモ
メモメモ、すみません。
%% authentication method {auth_method, ldap}. %% DNS name of our LDAP server {ldap_servers, ["ldap.pyspa.org"]}. %% Bind to LDAP server as "cn=Manager,dc=example,dc=org" with password "secret" {ldap_rootdn, "cn=diradmin,dc=pyspa,dc=org"}. {ldap_password, "secret"}. %% define the user’s base {ldap_base, "dc=pyspa,dc=org"}. %% We want to authorize users from ’shadowAccount’ object class only %% {ldap_filter, "(objectClass=shadowAccount)"}.
