| Home · All Classes · All Namespaces · Modules · Functions · Files

# Enumerated type constants
[Types and constants]

Collaboration diagram for Enumerated type constants:

## Enumerations

- enum HandleType {
  HandleTypeNone, HandleTypeContact, HandleTypeRoom, HandleTypeList,
  HandleTypeGroup
  }
- enum ConnectionStatus { ConnectionStatusConnected, ConnectionStatusConnecting, ConnectionStatusDisconnected }
- enum ConnectionStatusReason {
  ConnectionStatusReasonNoneSpecified, ConnectionStatusReasonRequested, ConnectionStatusReasonNetworkError, ConnectionStatusReasonAuthenticationFailed,
  ConnectionStatusReasonEncryptionError, ConnectionStatusReasonNameInUse, ConnectionStatusReasonCertNotProvided, ConnectionStatusReasonCertUntrusted,
  ConnectionStatusReasonCertExpired, ConnectionStatusReasonCertNotActivated, ConnectionStatusReasonCertHostnameMismatch, ConnectionStatusReasonCertFingerprintMismatch,
  ConnectionStatusReasonCertSelfSigned, ConnectionStatusReasonCertOtherError
  }
- enum ConnectionPresenceType {
  ConnectionPresenceTypeUnset, ConnectionPresenceTypeOffline, ConnectionPresenceTypeAvailable, ConnectionPresenceTypeAway,
  ConnectionPresenceTypeExtendedAway, ConnectionPresenceTypeHidden, ConnectionPresenceTypeBusy, ConnectionPresenceTypeUnknown,
  ConnectionPresenceTypeError
  }
- enum RichPresenceAccessControlType { RichPresenceAccessControlTypeWhitelist, RichPresenceAccessControlTypePublishList, RichPresenceAccessControlTypeGroup, RichPresenceAccessControlTypeOpen }
- enum FileTransferState {
  FileTransferStateNone, FileTransferStatePending, FileTransferStateAccepted, FileTransferStateOpen,
  FileTransferStateCompleted, FileTransferStateCancelled
  }
- enum FileTransferStateChangeReason {
  FileTransferStateChangeReasonNone, FileTransferStateChangeReasonRequested, FileTransferStateChangeReasonLocalStopped, FileTransferStateChangeReasonRemoteStopped,
  FileTransferStateChangeReasonLocalError, FileTransferStateChangeReasonRemoteError
  }
- enum FileHashType { FileHashTypeNone, FileHashTypeMD5, FileHashTypeSHA1, FileHashTypeSHA256 }
- enum MediaStreamType { MediaStreamTypeAudio, MediaStreamTypeVideo }
- enum MediaStreamState { MediaStreamStateDisconnected, MediaStreamStateConnecting, MediaStreamStateConnected }
- enum MediaStreamDirection { MediaStreamDirectionNone, MediaStreamDirectionSend, MediaStreamDirectionReceive, MediaStreamDirectionBidirectional }
- enum ChannelTextSendError {
  ChannelTextSendErrorUnknown, ChannelTextSendErrorOffline, ChannelTextSendErrorInvalidContact, ChannelTextSendErrorPermissionDenied,
  ChannelTextSendErrorTooLong, ChannelTextSendErrorNotImplemented
  }
- enum ChannelTextMessageType {
  ChannelTextMessageTypeNormal, ChannelTextMessageTypeAction, ChannelTextMessageTypeNotice, ChannelTextMessageTypeAutoReply,
  ChannelTextMessageTypeDeliveryReport
  }
- enum TubeType { TubeTypeDBus, TubeTypeStream }
- enum TubeState { TubeStateLocalPending, TubeStateRemotePending, TubeStateOpen }
- enum ChannelChatState {
  ChannelChatStateGone, ChannelChatStateInactive, ChannelChatStateActive, ChannelChatStatePaused,
  ChannelChatStateComposing
  }
- enum DTMFEvent {
  DTMFEventDigit0, DTMFEventDigit1, DTMFEventDigit2, DTMFEventDigit3,
  DTMFEventDigit4, DTMFEventDigit5, DTMFEventDigit6, DTMFEventDigit7,
  DTMFEventDigit8, DTMFEventDigit9, DTMFEventAsterisk, DTMFEventHash,
  DTMFEventLetterA, DTMFEventLetterB, DTMFEventLetterC, DTMFEventLetterD
  }
- enum ChannelGroupChangeReason {
  ChannelGroupChangeReasonNone, ChannelGroupChangeReasonOffline, ChannelGroupChangeReasonKicked, ChannelGroupChangeReasonBusy,
  ChannelGroupChangeReasonInvited, ChannelGroupChangeReasonBanned, ChannelGroupChangeReasonError, ChannelGroupChangeReasonInvalidContact,
  ChannelGroupChangeReasonNoAnswer, ChannelGroupChangeReasonRenamed, ChannelGroupChangeReasonPermissionDenied, ChannelGroupChangeReasonSeparated
  }
- enum LocalHoldState { LocalHoldStateUnheld, LocalHoldStateHeld, LocalHoldStatePendingHold, LocalHoldStatePendingUnhold }
- enum LocalHoldStateReason { LocalHoldStateReasonNone, LocalHoldStateReasonRequested, LocalHoldStateReasonResourceNotAvailable }
- enum DeliveryStatus {
  DeliveryStatusUnknown, DeliveryStatusDelivered, DeliveryStatusTemporarilyFailed, DeliveryStatusPermanentlyFailed,
  DeliveryStatusAccepted
  }
- enum TubeChannelState { TubeChannelStateLocalPending, TubeChannelStateRemotePending, TubeChannelStateOpen, TubeChannelStateNotOffered }
- enum SocketAddressType { SocketAddressTypeUnix, SocketAddressTypeAbstractUnix, SocketAddressTypeIPv4, SocketAddressTypeIPv6 }
- enum SocketAccessControl { SocketAccessControlLocalhost, SocketAccessControlPort, SocketAccessControlNetmask, SocketAccessControlCredentials }
- enum MediaStreamError {
  MediaStreamErrorUnknown, MediaStreamErrorEOS, MediaStreamErrorCodecNegotiationFailed, MediaStreamErrorConnectionFailed,
  MediaStreamErrorNetworkError, MediaStreamErrorNoCodecs, MediaStreamErrorInvalidCMBehavior, MediaStreamErrorMediaError
  }
- enum MediaStreamBaseProto { MediaStreamBaseProtoUDP, MediaStreamBaseProtoTCP }
- enum MediaStreamTransportType { MediaStreamTransportTypeLocal, MediaStreamTransportTypeDerived, MediaStreamTransportTypeRelay }

## Variables

- const int NUM_HANDLE_TYPES
- const int NUM_CONNECTION_STATUSES
- const int NUM_CONNECTION_STATUS_REASONS
- const int NUM_CONNECTION_PRESENCE_TYPES
- const int NUM_RICH_PRESENCE_ACCESS_CONTROL_TYPES
- const int NUM_FILE_TRANSFER_STATES
- const int NUM_FILE_TRANSFER_STATE_CHANGE_REASONS
- const int NUM_FILE_HASH_TYPES
- const int NUM_MEDIA_STREAM_TYPES
- const int NUM_MEDIA_STREAM_STATES
- const int NUM_MEDIA_STREAM_DIRECTIONS
- const int NUM_CHANNEL_TEXT_SEND_ERRORS
- const int NUM_CHANNEL_TEXT_MESSAGE_TYPES
- const int NUM_TUBE_TYPES
- const int NUM_TUBE_STATES
- const int NUM_CHANNEL_CHAT_STATES
- const int NUM_DTMF_EVENTS
- const int NUM_CHANNEL_GROUP_CHANGE_REASONS
- const int NUM_LOCAL_HOLD_STATES
- const int NUM_LOCAL_HOLD_STATE_REASONS
- const int NUM_DELIVERY_STATUSES
- const int NUM_TUBE_CHANNEL_STATES
- const int NUM_SOCKET_ADDRESS_TYPES
- const int NUM_SOCKET_ACCESS_CONTROLS
- const int NUM_MEDIA_STREAM_ERRORS
- const int NUM_MEDIA_STREAM_BASE_PROTOS
- const int NUM_MEDIA_STREAM_TRANSPORT_TYPES

## Detailed Description

Types generated from the specification representing enumerated types ie. types the values of which are mutually exclusive integral constants.

## Enumeration Type Documentation

enum HandleType

Enumerated type generated from the specification.

Enumerator:

  HandleTypeNone | A "null" handle type used to indicate the absence of a handle. When a handle type and a handle appear as a pair, if the handle type is zero, the handle must also be zero.
  HandleTypeContact | A contact
  HandleTypeRoom | A chat room
  HandleTypeList | A server-generated contact list (see Channel.Interface.Group)
  HandleTypeGroup | A user-defined contact list (see Channel.Interface.Group)

enum ConnectionStatus

Enumerated type generated from the specification.

Enumerator:

  ConnectionStatusConnected | The connection is alive and all methods are available.
  ConnectionStatusConnecting | The connection has not yet been established, or has been severed and reconnection is being attempted. Some methods may fail until the connection has been established.
  ConnectionStatusDisconnected | The connection has been severed and no method calls are valid. The object may be removed from the bus at any time.

enum ConnectionStatusReason

Enumerated type generated from the specification.

A reason why the status of the connection changed. Apart from Requested, the values of this enumeration only make sense as reasons why the status changed to Disconnected.

Enumerator:

  ConnectionStatusReasonNoneSpecified | There is no reason set for this state change. Unknown status reasons SHOULD be treated like this reason. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Disconnected`.
  ConnectionStatusReasonRequested | The change is in response to a user request. Changes to the Connecting or Connected status SHOULD always indicate this reason; changes to the Disconnected status SHOULD indicate this reason if and only if the disconnection was requested by the user. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cancelled`.

  ConnectionStatusReasonNetworkError

  There was an error sending or receiving on the network socket.

  When the status changes from Connecting to Disconnected for this reason, the equivalent D-Bus error is either `org.freedesktop.Telepathy.Error.NetworkError`, `org.freedesktop.Telepathy.Error.ConnectionRefused`, `org.freedesktop.Telepathy.Error.ConnectionFailed` or some more specific error.

  When the status changes from Connected to Disconnected for this reason, the equivalent D-Bus error is either `org.freedesktop.Telepathy.Error.NetworkError`, `org.freedesktop.Telepathy.Error.ConnectionLost` or some more specific error.

  ConnectionStatusReasonAuthenticationFailed | The username or password was invalid. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.AuthenticationFailed`.

  ConnectionStatusReasonEncryptionError

  There was an error negotiating SSL on this connection, or encryption was unavailable and require-encryption was set when the connection was created.

  When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.EncryptionNotAvailable` if encryption was not available at all, or `org.freedesktop.Telepathy.Error.EncryptionError` if encryption failed.

  ConnectionStatusReasonNameInUse

  In general, this reason indicates that the requested account name or other identification could not be used due to conflict with another connection. It can be divided into three cases:

  - If the status change is from Connecting to Disconnected and the 'register' parameter to RequestConnection was present and true, the requested account could not be created on the server because it already exists. The equivalent D-Bus error is `org.freedesktop.Telepathy.Error.RegistrationExists`.

  - If the status change is from Connecting to Disconnected but the 'register' parameter is absent or false, the connection manager could not connect to the specified account because a connection to that account already exists. The equivalent D-Bus error is `org.freedesktop.Telepathy.Error.AlreadyConnected`.

    <tp:rationale> In some protocols, like XMPP (when connecting with the same JID and resource as an existing connection), the existing connection "wins" and the new one fails to connect. </tp:rationale>

  - If the status change is from Connected to Disconnected, the existing connection was automatically disconnected because a new connection to the same account (perhaps from a different client or location) was established. The equivalent D-Bus error is `org.freedesktop.Telepathy.Error.ConnectionReplaced`.

    <tp:rationale> In some protocols, like MSNP (when connecting twice with the same Passport), the new connection "wins" and the existing one is automatically disconnected. </tp:rationale>

  ConnectionStatusReasonCertNotProvided | The server did not provide a SSL certificate. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.NotProvided`.
  ConnectionStatusReasonCertUntrusted | The server's SSL certificate is signed by an untrusted certifying authority. This error SHOULD NOT be used to represent a self-signed certificate: use the more specific Cert_Self_Signed reason for that. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.Untrusted`.
  ConnectionStatusReasonCertExpired | The server's SSL certificate has expired. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.Expired`.
  ConnectionStatusReasonCertNotActivated | The server's SSL certificate is not yet valid. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.NotActivated`.
  ConnectionStatusReasonCertHostnameMismatch | The server's SSL certificate did not match its hostname. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.HostnameMismatch`.
  ConnectionStatusReasonCertFingerprintMismatch | The server's SSL certificate does not have the expected fingerprint. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.FingerprintMismatch`.
  ConnectionStatusReasonCertSelfSigned | The server's SSL certificate is self-signed. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.HostnameMismatch`.
  ConnectionStatusReasonCertOtherError | There was some other error validating the server's SSL certificate. When disconnected for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cert.Invalid`.

enum ConnectionPresenceType

Enumerated type generated from the specification.

Enumerator:

  ConnectionPresenceTypeUnset | An invalid presence type used as a null value. This value MUST NOT appear in the Statuses property, or in the result of GetStatuses on the deprecated Presence interface.
  ConnectionPresenceTypeOffline | Offline
  ConnectionPresenceTypeAvailable | Available
  ConnectionPresenceTypeAway | Away
  ConnectionPresenceTypeExtendedAway | Away for an extended time
  ConnectionPresenceTypeHidden | Hidden (invisible)
  ConnectionPresenceTypeBusy | Busy, Do Not Disturb.
  ConnectionPresenceTypeUnknown | Unknown, unable to determine presence for this contact, for example if the protocol only allows presence of subscribed contacts.
  ConnectionPresenceTypeError | Error, an error occurred while trying to determine presence. The message, if set, is an error from the server.

enum RichPresenceAccessControlType

Enumerated type generated from the specification.

A type of access control for Rich_Presence_Access_Control. For most types, the exact access control is given by an associated variant. These are the access control types from XMPP publish/subscribe (XEP-0060).

Enumerator:

  RichPresenceAccessControlTypeWhitelist | The associated variant is a list of contacts (signature 'au', Contact_Handle[]) who can see the extended presence information.
  RichPresenceAccessControlTypePublishList | All contacts in the user's 'publish' contact list can see the extended presence information. The associated variant is ignored.
  RichPresenceAccessControlTypeGroup | The associated variant is a handle of type Group (signature 'u', Group_Handle) representing a group of contacts who can see the extended presence information.
  RichPresenceAccessControlTypeOpen | Anyone with access to the service can see the extended presence information.

enum FileTransferState

Enumerated type generated from the specification.

Enumerator:

  FileTransferStateNone | An invalid state type used as a null value. This value MUST NOT appear in the State property.
  FileTransferStatePending | The file transfer is waiting to be accepted/closed by the receiver. The receiver has to call AcceptFile, then wait for the state to change to Open and check the offset value.
  FileTransferStateAccepted | The receiver has accepted the transfer. The sender now has to call ProvideFile to actually start the transfer. The receiver should now wait for the state to change to Open and check the offset value.
  FileTransferStateOpen | The file transfer is open for traffic.
  FileTransferStateCompleted | The file transfer has been completed successfully.
  FileTransferStateCancelled | The file transfer has been cancelled.

enum FileTransferStateChangeReason

Enumerated type generated from the specification.

Enumerator:

  FileTransferStateChangeReasonNone | No reason was specified.
  FileTransferStateChangeReasonRequested | The change in state was requested.
  FileTransferStateChangeReasonLocalStopped | The file transfer was cancelled by the local user.
  FileTransferStateChangeReasonRemoteStopped | The file transfer was cancelled by the remote user.
  FileTransferStateChangeReasonLocalError | The file transfer was cancelled because of a local error.
  FileTransferStateChangeReasonRemoteError | The file transfer was cancelled because of a remote error.

enum FileHashType

Enumerated type generated from the specification.

Enumerator:

  FileHashTypeNone | No hash.
  FileHashTypeMD5 | MD5 digest as a string of 32 ASCII hex digits.
  FileHashTypeSHA1 | SHA1 digest as a string of ASCII hex digits.
  FileHashTypeSHA256 | SHA256 digest as a string of ASCII hex digits.

enum MediaStreamType

Enumerated type generated from the specification.

Enumerator:

  MediaStreamTypeAudio | An audio stream
  MediaStreamTypeVideo | A video stream

enum MediaStreamState

Enumerated type generated from the specification.

Enumerator:

  MediaStreamStateDisconnected | The stream is disconnected.
  MediaStreamStateConnecting | The stream is trying to connect.
  MediaStreamStateConnected | The stream is connected.

enum MediaStreamDirection

Enumerated type generated from the specification.

Enumerator:

  MediaStreamDirectionNone | Media are not being sent or received
  MediaStreamDirectionSend | Media are being sent, but not received
  MediaStreamDirectionReceive | Media are being received, but not sent
  MediaStreamDirectionBidirectional | Media are being sent and received

enum ChannelTextSendError

Enumerated type generated from the specification.

Enumerator:

  ChannelTextSendErrorUnknown | An unknown error occurred
  ChannelTextSendErrorOffline | The requested contact was offline
  ChannelTextSendErrorInvalidContact | The requested contact is not valid
  ChannelTextSendErrorPermissionDenied | The user does not have permission to speak on this channel
  ChannelTextSendErrorTooLong | The outgoing message was too long and was rejected by the server
  ChannelTextSendErrorNotImplemented | The channel doesn't support sending text messages to the requested contact

enum ChannelTextMessageType

Enumerated type generated from the specification.

The type of message.

Enumerator:

  ChannelTextMessageTypeNormal | An ordinary chat message. Unknown types SHOULD be treated like this.
  ChannelTextMessageTypeAction | An action which might be presented to the user as "* <sender> <action>", such as an IRC CTCP ACTION (typically selected by the "/me" command). For example, the text of the message might be "drinks more coffee".
  ChannelTextMessageTypeNotice | A one-off or automated message not necessarily expecting a reply
  ChannelTextMessageTypeAutoReply | An automatically-generated reply message.
  ChannelTextMessageTypeDeliveryReport | This message type MUST NOT appear unless the channel supports the DeliveryReporting interface. The message MUST be as defined by the DeliveryReporting interface.

enum TubeType

Enumerated type generated from the specification.

Enumerator:

  TubeTypeDBus | The tube is D-Bus tube as described by the org.freedesktop.Telepathy.Channel.Type.DBusTube interface.
  TubeTypeStream | The tube is stream tube as described by the org.freedesktop.Telepathy.Channel.Type.StreamTube interface.

enum TubeState

Enumerated type generated from the specification.

Enumerator:

  TubeStateLocalPending | The tube is waiting to be accepted/closed locally.
  TubeStateRemotePending | The tube is waiting to be accepted/closed remotely.
  TubeStateOpen | The tube is open for traffic.

enum ChannelChatState

Enumerated type generated from the specification.

Enumerator:

  ChannelChatStateGone | The contact has effectively ceased participating in the chat.
  ChannelChatStateInactive | The contact has not been active for some time.
  ChannelChatStateActive | The contact is actively participating in the chat.
  ChannelChatStatePaused | The contact has paused composing a message.
  ChannelChatStateComposing | The contact is composing a message to be sent to the chat.

enum DTMFEvent

Enumerated type generated from the specification.

Enumerator:

  DTMFEventDigit0 | 0
  DTMFEventDigit1 | 1
  DTMFEventDigit2 | 2
  DTMFEventDigit3 | 3
  DTMFEventDigit4 | 4
  DTMFEventDigit5 | 5
  DTMFEventDigit6 | 6
  DTMFEventDigit7 | 7
  DTMFEventDigit8 | 8
  DTMFEventDigit9 | 9
  DTMFEventAsterisk | *
  DTMFEventHash | #
  DTMFEventLetterA | A
  DTMFEventLetterB | B
  DTMFEventLetterC | C
  DTMFEventLetterD | D

enum ChannelGroupChangeReason

Enumerated type generated from the specification.

Enumerator:

  ChannelGroupChangeReasonNone

  No reason was provided for this change.

  In particular, this reason SHOULD be used when representing users joining a named chatroom in the usual way, users leaving a chatroom by their own request, and normal termination of a StreamedMedia call by the remote user.

  If the <tp:member-ref>SelfHandle</tp:member-ref> is removed from a group for this reason and the actor is not the SelfHandle, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Terminated`.

  If the SelfHandle is removed from a group for this reason and the actor is also the SelfHandle, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Cancelled`.

  ChannelGroupChangeReasonOffline

  The change is due to a user going offline. Also used when user is already offline, but this wasn't known previously.

  If a one-to-one <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type">StreamedMedia</tp:dbus-ref> call fails because the contact being called is offline, the connection manager SHOULD indicate this by removing both the <tp:member-ref>SelfHandle</tp:member-ref> and the other contact's handle from the Group interface with reason Offline.

  <tp:rationale> For 1-1 calls, the call terminates as a result of removing the remote contact, so the SelfHandle should be removed at the same time as the remote contact and for the same reason. </tp:rationale>

  If a handle is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Offline`.

  ChannelGroupChangeReasonKicked | The change is due to a kick operation. If the <tp:member-ref>SelfHandle</tp:member-ref> is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Channel.Kicked`.

  ChannelGroupChangeReasonBusy

  The change is due to a busy indication.

  If a one-to-one <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type">StreamedMedia</tp:dbus-ref> call fails because the contact being called is busy, the connection manager SHOULD indicate this by removing both the <tp:member-ref>SelfHandle</tp:member-ref> and the other contact's handle from the Group interface with reason Busy.

  <tp:rationale> For 1-1 calls, the call terminates as a result of removing the remote contact, so the SelfHandle should be removed at the same time as the remote contact and for the same reason. </tp:rationale>

  If the <tp:member-ref>SelfHandle</tp:member-ref> is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Busy`.

  ChannelGroupChangeReasonInvited | The change is due to an invitation. This reason SHOULD only be used when contacts are added to the remote-pending set (to indicate that the contact has been invited) or to the members (to indicate that the contact has accepted the invitation). Otherwise, what would it mean?
  ChannelGroupChangeReasonBanned | The change is due to a kick+ban operation. If the <tp:member-ref>SelfHandle</tp:member-ref> is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.Channel.Banned`.
  ChannelGroupChangeReasonError | The change is due to an error occurring.

  ChannelGroupChangeReasonInvalidContact

  The change is because the requested contact does not exist.

  For instance, if the user invites a nonexistent contact to a chatroom or attempts to call a nonexistent contact, this could be indicated by the CM adding that contact's handle to remote-pending for reason None or Invited, then removing it for reason Invalid_Contact. In the case of a 1-1 StreamedMedia call, the CM SHOULD remove the self handle from the Group in the same signal.

  <tp:rationale> For 1-1 calls, the call terminates as a result of removing the remote contact, so the SelfHandle should be removed at the same time as the remote contact and for the same reason. </tp:rationale>

  If a contact is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.DoesNotExist`.

  ChannelGroupChangeReasonNoAnswer

  The change is because the requested contact did not respond.

  If a one-to-one <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type">StreamedMedia</tp:dbus-ref> call fails because the contact being called did not respond, the connection manager SHOULD indicate this by removing both the <tp:member-ref>SelfHandle</tp:member-ref> and the other contact's handle from the Group interface with reason No_Answer.

  <tp:rationale> Documenting existing practice. </tp:rationale>

  If a contact is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.NoAnswer`.

  ChannelGroupChangeReasonRenamed

  The change is because a contact's unique identifier changed. There must be exactly one handle in the removed set and exactly one handle in one of the added sets. The <tp:dbus-ref namespace="org.freedesktop.Telepathy.Connection.Interface.Renaming">Renamed</tp:dbus-ref> signal on the <tp:dbus-ref namespace="org.freedesktop.Telepathy.Connection.Interface">Renaming</tp:dbus-ref> interface will have been emitted for the same handles, shortly before this <tp:member-ref>MembersChanged</tp:member-ref> signal is emitted.

  ChannelGroupChangeReasonPermissionDenied | The change is because there was no permission to contact the requested handle. If a contact is removed from a group for this reason, the equivalent D-Bus error is `org.freedesktop.Telepathy.Error.PermissionDenied`.

  ChannelGroupChangeReasonSeparated

  If members are removed with this reason code, the change is because the group has split into unconnected parts which can only communicate within themselves (e.g. netsplits on IRC use this reason code).

  If members are added with this reason code, the change is because unconnected parts of the group have rejoined. If this channel carries messages (e.g. <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type">Text</tp:dbus-ref> or <tp:dbus-ref namespace="org.freedesktop.Telepathy.Channel.Type">Tubes</tp:dbus-ref> channels) applications must assume that the contacts being added are likely to have missed some messages as a result of the separation, and that the contacts in the group are likely to have missed some messages from the contacts being added.

  Note that from the added contacts' perspective, they have been in the group all along, and the contacts we indicate to be in the group (including the local user) have just rejoined the group with reason Separated. Application protocols in Tubes should be prepared to cope with this situation.

  The <tp:member-ref>SelfHandle</tp:member-ref> SHOULD NOT be removed from channels with this reason.

enum LocalHoldState

Enumerated type generated from the specification.

The hold state of a channel.

Enumerator:

  LocalHoldStateUnheld | All streams are unheld (the call is active). New channels SHOULD have this hold state.
  LocalHoldStateHeld | All streams are held (the call is on hold)
  LocalHoldStatePendingHold | The connection manager is attempting to move to state Held, but has not yet completed that operation. It is unspecified whether any, all or none of the streams making up the channel are on hold.
  LocalHoldStatePendingUnhold | The connection manager is attempting to move to state Held, but has not yet completed that operation. It is unspecified whether any, all or none of the streams making up the channel are on hold.

enum LocalHoldStateReason

Enumerated type generated from the specification.

The reason for a change to the Local_Hold_State. Clients MUST treat unknown values as equivalent to Local_Hold_State_Reason_None.

Enumerator:

  LocalHoldStateReasonNone | The reason cannot be described by any of the predefined values (connection managers SHOULD avoid this reason, but clients MUST handle it gracefully)
  LocalHoldStateReasonRequested | The change is in response to a user request
  LocalHoldStateReasonResourceNotAvailable | The change is because some resource was not available

enum DeliveryStatus

Enumerated type generated from the specification.

The status of a message as indicated by a delivery report. If this enum is extended in future specifications, this should only be to add new, non-overlapping conditions (i.e. all failures should still be signalled as either Temporarily_Failed or Permanently_Failed). If additional detail is required (e.g. distinguishing between the various types of permanent failure) this will be done using additional keys in the Message_Part.

Enumerator:

  DeliveryStatusUnknown | The message's disposition is unknown. Clients SHOULD consider all messages to have status Delivery_Status_Unknown unless otherwise specified; connection managers SHOULD NOT signal this delivery status explicitly.
  DeliveryStatusDelivered | The message has been delivered to the intended recipient.
  DeliveryStatusTemporarilyFailed | Delivery of the message has failed. Clients SHOULD notify the user, but MAY automatically try sending another copy of the message. Similar to errors with type="wait" in XMPP; analogous to 4xx errors in SMTP.
  DeliveryStatusPermanentlyFailed | Delivery of the message has failed. Clients SHOULD NOT try again unless by specific user action. If the user does not modify the message or alter configuration before re-sending, this error is likely to happen again. Similar to errors with type="cancel", type="modify" or type="auth" in XMPP; analogous to 5xx errors in SMTP.
  DeliveryStatusAccepted | An intermediate server has accepted the message but the message has not been yet delivered to the ultimate recipient. The connection manager might send a Failed report or Delivered report later. Similar to "202 Accepted" success code in SIP; analogous to 251 and 252 responses in SMTP.

enum TubeChannelState

Enumerated type generated from the specification.

Enumerator:

  TubeChannelStateLocalPending | The initiator offered the tube. The tube is waiting to be accepted/closed locally. If the client accepts the tube, the tube's state will be Open.
  TubeChannelStateRemotePending | The tube is waiting to be accepted/closed remotely. If the recipient accepts the tube, the tube's state will be Open.
  TubeChannelStateOpen | The initiator offered the tube and the recipient accepted it. The tube is open for traffic. The tube's state stays in this state until it is closed.
  TubeChannelStateNotOffered | The tube channel has been requested but the tube is not yet offered. The client should offer the tube to the recipient and the tube's state will be Remote_Pending. The method used to offer the tube depends on the tube type.

enum SocketAddressType

Enumerated type generated from the specification.

Enumerator:

  SocketAddressTypeUnix | A Unix socket. The address variant contains a byte-array, signature 'ay', containing the path of the socket.
  SocketAddressTypeAbstractUnix | An abstract Unix socket. The address variant contains a byte-array, signature 'ay', containing the path of the socket including the leading null byte.
  SocketAddressTypeIPv4 | An IPv4 socket. The address variant contains a Socket_Address_IPv4, i.e. a structure with signature (sq) in which the string is an IPv4 dotted-quad address literal (and must not be a DNS name), while the 16-bit unsigned integer is the port number.
  SocketAddressTypeIPv6 | An IPv6 socket. The address variant contains a Socket_Address_IPv6, i.e. a structure with signature (sq) in which the string is an IPv6 address literal as specified in RFC2373 (and must not be a DNS name), while the 16-bit unsigned integer is the port number.

enum SocketAccessControl

Enumerated type generated from the specification.

Enumerator:

  SocketAccessControlLocalhost | The IP or Unix socket can be accessed by any local user (e.g. a Unix socket that accepts all local connections, or an IP socket listening on 127.0.0.1 (or ::1) or rejecting connections not from that address). The associated variant must be ignored.
  SocketAccessControlPort | May only be used on IP sockets. The associated variant must contain a struct Socket_Address_IPv4 (or Socket_Address_IPv6) containing the string form of an IP address of the appropriate version, and a port number. The socket can only be accessed if the connecting process has that address and port number; all other connections will be rejected.
  SocketAccessControlNetmask | May only be used on IP sockets. The associated variant must contain a struct Socket_Netmask_IPv4 (or Socket_Netmask_IPv6) with signature (sy), containing the string form of an IP address of the appropriate version, and a prefix length "n". The socket can only be accessed if the first n bits of the connecting address match the first n bits of the given address.

  SocketAccessControlCredentials

  May only be used on UNIX sockets. The connecting process must send a byte when it first connects, which is not considered to be part of the data stream. If the operating system uses sendmsg() with SCM_CREDS or SCM_CREDENTIALS to pass credentials over sockets, the connecting process must do so if possible; if not, it must still send the byte.

  The listening process will disconnect the connection unless it can determine by OS-specific means that the connecting process has the same user ID as the listening process.

  The associated variant must be ignored.

enum MediaStreamError

Enumerated type generated from the specification.

Enumerator:

  MediaStreamErrorUnknown | An unknown error occured.
  MediaStreamErrorEOS | The end of the stream was reached.
  MediaStreamErrorCodecNegotiationFailed | There are no common codecs between the local side and the other particpants in the call. The possible codecs are not signalled here: the streaming implementation is assumed to report them in an implementation-dependent way, e.g. Farsight should use GstMissingElement.
  MediaStreamErrorConnectionFailed | A network connection for the Media could not be established or was lost.
  MediaStreamErrorNetworkError | There was an error in the networking stack (other than the connection failure).
  MediaStreamErrorNoCodecs | There are no installed codecs for this media type.
  MediaStreamErrorInvalidCMBehavior | The CM is doing something wrong.
  MediaStreamErrorMediaError | There was an error in the media processing stack.

enum MediaStreamBaseProto

Enumerated type generated from the specification.

Enumerator:

  MediaStreamBaseProtoUDP | UDP (User Datagram Protocol)
  MediaStreamBaseProtoTCP | TCP (Transmission Control Protocol)

enum MediaStreamTransportType

Enumerated type generated from the specification.

Enumerator:

  MediaStreamTransportTypeLocal | A local address
  MediaStreamTransportTypeDerived | An external address derived by a method such as STUN
  MediaStreamTransportTypeRelay | An external stream relay

## Variable Documentation

const int NUM_HANDLE_TYPES

1 higher than the highest valid value of HandleType.

const int NUM_CONNECTION_STATUSES

1 higher than the highest valid value of ConnectionStatus.

const int NUM_CONNECTION_STATUS_REASONS

1 higher than the highest valid value of ConnectionStatusReason.

const int NUM_CONNECTION_PRESENCE_TYPES

1 higher than the highest valid value of ConnectionPresenceType.

const int NUM_RICH_PRESENCE_ACCESS_CONTROL_TYPES

1 higher than the highest valid value of RichPresenceAccessControlType.

const int NUM_FILE_TRANSFER_STATES

1 higher than the highest valid value of FileTransferState.

const int NUM_FILE_TRANSFER_STATE_CHANGE_REASONS

1 higher than the highest valid value of FileTransferStateChangeReason.

const int NUM_FILE_HASH_TYPES

1 higher than the highest valid value of FileHashType.

const int NUM_MEDIA_STREAM_TYPES

1 higher than the highest valid value of MediaStreamType.

const int NUM_MEDIA_STREAM_STATES

1 higher than the highest valid value of MediaStreamState.

const int NUM_MEDIA_STREAM_DIRECTIONS

1 higher than the highest valid value of MediaStreamDirection.

const int NUM_CHANNEL_TEXT_SEND_ERRORS

1 higher than the highest valid value of ChannelTextSendError.

const int NUM_CHANNEL_TEXT_MESSAGE_TYPES

1 higher than the highest valid value of ChannelTextMessageType.

const int NUM_TUBE_TYPES

1 higher than the highest valid value of TubeType.

const int NUM_TUBE_STATES

1 higher than the highest valid value of TubeState.

const int NUM_CHANNEL_CHAT_STATES

1 higher than the highest valid value of ChannelChatState.

const int NUM_DTMF_EVENTS

1 higher than the highest valid value of DTMFEvent.

const int NUM_CHANNEL_GROUP_CHANGE_REASONS

1 higher than the highest valid value of ChannelGroupChangeReason.

const int NUM_LOCAL_HOLD_STATES

1 higher than the highest valid value of LocalHoldState.

const int NUM_LOCAL_HOLD_STATE_REASONS

1 higher than the highest valid value of LocalHoldStateReason.

const int NUM_DELIVERY_STATUSES

1 higher than the highest valid value of DeliveryStatus.

const int NUM_TUBE_CHANNEL_STATES

1 higher than the highest valid value of TubeChannelState.

const int NUM_SOCKET_ADDRESS_TYPES

1 higher than the highest valid value of SocketAddressType.

const int NUM_SOCKET_ACCESS_CONTROLS

1 higher than the highest valid value of SocketAccessControl.

const int NUM_MEDIA_STREAM_ERRORS

1 higher than the highest valid value of MediaStreamError.

const int NUM_MEDIA_STREAM_BASE_PROTOS

1 higher than the highest valid value of MediaStreamBaseProto.

const int NUM_MEDIA_STREAM_TRANSPORT_TYPES

1 higher than the highest valid value of MediaStreamTransportType.