Top |
TpBaseCallChannelTpBaseCallChannel — base class for TpSvcChannelTypeCall1 implementations |
guint | call-flags | Read |
GHashTable_guint+guint_* | call-members | Read |
guint | call-state | Read |
GHashTable_gchararray+GValue_* | call-state-details | Read |
GValueArray_guint+guint+gchararray+gchararray_* | call-state-reason | Read |
GPtrArray_DBusGObjectPath_ * | contents | Read |
gboolean | hardware-streaming | Read |
gboolean | initial-audio | Read / Write / Construct Only |
gchar * | initial-audio-name | Read / Write / Construct Only |
gchar * | initial-tones | Read / Write / Construct Only |
guint | initial-transport | Read / Write / Construct Only |
gboolean | initial-video | Read / Write / Construct Only |
gchar * | initial-video-name | Read / Write / Construct Only |
GHashTable_guint+gchararray_* | member-identifiers | Read |
gboolean | mutable-contents | Read / Write / Construct Only |
This base class makes it easier to write TpSvcChannelTypeCall1 implementations by implementing its properties, and some of its methods.
Subclasses should fill in TpBaseCallChannelClass.accept, TpBaseCallChannelClass.add_content and TpBaseCallChannelClass.hangup virtual function.
void
(*TpBaseCallChannelVoidFunc) (TpBaseCallChannel *self
);
Signature of an implementation of TpBaseCallChannelClass.set_ringing, TpBaseCallChannelClass.set_queued and TpBaseCallChannelClass.accept.
Since 0.17.5
TpBaseCallContent * (*TpBaseCallChannelAddContentFunc) (TpBaseCallChannel *self
,const gchar *name
,TpMediaStreamType media
,TpMediaStreamDirection initial_direction
,GError **error
);
Signature of an implementation of TpBaseCallChannelClass.add_content.
self |
||
name |
the name for the new content |
|
media |
||
initial_direction |
the desired initial direction of streams in the new content |
|
error |
a GError to fill |
Since 0.17.5
void (*TpBaseCallChannelHangupFunc) (TpBaseCallChannel *self
,TpCallStateChangeReason reason
,const gchar *detailed_reason
,const gchar *message
);
Signature of an implementation of TpBaseCallChannelClass.hangup.
self |
||
reason |
the TpCallStateChangeReason of the change |
|
detailed_reason |
a more specific reason for the call hangup, if one is available, or an empty string otherwise. |
|
message |
a human-readable message to be sent to the remote contact(s). |
Since 0.17.5
TpCallState
tp_base_call_channel_get_state (TpBaseCallChannel *self
);
Since 0.17.5
void tp_base_call_channel_set_state (TpBaseCallChannel *self
,TpCallState state
,guint actor_handle
,TpCallStateChangeReason reason
,const gchar *dbus_reason
,const gchar *message
);
Changes the call state and emit StateChanged signal with the new state.
self |
||
state |
the new TpCallState |
|
actor_handle |
the contact responsible for the change, or 0 if no contact was responsible. |
|
reason |
the TpCallStateChangeReason of the change |
|
dbus_reason |
a specific reason for the change, which may be a D-Bus error in the Telepathy namespace, a D-Bus error in any other namespace (for implementation-specific errors), or the empty string to indicate that the state change was not an error. |
|
message |
an optional debug message, to expediate debugging the potentially many processes involved in a call. |
Since 0.17.5
gboolean tp_base_call_channel_has_initial_audio (TpBaseCallChannel *self
,const gchar **initial_audio_name
);
self |
||
initial_audio_name |
a place to set the value of “initial-audio-name”. |
[out][allow-none][transfer none] |
Since 0.17.5
gboolean tp_base_call_channel_has_initial_video (TpBaseCallChannel *self
,const gchar **initial_video_name
);
self |
||
initial_video_name |
a place to set the value of “initial-video-name”. |
[out][allow-none][transfer none] |
Since 0.17.5
gboolean
tp_base_call_channel_has_mutable_contents
(TpBaseCallChannel *self
);
Since 0.17.5
GList *
tp_base_call_channel_get_contents (TpBaseCallChannel *self
);
Get the contents of this call. The GList and its elements must not be freed and should be copied before doing any modification.
Since 0.17.5
void tp_base_call_channel_add_content (TpBaseCallChannel *self
,TpBaseCallContent *content
);
Add content
to self
. If content
's “disposition” is
TP_CALL_CONTENT_DISPOSITION_INITIAL
, also set
“initial-audio” and “initial-audio-name”
properties (or “initial-video” and
“initial-video-name”).
Note that it is not allowed to add INITIAL contents after having registered
self
on the bus.
Since 0.17.5
void tp_base_call_channel_remove_content (TpBaseCallChannel *self
,TpBaseCallContent *content
,TpHandle actor_handle
,TpCallStateChangeReason reason
,const gchar *dbus_reason
,const gchar *message
);
Remove content
from self
.
self |
||
content |
a TpBaseCallContent to remove |
|
actor_handle |
the contact responsible for the change, or 0 if no contact was responsible. |
|
reason |
the TpCallStateChangeReason of the change |
|
dbus_reason |
a specific reason for the change, which may be a D-Bus error in the Telepathy namespace, a D-Bus error in any other namespace (for implementation-specific errors), or the empty string to indicate that the state change was not an error. |
|
message |
an optional debug message, to expediate debugging the potentially many processes involved in a call. |
Since 0.17.5
void tp_base_call_channel_update_member_flags (TpBaseCallChannel *self
,TpHandle contact
,TpCallMemberFlags new_flags
,TpHandle actor_handle
,TpCallStateChangeReason reason
,const gchar *dbus_reason
,const gchar *message
);
Add or update contact
call member with flags
flags.
self |
||
contact |
the contact to update |
|
new_flags |
the new TpCallMemberFlags of |
|
actor_handle |
the contact responsible for the change, or 0 if no contact was responsible. |
|
reason |
the TpCallStateChangeReason of the change |
|
dbus_reason |
a specific reason for the change, which may be a D-Bus error in the Telepathy namespace, a D-Bus error in any other namespace (for implementation-specific errors), or the empty string to indicate that the state change was not an error. |
|
message |
an optional debug message, to expediate debugging the potentially many processes involved in a call. |
Since 0.17.5
void tp_base_call_channel_remove_member (TpBaseCallChannel *self
,TpHandle contact
,TpHandle actor_handle
,TpCallStateChangeReason reason
,const gchar *dbus_reason
,const gchar *message
);
Remove contact
from call members.
self |
||
contact |
the contact to remove |
|
actor_handle |
the contact responsible for the change, or 0 if no contact was responsible. |
|
reason |
the TpCallStateChangeReason of the change |
|
dbus_reason |
a specific reason for the change, which may be a D-Bus error in the Telepathy namespace, a D-Bus error in any other namespace (for implementation-specific errors), or the empty string to indicate that the state change was not an error. |
|
message |
an optional debug message, to expediate debugging the potentially many processes involved in a call. |
Since 0.17.5
GHashTable *
tp_base_call_channel_get_call_members (TpBaseCallChannel *self
);
Since 0.17.5
void
tp_base_call_channel_remote_accept (TpBaseCallChannel *self
);
Must be called when the remote contact accepted the call.
“call-state” must be either TP_CALL_STATE_INITIALISED
or
TP_CALL_STATE_INITIALISING
and will then change to TP_CALL_STATE_ACCEPTED
.
Must be used only for outgoing calls.
Since 0.17.5
gboolean
tp_base_call_channel_is_accepted (TpBaseCallChannel *self
);
Since 0.17.5
struct TpBaseCallChannel;
A base class for call channel implementations
Since 0.17.5
struct TpBaseCallChannelClass { TpBaseCallChannelVoidFunc set_ringing; TpBaseCallChannelVoidFunc set_queued; TpBaseCallChannelVoidFunc accept; TpBaseCallChannelAddContentFunc add_content; TpBaseCallChannelHangupFunc hangup; };
The class structure for TpBaseCallChannel
TpBaseCallChannelVoidFunc |
Notify members that client is ringing. |
|
TpBaseCallChannelVoidFunc |
Notify members that call is queued. |
|
TpBaseCallChannelVoidFunc |
accept the call. Note that TpBaseMediaCallChannel subclasses should not override this virtual method, but TpBaseMediaCallChannelClass.accept instead. |
|
TpBaseCallChannelAddContentFunc |
add content to the call. Implementation must call
|
|
TpBaseCallChannelHangupFunc |
hangup the call. |
Since 0.17.5
“call-flags”
property“call-flags” guint
The flags of this call.
Flags: Read
Default value: 0
Since 0.17.5
“call-members”
property “call-members” GHashTable_guint+guint_*
GHashTable mapping TpHandle of each call member to their TpCallMemberFlags.
Flags: Read
Since 0.17.5
“call-state”
property“call-state” guint
The state of this call.
Flags: Read
Default value: 0
Since 0.17.5
“call-state-details”
property “call-state-details” GHashTable_gchararray+GValue_*
Details on the call state.
Flags: Read
Since 0.17.5
“call-state-reason”
property “call-state-reason” GValueArray_guint+guint+gchararray+gchararray_*
The reason for last call state change.
Flags: Read
Since 0.17.5
“contents”
property “contents” GPtrArray_DBusGObjectPath_ *
GPtrArray of object-paths of the TpBaseCallContent objects.
Flags: Read
Since 0.17.5
“hardware-streaming”
property“hardware-streaming” gboolean
Indicate to clients whether or not this Connection Manager has hardware streaming.
Flags: Read
Default value: FALSE
Since 0.17.5
“initial-audio”
property“initial-audio” gboolean
If set to TRUE
on a requested channel, subclass should immediately attempt
to establish an audio stream to the remote contact.
Flags: Read / Write / Construct Only
Default value: FALSE
Since 0.17.5
“initial-audio-name”
property“initial-audio-name” gchar *
Name to use to create the audio TpBaseCallContent if
“initial-audio” is set to TRUE
.
Flags: Read / Write / Construct Only
Default value: "audio"
Since 0.17.5
“initial-tones”
property“initial-tones” gchar *
DTMF Tones to be played on the channel created.
Flags: Read / Write / Construct Only
Default value: ""
Since 0.17.5
“initial-transport”
property“initial-transport” guint
If set to TRUE
on a requested channel, this indicates the transport that
should be used for this call.
Flags: Read / Write / Construct Only
Default value: 0
Since 0.17.5
“initial-video”
property“initial-video” gboolean
If set to TRUE
on a requested channel, subclass should immediately attempt
to establish a video stream to the remote contact.
Flags: Read / Write / Construct Only
Default value: FALSE
Since 0.17.5
“initial-video-name”
property“initial-video-name” gchar *
Name to use to create the video TpBaseCallContent if
“initial-video” is set to TRUE
.
Flags: Read / Write / Construct Only
Default value: "video"
Since 0.17.5
“member-identifiers”
property “member-identifiers” GHashTable_guint+gchararray_*
GHashTable mapping TpHandle of each call member to their identifiers.
Flags: Read
Since 0.17.5
“mutable-contents”
property“mutable-contents” gboolean
Indicate to clients whether or not they can add/remove contents.
Flags: Read / Write / Construct Only
Default value: FALSE
Since 0.17.5