I've started a paging/push implementation which will be the base of the Funambol push email hooks coming soon. I've implemented in by hooking into some existing message hooks (aftersave) and defining a new one (pushmsg). Some other operations may need to generate events in the future, in particular copy and move.

serv_pager.c includes:

* An aftersave hook which will intercept messages saved into Mail> or Mobile Pager> (a new room to facilitate push by way of manual move or libsieve). If the message is in Mail>, it will only push messages from recipients in the users contacts. If a message satisfies the criteria, a new event (EVT_PUSHMSG) is generated

* A implementation of EVT_PUSHMSG, pager_syscommand, which will execute a system command. (Command takes $1 as the user receiving the command, $2 as the temp file containing the rfc288 message).

Patch sets:

pager1.diff - Patches to latest SVN rev.

webcit.diff - Adds two new prefs - external pager command and funambol server port. Note that someone needs to add managesieve port to the webcit panel.

Significant changes other than those mentioned above:

msg->cm_fields['Z'] carries the destination users number - defined in msgbase.c

msg->cm_fields['W'] carries the destination users usernum - defined in msgbase.c

New view: view_pager (messages entered/copied into/moved into Mobile Pager> are supposed to disappear after being pushed, in Webcit Mobile Pager> will most likely bring up a configuration panel in the future).

 

Attachment: pager1.diff
Description: Binary data

Attachment: webcit.diff
Description: Binary data

Reply via email to