]> sjero.net Git - linphone/blob - coreapi/upnp.h
update ms2 and cleanup dead function
[linphone] / coreapi / upnp.h
1 /*
2 linphone
3 Copyright (C) 2012  Belledonne Communications SARL
4
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License
7 as published by the Free Software Foundation; either version 2
8 of the License, or (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18 */
19
20 #ifndef LINPHONE_UPNP_H
21 #define LINPHONE_UPNP_H
22
23 #include "mediastreamer2/upnp_igd.h"
24 #include "linphonecore.h"
25 #include "sal.h"
26
27 typedef struct _UpnpSession UpnpSession;
28 typedef struct _UpnpContext UpnpContext;
29
30 int linphone_core_update_local_media_description_from_upnp(SalMediaDescription *desc, UpnpSession *session);
31 int linphone_core_update_upnp_from_remote_media_description(LinphoneCall *call, const SalMediaDescription *md);
32 int linphone_core_update_upnp(LinphoneCore *lc, LinphoneCall *call);
33
34 int linphone_upnp_call_process(LinphoneCall *call);
35 UpnpSession* linphone_upnp_session_new(LinphoneCall *call);
36 void linphone_upnp_session_destroy(UpnpSession* session);
37 LinphoneUpnpState linphone_upnp_session_get_state(UpnpSession *session);
38
39 UpnpContext *linphone_upnp_context_new(LinphoneCore *lc);
40 void linphone_upnp_context_destroy(UpnpContext *ctx);
41 void linphone_upnp_refresh(UpnpContext *ctx);
42 LinphoneUpnpState linphone_upnp_context_get_state(UpnpContext *ctx);
43 const char *linphone_upnp_context_get_external_ipaddress(UpnpContext *ctx);
44 int linphone_upnp_context_get_external_port(UpnpContext *ctx);
45 bool_t linphone_upnp_context_is_ready_for_register(UpnpContext *ctx);
46 void linphone_core_update_upnp_state_in_call_stats(LinphoneCall *call);
47
48 #endif //LINPHONE_UPNP_H