Home · All Classes · All Namespaces · Modules · Functions · Files
Public Slots | Signals | Public Member Functions | List of all members
Tp::Service::ChannelInterfaceGroupAdaptor Class Reference

#include <TelepathyQt/_gen/svc-channel.h>

Inherits Tp::AbstractAdaptor.

Public Slots

void AddMembers (const Tp::UIntList &contacts, const QString &message, const QDBusMessage &dbusMessage)
 
Tp::UIntList GetAllMembers (const QDBusMessage &dbusMessage, Tp::UIntList &localPending, Tp::UIntList &remotePending)
 
uint GetGroupFlags (const QDBusMessage &dbusMessage)
 
Tp::UIntList GetHandleOwners (const Tp::UIntList &handles, const QDBusMessage &dbusMessage)
 
Tp::UIntList GetLocalPendingMembers (const QDBusMessage &dbusMessage)
 
Tp::LocalPendingInfoList GetLocalPendingMembersWithInfo (const QDBusMessage &dbusMessage)
 
Tp::UIntList GetMembers (const QDBusMessage &dbusMessage)
 
Tp::UIntList GetRemotePendingMembers (const QDBusMessage &dbusMessage)
 
uint GetSelfHandle (const QDBusMessage &dbusMessage)
 
void RemoveMembers (const Tp::UIntList &contacts, const QString &message, const QDBusMessage &dbusMessage)
 
void RemoveMembersWithReason (const Tp::UIntList &contacts, const QString &message, uint reason, const QDBusMessage &dbusMessage)
 

Signals

void HandleOwnersChanged (const Tp::HandleOwnerMap &added, const Tp::UIntList &removed)
 
void HandleOwnersChangedDetailed (const Tp::HandleOwnerMap &added, const Tp::UIntList &removed, const Tp::HandleIdentifierMap &identifiers)
 
void SelfHandleChanged (uint selfHandle)
 
void SelfContactChanged (uint selfHandle, const QString &selfID)
 
void GroupFlagsChanged (uint added, uint removed)
 
void MembersChanged (const QString &message, const Tp::UIntList &added, const Tp::UIntList &removed, const Tp::UIntList &localPending, const Tp::UIntList &remotePending, uint actor, uint reason)
 
void MembersChangedDetailed (const Tp::UIntList &added, const Tp::UIntList &removed, const Tp::UIntList &localPending, const Tp::UIntList &remotePending, const QVariantMap &details)
 

Public Member Functions

uint GroupFlags () const
 
Tp::HandleOwnerMap HandleOwners () const
 
Tp::LocalPendingInfoList LocalPendingMembers () const
 
Tp::UIntList Members () const
 
Tp::UIntList RemotePendingMembers () const
 
uint SelfHandle () const
 
Tp::HandleIdentifierMap MemberIdentifiers () const
 
- Public Member Functions inherited from Tp::AbstractAdaptor
 AbstractAdaptor (const QDBusConnection &connection, QObject *adaptee, QObject *parent)
 
 ~AbstractAdaptor ()
 
QDBusConnection dbusConnection () const
 
QObject * adaptee () const
 

Detailed Description

Adaptor class providing a 1:1 mapping of the D-Bus interface "org.freedesktop.Telepathy.Channel.Interface.Group".

Member Function Documentation

uint Tp::Service::ChannelInterfaceGroupAdaptor::GroupFlags ( ) const

Return the value of the exported D-Bus object property GroupFlags of type uint.

Adaptees should export this property as a Qt property named 'groupFlags' with type uint.

An integer representing the bitwise-OR of flags on this channel. The user interface can use this to present information about which operations are currently valid. Change notification is via the GroupFlagsChanged signal.

Returns
The value of exported property GroupFlags.
Tp::HandleOwnerMap Tp::Service::ChannelInterfaceGroupAdaptor::HandleOwners ( ) const

Return the value of the exported D-Bus object property HandleOwners of type Tp::HandleOwnerMap.

Adaptees should export this property as a Qt property named 'handleOwners' with type Tp::HandleOwnerMap.

A map from channel-specific handles to their owners, including at least all of the channel-specific handles in this channel's members, local-pending or remote-pending sets as keys. Any handle not in the keys of this mapping is not channel-specific in this channel. Handles which are channel-specific, but for which the owner is unknown, MUST appear in this mapping with 0 as owner. Change notification is via the HandleOwnersChanged signal.

Returns
The value of exported property HandleOwners.
Tp::LocalPendingInfoList Tp::Service::ChannelInterfaceGroupAdaptor::LocalPendingMembers ( ) const

Return the value of the exported D-Bus object property LocalPendingMembers of type Tp::LocalPendingInfoList.

Adaptees should export this property as a Qt property named 'localPendingMembers' with type Tp::LocalPendingInfoList.

An array of structs containing handles representing contacts requesting channel membership and awaiting local approval with AddMembers.

Returns
The value of exported property LocalPendingMembers.
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::Members ( ) const

Return the value of the exported D-Bus object property Members of type Tp::UIntList.

Adaptees should export this property as a Qt property named 'members' with type Tp::UIntList.

The members of this channel.

Returns
The value of exported property Members.
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::RemotePendingMembers ( ) const

Return the value of the exported D-Bus object property RemotePendingMembers of type Tp::UIntList.

Adaptees should export this property as a Qt property named 'remotePendingMembers' with type Tp::UIntList.

An array of handles representing contacts who have been invited to the channel and are awaiting remote approval.

Returns
The value of exported property RemotePendingMembers.
uint Tp::Service::ChannelInterfaceGroupAdaptor::SelfHandle ( ) const

Return the value of the exported D-Bus object property SelfHandle of type uint.

Adaptees should export this property as a Qt property named 'selfHandle' with type uint.

The handle for the user on this channel (which can also be a local or remote pending member), or 0 if the user is not a member at all (which is likely to be the case, for instance, on ContactList channels). Note that this is different from the result of Connection.GetSelfHandle on some protocols, so the value of this handle should always be used with the methods of this interface.

Returns
The value of exported property SelfHandle.
Tp::HandleIdentifierMap Tp::Service::ChannelInterfaceGroupAdaptor::MemberIdentifiers ( ) const

Return the value of the exported D-Bus object property MemberIdentifiers of type Tp::HandleIdentifierMap.

Adaptees should export this property as a Qt property named 'memberIdentifiers' with type Tp::HandleIdentifierMap.

The string identifiers for handles mentioned in this channel, to give clients the minimal information necessary to create contacts without waiting for round-trips. Connection managers MUST include at least the identifiers for SelfHandle, Members, LocalPendingMembers (and their actors if any), RemotePendingMembers and HandleOwners.

Returns
The value of exported property MemberIdentifiers.
void Tp::Service::ChannelInterfaceGroupAdaptor::AddMembers ( const Tp::UIntList contacts,
const QString &  message,
const QDBusMessage &  dbusMessage 
)
slot

Begins a call to the exported D-Bus method AddMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void addMembers(const Tp::UIntList& contacts, const QString& message, const Tp::Service::ChannelInterfaceGroupAdaptor::AddMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Invite all the given contacts into the channel, or accept requests for channel membership for contacts on the pending local list.

A message may be provided along with the request, which will be sent to the server if supported. See the CHANNEL_GROUP_FLAG_MESSAGE_ADD and CHANNEL_GROUP_FLAG_MESSAGE_ACCEPT GroupFlags to see in which cases this message should be provided.

Attempting to add contacts who are already members is allowed; connection managers must silently accept this, without error.

Parameters
contacts
An array of contact handles to invite to the channel
message
A string message, which can be blank if desired
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::GetAllMembers ( const QDBusMessage &  dbusMessage,
Tp::UIntList localPending,
Tp::UIntList remotePending 
)
slot

Begins a call to the exported D-Bus method GetAllMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void getAllMembers(const Tp::Service::ChannelInterfaceGroupAdaptor::GetAllMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns arrays of all current, local and remote pending channel members.

Parameters
localPendingOutput parameter
array of handles of local pending members
remotePendingOutput parameter
array of handles of remote pending members
Returns
array of handles of current members
uint Tp::Service::ChannelInterfaceGroupAdaptor::GetGroupFlags ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetGroupFlags on this object.

Adaptees should export this method as a Qt slot with the following signature: void getGroupFlags(const Tp::Service::ChannelInterfaceGroupAdaptor::GetGroupFlagsContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns the value of the GroupFlags property.

Returns
The value of the GroupFlags property
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::GetHandleOwners ( const Tp::UIntList handles,
const QDBusMessage &  dbusMessage 
)
slot

Begins a call to the exported D-Bus method GetHandleOwners on this object.

Adaptees should export this method as a Qt slot with the following signature: void getHandleOwners(const Tp::UIntList& handles, const Tp::Service::ChannelInterfaceGroupAdaptor::GetHandleOwnersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

If the CHANNEL_GROUP_FLAG_CHANNEL_SPECIFIC_HANDLES flag is set on the channel, then the handles of the group members are specific to this channel, and are not meaningful in a connection-wide context such as contact lists. This method allows you to find the owner of the handle if it can be discovered in this channel, or 0 if the owner is not available.

Parameters
handles
A list of integer handles representing members of the channel
Returns
An array of integer handles representing the owner handles of the 
given room members, in the same order, or 0 if the owner is not 
available
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::GetLocalPendingMembers ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetLocalPendingMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void getLocalPendingMembers(const Tp::Service::ChannelInterfaceGroupAdaptor::GetLocalPendingMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns the To_Be_Added handle (only) for each structure in the LocalPendingMembers property.

Returns
Tp::LocalPendingInfoList Tp::Service::ChannelInterfaceGroupAdaptor::GetLocalPendingMembersWithInfo ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetLocalPendingMembersWithInfo on this object.

Adaptees should export this method as a Qt slot with the following signature: void getLocalPendingMembersWithInfo(const Tp::Service::ChannelInterfaceGroupAdaptor::GetLocalPendingMembersWithInfoContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns the LocalPendingMembers property.

Returns
An array of structs containing: A handle representing the contact 
requesting channel membership A handle representing the contact 
making the request, or 0 if unknown The reason for the request: one 
of the values of Channel_Group_Change_Reason A string message 
containing the reason for the request if any (or blank if none)
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::GetMembers ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void getMembers(const Tp::Service::ChannelInterfaceGroupAdaptor::GetMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns the Members property.

Returns
Tp::UIntList Tp::Service::ChannelInterfaceGroupAdaptor::GetRemotePendingMembers ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetRemotePendingMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void getRemotePendingMembers(const Tp::Service::ChannelInterfaceGroupAdaptor::GetRemotePendingMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns an array of handles representing contacts who have been invited to the channel and are awaiting remote approval.

Returns
uint Tp::Service::ChannelInterfaceGroupAdaptor::GetSelfHandle ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method GetSelfHandle on this object.

Adaptees should export this method as a Qt slot with the following signature: void getSelfHandle(const Tp::Service::ChannelInterfaceGroupAdaptor::GetSelfHandleContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Returns the value of the SelfHandle property.

Returns
void Tp::Service::ChannelInterfaceGroupAdaptor::RemoveMembers ( const Tp::UIntList contacts,
const QString &  message,
const QDBusMessage &  dbusMessage 
)
slot

Begins a call to the exported D-Bus method RemoveMembers on this object.

Adaptees should export this method as a Qt slot with the following signature: void removeMembers(const Tp::UIntList& contacts, const QString& message, const Tp::Service::ChannelInterfaceGroupAdaptor::RemoveMembersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Requests the removal of contacts from a channel, reject their request for channel membership on the pending local list, or rescind their invitation on the pending remote list.

If the SelfHandle is in a Group, it can be removed via this method, in order to leave the group gracefully. This is the recommended way to leave a chatroom, close or reject a ChannelTypeStreamedMediaInterface call, and so on.

Accordingly, connection managers SHOULD support doing this, regardless of the value of GroupFlags . If doing so fails with PermissionDenied, this is considered to a bug in the connection manager, but clients MUST recover by falling back to closing the channel with the ChannelInterface::Close() method.

Removing any contact from the local pending list is always allowed. Removing contacts other than the SelfHandle from the channel's members is allowed if and only if Channel_Group_Flag_Can_Remove is in the GroupFlags , while removing contacts other than the SelfHandle from the remote pending list is allowed if and only if Channel_Group_Flag_Can_Rescind is in the GroupFlags .

A message may be provided along with the request, which will be sent to the server if supported. See the Channel_Group_Flag_Message_Remove, Channel_Group_Flag_Message_Depart, Channel_Group_Flag_Message_Reject and Channel_Group_Flag_Message_Rescind GroupFlags to see in which cases this message should be provided.

Parameters
contacts
An array of contact handles to remove from the channel
message
A string message, which can be blank if desired
void Tp::Service::ChannelInterfaceGroupAdaptor::RemoveMembersWithReason ( const Tp::UIntList contacts,
const QString &  message,
uint  reason,
const QDBusMessage &  dbusMessage 
)
slot

Begins a call to the exported D-Bus method RemoveMembersWithReason on this object.

Adaptees should export this method as a Qt slot with the following signature: void removeMembersWithReason(const Tp::UIntList& contacts, const QString& message, uint reason, const Tp::Service::ChannelInterfaceGroupAdaptor::RemoveMembersWithReasonContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

As RemoveMembers, but a reason code may be provided where appropriate. The reason code may be ignored if the underlying protocol is unable to represent the given reason.

Parameters
contacts
An array of contact handles to remove from the channel
message
A string message, which can be blank if desired
reason
A reason for the change
void Tp::Service::ChannelInterfaceGroupAdaptor::HandleOwnersChanged ( const Tp::HandleOwnerMap added,
const Tp::UIntList removed 
)
signal

Represents the exported D-Bus signal HandleOwnersChanged on this object.

Adaptees should export this signal as a Qt signal with the following signature: void handleOwnersChanged(const Tp::HandleOwnerMap& added, const Tp::UIntList& removed);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
added
A map from channel-specific handles to their owners, in which the 
keys include all the handles that were added to the keys of the 
HandleOwners property, and all the handles in that property whose 
owner has changed
removed
The channel-specific handles that were removed from the keys of the 
HandleOwners property, as a result of the contact leaving this 
group in a previous MembersChanged signal
void Tp::Service::ChannelInterfaceGroupAdaptor::HandleOwnersChangedDetailed ( const Tp::HandleOwnerMap added,
const Tp::UIntList removed,
const Tp::HandleIdentifierMap identifiers 
)
signal

Represents the exported D-Bus signal HandleOwnersChangedDetailed on this object.

Adaptees should export this signal as a Qt signal with the following signature: void handleOwnersChangedDetailed(const Tp::HandleOwnerMap& added, const Tp::UIntList& removed, const Tp::HandleIdentifierMap& identifiers);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
added
A map from channel-specific handles to their owners, in which the 
keys include all the handles that were added to the keys of the 
HandleOwners property, and all the handles in that property whose 
owner has changed
removed
The channel-specific handles that were removed from the keys of the 
HandleOwners property, as a result of the contact leaving this 
group in a previous MembersChanged signal
identifiers
The string identifiers for handles mentioned in this signal, to 
give clients the minimal information necessary to create contacts 
without waiting for round-trips. Connection managers MUST include 
at least the identifiers for all handles in the Added map, and MAY 
include those from Removed array.
void Tp::Service::ChannelInterfaceGroupAdaptor::SelfHandleChanged ( uint  selfHandle)
signal

Represents the exported D-Bus signal SelfHandleChanged on this object.

Adaptees should export this signal as a Qt signal with the following signature: void selfHandleChanged(uint selfHandle);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
selfHandle
The new value of the SelfHandle property.
void Tp::Service::ChannelInterfaceGroupAdaptor::SelfContactChanged ( uint  selfHandle,
const QString &  selfID 
)
signal

Represents the exported D-Bus signal SelfContactChanged on this object.

Adaptees should export this signal as a Qt signal with the following signature: void selfContactChanged(uint selfHandle, const QString& selfID);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
selfHandle
The new value of the SelfHandle property.
selfID
The new value of the SelfHandle property&apos;s identifier.
void Tp::Service::ChannelInterfaceGroupAdaptor::GroupFlagsChanged ( uint  added,
uint  removed 
)
signal

Represents the exported D-Bus signal GroupFlagsChanged on this object.

Adaptees should export this signal as a Qt signal with the following signature: void groupFlagsChanged(uint added, uint removed);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
added
A bitwise OR of the flags which have been set
removed
A bitwise OR of the flags which have been cleared
void Tp::Service::ChannelInterfaceGroupAdaptor::MembersChanged ( const QString &  message,
const Tp::UIntList added,
const Tp::UIntList removed,
const Tp::UIntList localPending,
const Tp::UIntList remotePending,
uint  actor,
uint  reason 
)
signal

Represents the exported D-Bus signal MembersChanged on this object.

Adaptees should export this signal as a Qt signal with the following signature: void membersChanged(const QString& message, const Tp::UIntList& added, const Tp::UIntList& removed, const Tp::UIntList& localPending, const Tp::UIntList& remotePending, uint actor, uint reason);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
message
A string message from the server, or blank if not
added
A list of members added to the channel
removed
A list of members removed from the channel
localPending
A list of members who are pending local approval
remotePending
A list of members who are pending remote approval
actor
The contact handle of the person who made the change, or 0 if not 
known
reason
A reason for the change
void Tp::Service::ChannelInterfaceGroupAdaptor::MembersChangedDetailed ( const Tp::UIntList added,
const Tp::UIntList removed,
const Tp::UIntList localPending,
const Tp::UIntList remotePending,
const QVariantMap &  details 
)
signal

Represents the exported D-Bus signal MembersChangedDetailed on this object.

Adaptees should export this signal as a Qt signal with the following signature: void membersChangedDetailed(const Tp::UIntList& added, const Tp::UIntList& removed, const Tp::UIntList& localPending, const Tp::UIntList& remotePending, const QVariantMap& details);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
added
A list of members added to the channel
removed
A list of members removed from the channel
localPending
A list of members who are pending local approval
remotePending
A list of members who are pending remote approval
details

Information about the change, which may include the following well-known keys:

actor (u — Contact_Handle)
The contact handle of the person who made the change; 0 or omitted if unknown or not applicable.
change-reason (u — Channel_Group_Change_Reason)
A reason for the change.
contact-ids (a{us} — Handle_Identifier_Map)

The string identifiers for handles mentioned in this signal, to give clients the minimal information necessary to react to the event without waiting for round-trips. Connection managers SHOULD include the identifiers for members added to the group and for the actor (if any); they MAY omit the identifiers for handles which have been removed from the group.

On IRC, an event such as a netsplit could cause the vast majority of a channel to leave. Given that clients should already know the identifiers of a channel's members, including potentially hundreds of strings in the netsplit signal is unnecessary.

Clients MUST NOT assume that the presence or absence of a handle in this mapping is meaningful. This mapping is merely an optimization for round-trip reduction, and connection managers MAY add additional handles, omit some handles, or omit the mapping completely.

message (s)
A string message from the server regarding the change
error (s — DBus_Error_Name)
A (possibly implementation-specific) DBus error describing the change, providing more specific information than the Channel_Group_Change_Reason enum allows. This MUST only be present if it is strictly more informative than 'change-reason'; if present, 'change-reason' MUST be set to the closest available reason.
A SIP connection manager might want to signal "402 Payment required" as something more specific than Error or Permission_Denied so that a SIP-aware UI could handle it specially; including a namespaced error permits this to be done without Channel_Group_Change_Reason being extended to encompass every error any CM ever wants to report.
debug-message (s)
Debugging information on the change. SHOULD NOT be shown to users in normal circumstances.


Copyright © 2008-2011 Collabora Ltd. and Nokia Corporation
Telepathy-Qt 0.9.7