Posts Tagged ‘-behavior(gen_mod).

03
Jun
09

ejabberd module (gen_mod behavior).

Như ta đã biết với kiến trúc nền mở của ejabberd im server + vm erlang và sức mạnh của ngôn ngữ lập trình erlang, cho phép chúng ta implement/deploy ejabberd modules (ở đây interface là gen_mod behavior) vào hệ thống.

Cơ bản của một ejabberd module (gen_mod behavior) có skeleton như sau :
- Ở đây tôi đặt tên module này là : mod_test.
- Skeleton bắt buộc khi viết ejabberd module gen_mod behavior là phải có 2 export api (2 hàm callback) :
+ start với 2 arguments signal (_Host, _Opts).
+ stop với 1 arguments signal (_Host).
- Lưu ý underscores trước mỗi argument signal.
- 2 hàm callback trên sẽ được gọi sau khi start/stop ejabberd server.

-module(mod_test).
-behavior(gen_mod).

%%Export API
-export([start/2, stop/1]).

%% External APIs implement
start(_Host, _Opts) ->
ok.

stop(_Host) ->
ok.
%% Internal APIs implement

- Tiến hành compile ejabberd module trên bằng erlc, chúng ta có được mod_erlang.beam (erlang bye code) file.
(erlc -I /path/to/include -pz /path/to/ebin mod_test.erl).
- Deploy module này vào hệ thống thông qua file cấu hình (/path/to/ejabberd-x.x.x/conf/ejabberd.cfg) :

{modules,[
...
{mod_test, []},

]}.

* Stop/Start ejabberd server.




 

May 2012
M T W T F S S
« Apr    
 123456
78910111213
14151617181920
21222324252627
28293031  

del.icio.us

Con gái yêu.

CIMG0003

16/01/2010

Đầu tóc rối tung ...

More Photos

jabber

cuonglb@jabber.mobi
cuonglb@jabber.org
cuonglb@gmail.com
cuonglb@facemain.com
cuong@livemarkets.com
cuonglb@moo.im
cuonglb@jabber.snc.ru
cuonglb@alpha-labs.net
cuonglb@jaim.at
cuonglb@jabber.bluendo.com

Twitter Updates


Follow

Get every new post delivered to your Inbox.