Reputation: 1049
I am new to ejabberd, trying to add new module for offline_message_posturl, on a Windows server. I couldn't find any blog post specifically for Windows other than the below. I am using ejabberd version 15.07.
I have been following this blog post: http://jasonrowe.com/2011/12/30/ejabberd-offline-messages/
Right now I am not able to create a .beam
file from the module file. I get this error:
> c(mod_http_offline).
mod_http_offline.erl:21: undefined macro 'INFO_MSG/2'
mod_http_offline.erl:27: undefined macro 'INFO_MSG/2'
mod_http_offline.erl:44: undefined macro 'INFO_MSG/2'
mod_http_offline.erl:11: function start/2 undefined
mod_http_offline.erl:11: function stop/1 undefined
mod_http_offline.erl:38: function post_offline_message/3 undefined
error
How can I fix this error?
Upvotes: 3
Views: 493
Reputation: 9055
You are not pointing to ejabberd include .hrl file. Simplest approach is probably to add you module to ejabberd src directory and recompile everything.
Otherwise, you can compile your module with erlc using -I to point to ejabberd include dirs (use as many -I directive as needed). For example:
erlc -I ../ejabberd/include mod_http_offline.erl
Upvotes: 1
Reputation: 41648
The INFO_MSG
macro used to be defined in the header file ejabberd.hrl
, but it was moved to logger.hrl
in ejabberd 13.06, which was released after that blog post was written. Include logger.hrl
as well as ejabberd.hrl
, and your file should compile:
-include("ejabberd.hrl").
-include("logger.hrl").
Upvotes: 7