void MediaServer::subscribeToContentDirectory() { const char* url = getContentDirectoryEventURL(); if ( !url || strcmp( url, "" ) == 0 ) { msg_Dbg( _p_sd, "No subscription url set!" ); return; } int timeOut = 1810; Upnp_SID sid; int res = UpnpSubscribe( _p_sd->p_sys->clientHandle, url, &timeOut, sid ); if ( res == UPNP_E_SUCCESS ) { _subscriptionTimeOut = timeOut; memcpy( _subscriptionID, sid, sizeof( Upnp_SID ) ); } else { msg_Dbg( _p_sd, "%s:%d: WARNING: '%s': %s", __FILE__, __LINE__, getFriendlyName(), UpnpGetErrorMessage( res ) ); } }
/** * Subscribes current client handle to Content Directory Service. * CDS exports the server shares to clients. */ void MediaServer::subscribeToContentDirectory() { const char* psz_url = getContentDirectoryEventURL(); if ( !psz_url ) { msg_Dbg( _p_sd, "No subscription url set!" ); return; } int i_timeout = 1810; Upnp_SID sid; int i_res = UpnpSubscribe( _p_sd->p_sys->client_handle, psz_url, &i_timeout, sid ); if ( i_res == UPNP_E_SUCCESS ) { _i_subscription_timeout = i_timeout; memcpy( _subscription_id, sid, sizeof( Upnp_SID ) ); } else { msg_Dbg( _p_sd, "Subscribe failed: '%s': %s", getFriendlyName(), UpnpGetErrorMessage( i_res ) ); } }