And*_* B. 2 erlang mnesia ejabberd
我正在尝试从单独的脚本中将关联数据插入到ejabberd的Mnesia数据库中.我是一个Erlang初学者,虽然我可以弄清楚如何创建和使用单独的Mnesia数据库,但我无法弄清楚如何连接到ejabberd.使用相同的"-mnesia目录"似乎不够.
这个问题减少了如何在Erlang中进行rpc调用的问题.
确保ejabberd与节点的主机部分的完全限定主机名或IP地址一起运行.这在我的安装中指定为/etc/ejabberd/ejabberdctl.cfg中的EJABBERD_NODE.如果你必须更改主机名在这一步,请https://git.process-one.net/ejabberd/mainline/blobs/raw/v2.1.10/doc/guide.html#htoc79("更改计算机主机名" ).
使用-name或-sname启动shell或脚本,并使用与上述限制相同的主机.
您已准备好使用Erlang的内置RPC.例如:
(来自你的shell或脚本)
Cookie = 'YOUR_EJABBERD_COOKIE'. % mine was found in /var/lib/ejabberd/.erlang.cookie
EjabberdNode = 'ejabberd@127.0.0.1'. % or whatever you set as EJABBERD_NODE
erlang:set_cookie(EjabberdNode, Cookie).
net_adm:ping(EjabberdNode).
rpc:call(EjabberdNode, mnesia, system_info, [tables]).
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5149 次 |
最近记录: |