aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libempathy/empathy-tp-call.c21
-rw-r--r--libempathy/empathy-tp-call.h2
2 files changed, 23 insertions, 0 deletions
diff --git a/libempathy/empathy-tp-call.c b/libempathy/empathy-tp-call.c
index cb9e35cde..6d0941c39 100644
--- a/libempathy/empathy-tp-call.c
+++ b/libempathy/empathy-tp-call.c
@@ -773,3 +773,24 @@ empathy_tp_call_is_sending_video (EmpathyTpCall *call)
return priv->video->direction & TP_MEDIA_STREAM_DIRECTION_SEND ?
TRUE : FALSE;
}
+
+const gchar *
+empathy_tp_call_get_connection_manager (EmpathyTpCall *self)
+{
+ EmpathyTpCallPriv *priv = GET_PRIV (self);
+ TpConnection *conn;
+ TpAccount *account;
+
+ if (priv->channel == NULL)
+ return NULL;
+
+ conn = tp_channel_borrow_connection (priv->channel);
+ if (conn == NULL)
+ return NULL;
+
+ account = empathy_get_account_for_connection (conn);
+ if (account == NULL)
+ return NULL;
+
+ return tp_account_get_connection_manager (account);
+}
diff --git a/libempathy/empathy-tp-call.h b/libempathy/empathy-tp-call.h
index a00fe3e40..476b10a0d 100644
--- a/libempathy/empathy-tp-call.h
+++ b/libempathy/empathy-tp-call.h
@@ -88,6 +88,8 @@ gboolean empathy_tp_call_has_dtmf (EmpathyTpCall *call);
gboolean empathy_tp_call_is_receiving_video (EmpathyTpCall *call);
gboolean empathy_tp_call_is_sending_video (EmpathyTpCall *call);
+const gchar * empathy_tp_call_get_connection_manager (EmpathyTpCall *self);
+
G_END_DECLS
#endif /* __EMPATHY_TP_CALL_H__ */