|  |  |  | Loudmouth Reference Manual |  | 
|---|
LmMessageHandler — A handler for incoming messages.
LmHandlerResult (*LmHandleMessageFunction) (LmMessageHandler *handler, LmConnection *connection, LmMessage *message,gpointer user_data);LmMessageHandler * lm_message_handler_new (LmHandleMessageFunction function,gpointer user_data,GDestroyNotify notify);void lm_message_handler_invalidate (LmMessageHandler *handler);gboolean lm_message_handler_is_valid (LmMessageHandler *handler);LmMessageHandler * lm_message_handler_ref (LmMessageHandler *handler);void lm_message_handler_unref (LmMessageHandler *handler);
A handler can be registered to listen to incoming messages with lm_connection_register_message_handler(). When a message is recieved the handlers of the correct type will be called.
LmHandlerResult (*LmHandleMessageFunction) (LmMessageHandler *handler, LmConnection *connection, LmMessage *message,gpointer user_data);
The actual callback function in an 
| handler : | an | 
| connection : | an LmConnection | 
| message : | an LmMessage | 
| user_data : | user data set when creating the handler | 
| Returns : | 
LmMessageHandler * lm_message_handler_new (LmHandleMessageFunction function,gpointer user_data,GDestroyNotify notify);
Creates a new message handler. This can be set to handle incoming messages and when a message of the type the handler is registered to handle is received function will be called and user_data will be passed to it. notify is called when the message handler is freed, that way any memory allocated by user_data can be freed.
| function : | a callback | 
| user_data : | user data passed to function | 
| notify : | function called when the message handler is freed | 
| Returns : | a newly created message handler | 
void lm_message_handler_invalidate (LmMessageHandler *handler);
Invalidates the handler. Useful if you need to cancel a reply
| handler : | an | 
gboolean lm_message_handler_is_valid (LmMessageHandler *handler);
Fetches whether the handler is valid or not.
| handler : | an | 
| Returns : |  | 
LmMessageHandler * lm_message_handler_ref (LmMessageHandler *handler);
Adds a reference to handler.
| handler : | an | 
| Returns : | the message handler | 
| << LmMessage | LmMessageNode >> |