diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index 3a07e1cb18921c535cb4bfe1ad88e7a72a8f21f5..0916edb4ce711055dee0e0beb1acaebe17fdf5ea 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -2470,11 +2470,15 @@ static void linphone_core_internal_notify_received(LinphoneCore *lc, LinphoneEve #ifdef HAVE_ADVANCED_IM const LinphoneAddress *resource = linphone_event_get_resource(lev); char *resourceAddrStr = linphone_address_as_string_uri_only(resource); - const char *factoryUri = linphone_proxy_config_get_conference_factory_uri(linphone_core_get_default_proxy_config(lc)); - if (factoryUri && (strcmp(resourceAddrStr, factoryUri) == 0)) { - bctbx_free(resourceAddrStr); - L_GET_PRIVATE_FROM_C_OBJECT(lc)->remoteListEventHandler->notifyReceived(L_GET_CPP_PTR_FROM_C_OBJECT(body)); - return; + const bctbx_list_t * elem; + for (elem=linphone_core_get_proxy_config_list(lc);elem!=NULL;elem=elem->next) { + LinphoneProxyConfig *proxy = (LinphoneProxyConfig*) elem->data; + const char *factoryUri = linphone_proxy_config_get_conference_factory_uri(proxy); + if (factoryUri && (strcmp(resourceAddrStr, factoryUri) == 0)) { + bctbx_free(resourceAddrStr); + L_GET_PRIVATE_FROM_C_OBJECT(lc)->remoteListEventHandler->notifyReceived(L_GET_CPP_PTR_FROM_C_OBJECT(body)); + return; + } } bctbx_free(resourceAddrStr);