2011-08-01 188 views
0

發送短信我有鉤子處理程序在我的代碼:Ejabberd從掛鉤

ejabberd_hooks:add(sm_register_connection_hook, "localhost", ?MODULE, on_register, 80), 

on_register(SID, JID, INFO) -> 
    {_, _, _, _, Name, _, _} = JID, 
    ok. 

例如我想送這個名字gen_server,我怎麼能發送消息給從該掛鉤與名稱gen_server例如?我怎麼知道gen_server的pid裏面的on_register?

謝謝。

回答

0

on_register是?MODULE的基本模塊功能。如果gen_server是單例服務器,則可以使用gen_server:call(?MODULE,{name,Name})或gen_server:cast(?MODULE,{name,Name})將名稱發送給它。

那麼結果會是這樣的:

on_register(SID, JID, INFO) -> 
    {_, _, _, _, Name, _, _} = JID, 
    gen_server:call(?MODULE, {name, Name}), 
    ok.