Interface org.freedesktop.Telepathy.Connection.Interface.ContactBlocking.DRAFT

Interface Index (Compact) | Summary | Description | Methods | Signals | Properties | Contact Attributes | Types

Methods

BlockContacts (au: Contacts, b: Report_Abusive) nothing
UnblockContacts (au: Contacts) nothing
RequestBlockedContacts () au: Contacts

Signals

BlockedContactsChanged (au: BlockedContacts, au: UnblockedContacts)

Properties

ContactBlockingCapabilities u (Contact_Blocking_Capabilities) Read only

Contact Attributes

org.freedesktop.Telepathy.Connection.Interface.ContactBlocking.DRAFT/blocked b

Types

Contact_Blocking_Capabilities Flags u
WARNING: This interface is experimental and is likely to cause havoc to your API/ABI if bindings are generated. Do not include this interface in libraries that care about compatibility.
Objects implementing this interface must also implement:

Description

An interface for connections where contacts can be blocked from communicating with this user and receiving this user's presence.

When this interface becomes stable, it will replace the ContactList channel with TargetHandleType Handle_Type_List and TargetID 'deny'.

Methods

(Permalink)

BlockContacts (au: Contacts, b: Report_Abusive) → nothing

Parameters

  • Contacts — au (Contact_Handle_List)
  • Some contacts to block.
  • Report_Abusive — b
  • In addition to blocking, report these contacts as abusive to the server administrators.

    Clients can determine whether this capability is available by checking the ContactBlockingCapabilities property. If the capability is not present and this argument is true, the error NotCapable SHOULD be raised.

    Some protocol libraries, in their conformance requirements, require the ability to report blocked contacts as abusive.

Direct the server to block some contacts. The precise effect is protocol-dependent, but SHOULD include ignoring all current and subsequent communications from the given contacts, avoiding sending presence to them in future, and if they were already receiving the local user's presence, behaving as if the local user went offline.

FIXME: do we need to allow this on protocols where it won't persist, or where we can't edit the block lists?


Possible Errors

  • Disconnected
  • The connection is not currently connected and cannot be used. This error may also be raised when operations are performed on a Connection for which StatusChanged has signalled status Disconnected for reason None.
    The second usage corresponds to None in the Connection_Status_Reason enum; if a better reason is available, the corresponding error should be used instead.
  • Invalid Handle
  • The handle specified is unknown on this channel or connection.
  • Network Error
  • Raised when there is an error reading from or writing to the network.
  • Not Capable
  • Raised when requested functionality is unavailable due to contact not having required capabilities.
(Permalink)

UnblockContacts (au: Contacts) → nothing

Parameters

Reverse the effects of a previous call to BlockContacts.


Possible Errors

  • Disconnected
  • The connection is not currently connected and cannot be used. This error may also be raised when operations are performed on a Connection for which StatusChanged has signalled status Disconnected for reason None.
    The second usage corresponds to None in the Connection_Status_Reason enum; if a better reason is available, the corresponding error should be used instead.
  • Invalid Handle
  • The handle specified is unknown on this channel or connection.
  • Network Error
  • Raised when there is an error reading from or writing to the network.
(Permalink)

RequestBlockedContacts () → au: Contacts

Returns

List the contacts that are blocked.

Clients SHOULD allow a relatively long timeout for calls to this method, since on some protocols contact blocking is part of the contact list, which can take a significant time to retrieve.


Possible Errors

  • Disconnected
  • The connection is not currently connected and cannot be used. This error may also be raised when operations are performed on a Connection for which StatusChanged has signalled status Disconnected for reason None.
    The second usage corresponds to None in the Connection_Status_Reason enum; if a better reason is available, the corresponding error should be used instead.
  • Invalid Handle
  • The handle specified is unknown on this channel or connection.
  • Network Error
  • Raised when there is an error reading from or writing to the network.

Signals

(Permalink)

BlockedContactsChanged (au: BlockedContacts, au: UnblockedContacts)

Parameters

Emitted when the list of blocked contacts is first retrieved (before returning from any pending calls to RequestBlockedContacts), and whenever the list of blocked contacts subsequently changes.

Properties

Accessed using the org.freedesktop.DBus.Properties interface.
(Permalink)

ContactBlockingCapabilities — u (Contact_Blocking_Capabilities)

Read only

Additional capabilities for contact blocking (i.e. whether we can report abusive contacts).

Note: there is no capability for supporting blocking itself, the presence of this interface indicates that contact blocking is supported.

Contact Attributes

Attributes that a contact can have, accessed with the org.freedesktop.Telepathy.Connection.Interface.Contacts interface.
(Permalink)

org.freedesktop.Telepathy.Connection.Interface.ContactBlocking.DRAFT/blocked — b

True if the contact would be in the result of RequestBlockedContacts; False or omitted if the contact is not blocked, or if it is unknown whether the contact is blocked.

Types

Flags (Permalink)

Contact_Blocking_Capabilities — u

  • Can_Report_Abusive (1)
  • This protocol is capable of reporting abusive contacts to the server administrators.