Author: anthm Date: Wed Apr 1 11:35:37 2009 New Revision: 12865 Log: just ok mwi notifies Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c ============================================================================== --- freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c (original) +++ freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c Wed Apr 1 11:35:37 2009 @@ -92,7 +92,7 @@ int sub_state; tl_gets(tags, NUTAG_SUBSTATE_REF(sub_state), TAG_END()); - + /* make sure we have a proper event */ if (!sip || !sip->sip_event) { goto error; @@ -254,8 +254,14 @@ error: - nua_respond(nh, 481, "Subscription Does Not Exist", NUTAG_WITH_THIS(nua), TAG_END()); + if (sip->sip_event && sip->sip_event->o_type && !strcasecmp(sip->sip_event->o_type, "message-summary")) { + /* unsolicited mwi, just say ok */ + nua_respond(nh, SIP_200_OK, NUTAG_WITH_THIS(nua), TAG_END()); + } else { + nua_respond(nh, 481, "Subscription Does Not Exist", NUTAG_WITH_THIS(nua), TAG_END()); + } + end: if (sub_state == nua_substate_terminated) {