TpCallStream

TpCallStream — proxy object for a call stream

Synopsis

#include <telepathy-glib/telepathy-glib.h>

struct              TpCallStream;
struct              TpCallStreamClass;
void                tp_call_stream_init_known_interfaces
                                                        (void);
#define             TP_CALL_STREAM_FEATURE_CORE

gboolean            tp_call_stream_can_request_receiving
                                                        (TpCallStream *self);
TpSendingState      tp_call_stream_get_local_sending_state
                                                        (TpCallStream *self);
GHashTable *        tp_call_stream_get_remote_members   (TpCallStream *self);

void                tp_call_stream_request_receiving_async
                                                        (TpCallStream *self,
                                                         TpContact *contact,
                                                         gboolean receive,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);
gboolean            tp_call_stream_request_receiving_finish
                                                        (TpCallStream *self,
                                                         GAsyncResult *result,
                                                         GError **error);
void                tp_call_stream_set_sending_async    (TpCallStream *self,
                                                         gboolean send,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);
gboolean            tp_call_stream_set_sending_finish   (TpCallStream *self,
                                                         GAsyncResult *result,
                                                         GError **error);

Object Hierarchy

  GObject
   +----TpProxy
         +----TpCallStream

Properties

  "can-request-receiving"    gboolean              : Read
  "connection"               TpConnection*         : Read / Write / Construct Only
  "content"                  TpCallContent*        : Read / Write / Construct Only
  "local-sending-state"      guint                 : Read

Signals

  "local-sending-state-changed"                    : Run Last
  "remote-members-changed"                         : Run Last

Description

TpCallStream is a sub-class of TpProxy providing convenient API to represent TpCallChannel's stream.

Details

struct TpCallStream

struct TpCallStream;

Data structure representing a TpCallStream.

Since 0.17.5


struct TpCallStreamClass

struct TpCallStreamClass {
};

The class of a TpCallStream.

Since 0.17.5


tp_call_stream_init_known_interfaces ()

void                tp_call_stream_init_known_interfaces
                                                        (void);

Ensure that the known interfaces for TpCallStream have been set up. This is done automatically when necessary, but for correct overriding of library interfaces by local extensions, you should call this function before calling tp_proxy_or_subclass_hook_on_interface_add() with first argument TP_TYPE_CALL_STREAM.

Since 0.17.5


TP_CALL_STREAM_FEATURE_CORE

#define             TP_CALL_STREAM_FEATURE_CORE

Expands to a call to a function that returns a quark for the "core" feature on a TpCallStream.

One can ask for a feature to be prepared using the tp_proxy_prepare_async() function, and waiting for it to trigger the callback.


tp_call_stream_can_request_receiving ()

gboolean            tp_call_stream_can_request_receiving
                                                        (TpCallStream *self);

self :

a TpCallStream

Returns :

the value of "can-request-receiving"

Since 0.17.5


tp_call_stream_get_local_sending_state ()

TpSendingState      tp_call_stream_get_local_sending_state
                                                        (TpCallStream *self);

self :

a TpCallStream

Returns :

the value of "local-sending-state"

Since 0.17.5


tp_call_stream_get_remote_members ()

GHashTable *        tp_call_stream_get_remote_members   (TpCallStream *self);

Get the remote contacts to who this stream is connected, mapped to their sending state.

It is NOT guaranteed that TpContact objects have any feature prepared.

self :

a TpCallStream

Returns :

GHashTable mapping TpContact to its new TpSendingState. [transfer none][type GLib.HashTable][element-type TelepathyGLib.Contact uint]

Since 0.17.5


tp_call_stream_request_receiving_async ()

void                tp_call_stream_request_receiving_async
                                                        (TpCallStream *self,
                                                         TpContact *contact,
                                                         gboolean receive,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);

Request that a remote contact stops or starts sending on this stream.

The "can-request-receiving" property defines whether the protocol allows the local user to request the other side start sending on this stream.

If receive is TRUE, request that the given contact starts to send media. If receive is FALSE, request that the given contact stops sending media.

self :

a TpCallStream

contact :

contact from which sending is requested

receive :

the requested receiving state

callback :

a callback to call when the operation finishes

user_data :

data to pass to callback

Since 0.17.5


tp_call_stream_request_receiving_finish ()

gboolean            tp_call_stream_request_receiving_finish
                                                        (TpCallStream *self,
                                                         GAsyncResult *result,
                                                         GError **error);

Finishes tp_call_stream_request_receiving_async().

self :

a TpCallStream

result :

a GAsyncResult

error :

a GError to fill

Since 0.17.5


tp_call_stream_set_sending_async ()

void                tp_call_stream_set_sending_async    (TpCallStream *self,
                                                         gboolean send,
                                                         GAsyncReadyCallback callback,
                                                         gpointer user_data);

Set the stream to start or stop sending media from the local user to other contacts.

If send is TRUE, "local-sending-state" should change to TP_SENDING_STATE_SENDING, if it isn't already. If send is FALSE, "local-sending-state" should change to TP_SENDING_STATE_NONE, if it isn't already.

self :

a TpCallStream

send :

the requested sending state

callback :

a callback to call when the operation finishes

user_data :

data to pass to callback

Since 0.17.5


tp_call_stream_set_sending_finish ()

gboolean            tp_call_stream_set_sending_finish   (TpCallStream *self,
                                                         GAsyncResult *result,
                                                         GError **error);

Finishes tp_call_stream_set_sending_async().

self :

a TpCallStream

result :

a GAsyncResult

error :

a GError to fill

Since 0.17.5

Property Details

The "can-request-receiving" property

  "can-request-receiving"    gboolean              : Read

If TRUE, the user can request that a remote contact starts sending on this stream.

Default value: FALSE

Since 0.17.5


The "connection" property

  "connection"               TpConnection*         : Read / Write / Construct Only

The TpConnection of the call.

Since 0.17.5


The "content" property

  "content"                  TpCallContent*        : Read / Write / Construct Only

The Content that this streams belongs to

Since 0.17.6


The "local-sending-state" property

  "local-sending-state"      guint                 : Read

The local user's sending state, from TpSendingState.

Default value: 0

Since 0.17.5

Signal Details

The "local-sending-state-changed" signal

void                user_function                      (TpCallStream      *self,
                                                        guint              state,
                                                        TpCallStateReason *reason,
                                                        gpointer           user_data)      : Run Last

The ::local-sending-state-changed signal is emitted whenever the stream sending state changes.

self :

the TpCallStream

state :

the new TpSendingState

reason :

the TpCallStateReason for the change

user_data :

user data set when the signal handler was connected.

Since 0.17.5


The "remote-members-changed" signal

void                user_function                      (TpCallStream      *self,
                                                        GHashTable        *updates,
                                                        GPtrArray         *removed,
                                                        TpCallStateReason *reason,
                                                        gpointer           user_data)      : Run Last

The ::remote-members-changed signal is emitted whenever the stream's remote members changes.

It is NOT guaranteed that TpContact objects have any feature prepared.

self :

the TpCallStream

updates :

GHashTable mapping TpContact to its new TpSendingState. [type GLib.HashTable][element-type TelepathyGLib.Contact uint]

removed :

GPtrArray of TpContact removed from remote contacts. [type GLib.PtrArray][element-type TelepathyGLib.Contact]

reason :

the TpCallStateReason for the change

user_data :

user data set when the signal handler was connected.

Since 0.17.5