summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier CrĂȘte <olivier.crete@collabora.co.uk>2010-10-29 12:08:04 +0100
committerOlivier CrĂȘte <olivier.crete@collabora.co.uk>2011-04-07 13:59:37 -0400
commit4ff231ef80f3c3aa725b64e64862e3c791091b6c (patch)
tree8e0b130a13e1ad02f3cb088c3387abee948bfa53
parent19dd03800c5bc4061bf567a0582fd942fc87371e (diff)
Add StartSoundTelephonyEvent and StartNamedTelephonyEvent
The sound variant has an implementation since its trivial
-rw-r--r--telepathy-farsight/stream.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/telepathy-farsight/stream.c b/telepathy-farsight/stream.c
index d99fcd5..d5ca382 100644
--- a/telepathy-farsight/stream.c
+++ b/telepathy-farsight/stream.c
@@ -180,6 +180,12 @@ static void set_stream_sending (TpMediaStreamHandler *proxy, gboolean play,
static void start_telephony_event (TpMediaStreamHandler *proxy, guchar event,
gpointer user_data, GObject *object);
+static void start_named_telephony_event (TpMediaStreamHandler *proxy,
+ guchar event, guint codecid, gpointer user_data, GObject *object);
+
+static void start_sound_telephony_event (TpMediaStreamHandler *proxy,
+ guchar event, gpointer user_data, GObject *object);
+
static void stop_telephony_event (TpMediaStreamHandler *proxy,
gpointer user_data, GObject *object);
@@ -734,6 +740,12 @@ get_all_properties_cb (TpProxy *proxy,
tp_cli_media_stream_handler_connect_to_start_telephony_event
(stream->priv->stream_handler_proxy, start_telephony_event, NULL, NULL,
(GObject*) stream, NULL);
+ tp_cli_media_stream_handler_connect_to_start_named_telephony_event
+ (stream->priv->stream_handler_proxy, start_named_telephony_event, NULL,
+ NULL, (GObject*) stream, NULL);
+ tp_cli_media_stream_handler_connect_to_start_sound_telephony_event
+ (stream->priv->stream_handler_proxy, start_sound_telephony_event, NULL,
+ NULL, (GObject*) stream, NULL);
tp_cli_media_stream_handler_connect_to_stop_telephony_event
(stream->priv->stream_handler_proxy, stop_telephony_event, NULL, NULL,
(GObject*) stream, NULL);
@@ -1829,6 +1841,36 @@ start_telephony_event (TpMediaStreamHandler *proxy G_GNUC_UNUSED,
}
static void
+start_named_telephony_event (TpMediaStreamHandler *proxy,
+ guchar event,
+ guint codecid,
+ gpointer user_data,
+ GObject *object)
+{
+ TfStream *self = TF_STREAM (object);
+
+ WARNING (self, "Named Telephony Events not implemented");
+}
+
+static void
+start_sound_telephony_event (TpMediaStreamHandler *proxy, guchar event,
+ gpointer user_data, GObject *object)
+{
+ TfStream *self = TF_STREAM (object);
+
+ g_assert (self->priv->fs_session != NULL);
+
+ DEBUG (self, "called with event %u", event);
+
+ /* this week, volume is 8, for the sake of argument... */
+
+ if (!fs_session_start_telephony_event (self->priv->fs_session, event, 8,
+ FS_DTMF_METHOD_IN_BAND))
+ WARNING (self, "sending sound event %u failed", event);
+}
+
+
+static void
stop_telephony_event (TpMediaStreamHandler *proxy G_GNUC_UNUSED,
gpointer user_data G_GNUC_UNUSED,
GObject *object)