Mercurial > pidgin
diff libpurple/prpl.c @ 23859:eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
| author | Mike Ruprecht <maiku@soc.pidgin.im> |
|---|---|
| date | Sat, 19 Jul 2008 03:10:00 +0000 |
| parents | f55f84a1e3f7 |
| children | 4bc74deeb503 |
line wrap: on
line diff
--- a/libpurple/prpl.c Thu Jul 17 23:09:58 2008 +0000 +++ b/libpurple/prpl.c Sat Jul 19 03:10:00 2008 +0000 @@ -411,3 +411,61 @@ return NULL; } + + + +PurpleMedia * +purple_prpl_initiate_media(PurpleAccount *account, + const char *who, + PurpleMediaStreamType type) +{ +#ifdef USE_VV + PurpleConnection *gc = NULL; + PurplePlugin *prpl = NULL; + PurplePluginProtocolInfo *prpl_info = NULL; + + if (account) + gc = purple_account_get_connection(account); + if (gc) + prpl = purple_connection_get_prpl(gc); + if (prpl) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); + + if (prpl_info && prpl_info->initiate_media) { + /* should check that the protocol supports this media type here? */ + return prpl_info->initiate_media(gc, who, type); + } else { + return NULL; + } +#else + return NULL; +#endif +} + +gboolean +purple_prpl_can_do_media(PurpleAccount *account, + const char *who, + PurpleMediaStreamType type) +{ +#ifdef USE_VV + PurpleConnection *gc = NULL; + PurplePlugin *prpl = NULL; + PurplePluginProtocolInfo *prpl_info = NULL; + + if (account) + gc = purple_account_get_connection(account); + if (gc) + prpl = purple_connection_get_prpl(gc); + if (prpl) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); + + if (prpl_info && prpl_info->can_do_media) { + return prpl_info->can_do_media(gc, who, type); + } else { + return FALSE; + } +#else + return FALSE; +#endif +} +
