mwService Struct Reference

A service is the recipient of sendOnCnl messages sent over channels marked with the corresponding service id. More...

`#include <mw_service.h>`

## Data Fields

guint32 | type
| the unique identifier by which this service is registered.

## Related Symbols

(Note that these are not member symbols.)
mwService_funcClear | clear
| The service's cleanup handler.
GDestroyNotify | client_cleanup
| Optional client data cleanup function.
gpointer | client_data
| Optional client data, not for use by service implementations.
mwService_funcGetDesc | get_desc
mwService_funcGetName | get_name
mwService_funcRecv | recv
| The service's input handler.
mwService_funcRecvAccept | recv_accept
| The service's channel accept handler.
mwService_funcRecvCreate | recv_create
| The service's channel create handler.
mwService_funcRecvDestroy | recv_destroy
| The service's channel destroy handler.
struct mwSession * | session
| session this service is attached to.
mwService_funcStart | start
| The service's start handler.
enum mwServiceState | state
| the state of this service.
mwService_funcStop | stop
| The service's stop handler.

## Detailed Description

A service is the recipient of sendOnCnl messages sent over channels marked with the corresponding service id.

Services provide functionality such as IM relaying, Awareness tracking and notification, and Conference handling. It is a service's responsibility to accept or destroy channels, and to process data sent over those channels

## Friends And Related Symbol Documentation

## clear

mwService_funcClear clear

related

The service's cleanup handler.

Service implementations should presume that mwService::stop will be called first. The clear handler is not for shutting down channels or generating non-cleanup side-effects, it is only for handling tear-down of the service, and will only be called once for any instance.

## client_cleanup

GDestroyNotify client_cleanup

related

Optional client data cleanup function.

Called with client_data from mwService_free

## client_data

gpointer client_data

related

Optional client data, not for use by service implementations.

## get_desc

mwService_funcGetDesc get_desc

related

Returns
  string short description of the service

## get_name

mwService_funcGetName get_name

related

Returns
  string short name of the service

## recv

mwService_funcRecv recv

related

The service's input handler.

Called when the session receives data on a channel belonging to this service

## recv_accept

mwService_funcRecvAccept recv_accept

related

The service's channel accept handler.

Called when the session receives a channel accept message for a channel with a service matching this service's type.

## recv_create

mwService_funcRecvCreate recv_create

related

The service's channel create handler.

Called when the session receives a channel create message with a service matching this service's type.

## recv_destroy

mwService_funcRecvDestroy recv_destroy

related

The service's channel destroy handler.

Called when the session receives a channel destroy message for a channel with a service matching this service's type.

## session

struct mwSession* session

related

session this service is attached to.

## start

mwService_funcStart start

related

The service's start handler.

Called upon the receipt of a service available message.

## state

enum mwServiceState state

related

the state of this service.

Determines whether or not the session should call the start function upon receipt of a service available message. Should not be set or checked by hand.

## stop

mwService_funcStop stop

related

The service's stop handler.

Called when the session is shutting down, or when the service is free'd.

## Field Documentation

## type

guint32 mwService::type

the unique identifier by which this service is registered.

The type value also relates to those channels which will be directed to this service

The documentation for this struct was generated from the following file:

- mw_service.h