Hi,

Attached is a proposed patch to add subscribe based support for MWI as per RFC3482. I've tested this with my Siemens S685IP and C470IP and it seems to work ok.

As per my previous note, it basically add another config option "subscribemwi" which stops the regular message-summary NOTIFY's happening unless the peer has actually SUBSRIBE'd (and then it uses the appropriate call-id.) The logic (and most of the code actually) is very similar to the asterisk implementation, I figured it seemed sensible to keep it similar rather than going off at a tangent for no reason.

I had liked the idea of using a zero value for 'checkmwi' as an indication that the peer was subscription based, however checkmwi is not per peer (which seems wrong?), and again this would have been different behavior to asterisk.

While implementing this I noticed a bug in the code that determines if the same message info has been sent before (the check did a shift 8 bits, then the reference shifted 16 bits) so that fix is also included.

The asterisk code seems to have a lot more stuff in it covering references to objects, and since I don't really understand the internals I may well have missed something ... it seems to work ok for me, but I'm not using dynamic peers etc. In any case the changes should only affect people using subscribemwi, so hopefully (other than the bug above) the standard behavior should be the same as before.

The patch is against svn RC/1.2.

Regards,

Lee.

Attachment: mwi.patch
Description: Binary data




_______________________________________________
Callweaver-dev mailing list
Callweaver-dev@callweaver.org
http://lists.callweaver.org/mailman/listinfo/callweaver-dev

Reply via email to