diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index 9cb858fde2..c3562560e1 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -617,7 +617,11 @@ static int sofia_presence_mwi_callback(void *pArg, int argc, char **argv, char * assert(nh != NULL); id = switch_mprintf("sip:%s@%s", sub_to_user, sub_to_host); - exp = switch_mprintf("active;expires=%ld", time(NULL) - expire_sec); + expire_sec -= time(NULL); + if (expire_sec < 0) { + expire_sec = 3600; + } + exp = switch_mprintf("active;expires=%ld", expire_sec); tmp = contact; contact = sofia_glue_get_url_from_contact(tmp, 0);