我正在编写一个ejabberd模块来过滤数据包。我需要获取主机名,以便使用
我有4个重要函数:
1.
gen_mod:get_module_opt()
获取一些配置信息。我有4个重要函数:
1.
start(Host, _Opt)
:这是一个ejabberd函数,用于加载我的模块。我在这里获取Host
原子
2. filter_packet({From, To, XML})
:这是我的数据包过滤钩子。由于它是ejabberd中的钩子,因此无法向此函数传递自定义参数
3. get_translation(XmlData)
:循环调用filter_packet()
时会调用get_translation()
4. fetch_translation(XmlData)
:从get_translation()
递归调用。这是我调用gen_mod:get_module_opt()
的位置,因此需要Host
我的问题是,如何将Host
从start()
中带入全局变量,以便fetch_translation
可以访问它?