Errors

Interface Index (Compact) | Summary | Errors

Errors

Already Connected
Authentication Failed
Busy
Cancelled
Captcha Not Supported
Cert.Expired
Cert.Fingerprint Mismatch
Cert.Hostname Mismatch
Cert.Insecure
Cert.Invalid
Cert.Limit Exceeded
Cert.Not Activated
Cert.Not Provided
Cert.Revoked
Cert.Self Signed
Cert.Untrusted
Channel.Banned
Channel.Full
Channel.Invite Only
Channel.Kicked
Confused
Connection Failed
Connection Lost
Connection Refused
Connection Replaced
Disconnected
Does Not Exist
Emergency Calls Not Supported
Encryption Error
Encryption Not Available
Insufficient Balance
Invalid Argument
Invalid Handle
Media.Codecs Incompatible
Media.Streaming Error
Media.Unsupported Type
Network Error
No Answer
Not Available
Not Capable
Not Implemented
Not Yet
Not Yours
Offline
Permission Denied
Picked Up Elsewhere
Registration Exists
Rejected
Resource Unavailable
Service Busy
Service Confused
Software Upgrade Required
Terminated
Would Break Anonymity

The D-Bus errors used in Telepathy all start with im.telepathy.v1.Error.. They are used in D-Bus messages of type ERROR, and also as plain strings annotated with the DBus_Error_Name type.

In principle, any method can raise any error (this is a general fact of IPC). For instance, generic D-Bus errors starting with org.freedesktop.DBus.Error. will occur in some situations.

Telepathy methods can also raise implementation-specific errors to indicate specialized failure conditions. For better interoperability, if a suitable Telepathy error exists, it should be preferred.

The namespace im.telepathy.v1.Qt4.Error. is reserved for use by the D-Bus client implementation in telepathy-qt4, which uses it to represent certain error situations that did not involve a D-Bus ERROR message. These errors are defined and documented as part of telepathy-qt4's C++ API, and should not be used on D-Bus.

Errors

(Permalink)

Already Connected

im.telepathy.v1.Error.AlreadyConnected
Raised when the user attempts to connect to an account but they are already connected (perhaps from another client or computer), and the protocol or account settings do not allow this.
Rationale:
XMPP can have this behaviour if the user chooses the same resource in both clients (it is server-dependent whether the result is AlreadyConnected on the new connection, ConnectionReplaced on the old connection, or two successful connections).
(Permalink)

Authentication Failed

im.telepathy.v1.Error.AuthenticationFailed
Raised when authentication with a service was unsuccessful.
Rationale:
This corresponds to Authentication_Failed in the Connection_Status_Reason enum.
(Permalink)

Busy

im.telepathy.v1.Error.Busy
Used to represent a user being removed from a channel because of a "busy" indication. This error SHOULD NOT be used to represent a server or other infrastructure being too busy to process a request - for that, see ServerBusy.
Rationale:
This corresponds to Busy in the Channel_Group_Change_Reason enum.
(Permalink)

Cancelled

im.telepathy.v1.Error.Cancelled
Raised by an ongoing request if it is cancelled by user request before it has completed, or when operations are performed on an object which the user has asked to close (for instance, a Connection where the user has called Disconnect, or a Channel where the user has called Close).
Rationale:
The second form can be used to correspond to the Requested member in the Connection_Status_Reason enum, or to to represent the situation where disconnecting a Connection, closing a Channel, etc. has been requested by the user but this request has not yet been acted on, for instance because the service will only act on the request when it has finished processing an event queue.
(Permalink)

Captcha Not Supported

im.telepathy.v1.Error.CaptchaNotSupported
Added in 0.25.2.

Raised if the CaptchaAuthentication1 Handler either has no UI to present captchas, or it does, but wasn't able to answer any of the captchas given.

(Permalink)

Cert.Expired

im.telepathy.v1.Error.Cert.Expired
Raised if the server provided an expired SSL/TLS certificate.
Rationale:
This corresponds to Cert_Expired in the Connection_Status_Reason enum and to Expired in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Fingerprint Mismatch

im.telepathy.v1.Error.Cert.FingerprintMismatch
Raised if the server provided an SSL/TLS certificate that did not have the expected fingerprint.
Rationale:
This corresponds to Cert_Fingerprint_Mismatch in the Connection_Status_Reason enum and to Fingerprint_Mismatch in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Hostname Mismatch

im.telepathy.v1.Error.Cert.HostnameMismatch

Raised if the server provided an SSL/TLS certificate that did not match its hostname.

You MAY be able to get more details about the expected and certified hostnames by looking up the 'expected-hostname' and 'certificate-hostname' keys in the details map that came together with this error.

Rationale:
This corresponds to Cert_Hostname_Mismatch in the Connection_Status_Reason enum and to Hostname_Mismatch in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Insecure

im.telepathy.v1.Error.Cert.Insecure
Added in 0.19.11.
Raised if the server provided an SSL/TLS certificate that uses an insecure cipher algorithm or is cryptographically weak.
Rationale:
This corresponds to Cert_Insecure in the Connection_Status_Reason enum and to Insecure in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Invalid

im.telepathy.v1.Error.Cert.Invalid
Added in 0.19.11.
Raised if the server provided an SSL/TLS certificate that is unacceptable in some way that does not have a more specific error.
Rationale:
This corresponds to Cert_Other_Error in the Connection_Status_Reason enum and to Unknown in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Limit Exceeded

im.telepathy.v1.Error.Cert.LimitExceeded
Added in 0.19.11.
Raised if the length in bytes of the server certificate, or the depth of the server certificate chain exceeds the limits imposed by the crypto library.
Rationale:
This corresponds to Cert_Limit_Exceeded in the Connection_Status_Reason enum and to Limit_Exceeded in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Not Activated

im.telepathy.v1.Error.Cert.NotActivated
Raised if the server provided an SSL/TLS certificate that will become valid at some point in the future.
Rationale:
This corresponds to Cert_Not_Activated in the Connection_Status_Reason enum and to Not_Activated in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Not Provided

im.telepathy.v1.Error.Cert.NotProvided
Raised if the server did not provide a SSL/TLS certificate. This error MUST NOT be used to represent the absence of a client certificate provided by the Telepathy connection manager.
Rationale:
This corresponds to Cert_Not_Provided in the Connection_Status_Reason enum. That error explicitly applied only to server SSL certificates, so this one is similarly limited; having the CM present a client certificate is a possible future feature, but it should have its own error handling.
(Permalink)

Cert.Revoked

im.telepathy.v1.Error.Cert.Revoked
Raised if the server provided an SSL/TLS certificate that has been revoked.
Rationale:
This corresponds to Cert_Revoked in the Connection_Status_Reason enum and to Revoked in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Self Signed

im.telepathy.v1.Error.Cert.SelfSigned
Raised if the server provided an SSL/TLS certificate that is self-signed and untrusted.
Rationale:
This corresponds to Cert_Self_Signed in the Connection_Status_Reason enum and to Self_Signed in the TLS_Certificate_Reject_Reason enum.
(Permalink)

Cert.Untrusted

im.telepathy.v1.Error.Cert.Untrusted
Raised if the server provided a SSL/TLS certificate signed by an untrusted certifying authority. This error SHOULD NOT be used to represent a self-signed certificate: see the Self Signed error for that.
Rationale:
This corresponds to Cert_Untrusted in the Connection_Status_Reason enum and to Untrusted in the TLS_Certificate_Reject_Reason enum, with a clarification to avoid ambiguity.
(Permalink)

Channel.Banned

im.telepathy.v1.Error.Channel.Banned
You are banned from the channel.
(Permalink)

Channel.Full

im.telepathy.v1.Error.Channel.Full
The channel is full.
(Permalink)

Channel.Invite Only

im.telepathy.v1.Error.Channel.InviteOnly
The requested channel is invite-only.
(Permalink)

Channel.Kicked

im.telepathy.v1.Error.Channel.Kicked
Used to represent a user being ejected from a channel by another user, for instance being kicked from a chatroom.
Rationale:
This corresponds to Kicked in the Channel_Group_Change_Reason enum.
(Permalink)

Confused

im.telepathy.v1.Error.Confused
Added in 0.21.5.
Raised if a server rejects protocol messages from a connection manager claiming that they do not make sense, two local processes fail to understand each other, or an apparently impossible situation is reached.
Rationale:
For instance, this would be an appropriate mapping for XMPP's errors bad-format, invalid-xml, etc., which can't happen unless the local (or remote) XMPP implementation is faulty. This is also analogous to Media_Stream_Error_Invalid_CM_Behavior, TP_DBUS_ERROR_INCONSISTENT in telepathy-glib, and TELEPATHY_QT4_ERROR_INCONSISTENT in telepathy-qt4.
(Permalink)

Connection Failed

im.telepathy.v1.Error.ConnectionFailed
Raised when a connection can't be established.
(Permalink)

Connection Lost

im.telepathy.v1.Error.ConnectionLost
Raised when a connection is broken.
(Permalink)

Connection Refused

im.telepathy.v1.Error.ConnectionRefused
Raised when a connection is refused.
(Permalink)

Connection Replaced

im.telepathy.v1.Error.ConnectionReplaced
Raised by an existing connection to an account if it is replaced by a new connection (perhaps from another client or computer).
Rationale:
In MSNP, when connecting twice with the same Passport, the new connection "wins" and the old one is automatically disconnected. XMPP can also have this behaviour if the user chooses the same resource in two clients (it is server-dependent whether the result is AlreadyConnected on the new connection, ConnectionReplaced on the old connection, or two successful connections).
(Permalink)

Disconnected

im.telepathy.v1.Error.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.
Rationale:
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.
(Permalink)

Does Not Exist

im.telepathy.v1.Error.DoesNotExist
Raised when the requested user does not, in fact, exist.
Rationale:
This corresponds to Invalid_Contact in the Channel_Group_Change_Reason enum, but can also be used to represent other things not existing (like chatrooms, perhaps).
(Permalink)

Emergency Calls Not Supported

im.telepathy.v1.Error.EmergencyCallsNotSupported
Added in 0.21.12.
Raised if a client attempts to dial a number that is recognized as an emergency number (e.g. '911' in the USA), but the Connection Manager or provider does not support dialling emergency numbers.
Rationale:
Many VOIP providers have the ability to dial traditional (PSTN) telephone numbers, but do not provide the ability to dial emergency numbers (for instance, Google Voice). This error provides additional information about why such a call was unsuccessful.
(Permalink)

Encryption Error

im.telepathy.v1.Error.EncryptionError
Raised if encryption appears to be available, but could not actually be used (for instance if SSL/TLS negotiation fails).
Rationale:
This corresponds to part of Encryption_Error in the Connection_Status_Reason enum.
(Permalink)

Encryption Not Available

im.telepathy.v1.Error.EncryptionNotAvailable
Raised if a user request insisted that encryption should be used, but encryption was not actually available.
Rationale:
This corresponds to part of Encryption_Error in the Connection_Status_Reason enum. It's been separated into a distinct error here because the two concepts that were part of EncryptionError seem to be things that could reasonably appear differently in the UI.
(Permalink)

Insufficient Balance

im.telepathy.v1.Error.InsufficientBalance
Added in 0.22.1.

Raised if the user has insufficient Balance1 to place a call or send a message.

The key 'balance-required' MAY be included in CallStateDetails or a delivery report's Message_Part (with the same units and scale as AccountBalance) to indicate how much credit is required to make this call or send this message.

(Permalink)

Invalid Argument

im.telepathy.v1.Error.InvalidArgument
Raised when one of the provided arguments is invalid.
(Permalink)

Invalid Handle

im.telepathy.v1.Error.InvalidHandle
The handle specified is unknown on this channel or connection.
(Permalink)

Media.Codecs Incompatible

im.telepathy.v1.Error.Media.CodecsIncompatible
Added in 0.23.4.
Raised when the local streaming implementation has no codecs in common with the remote side.
Rationale:
This corresponds to Media_Error.
(Permalink)

Media.Streaming Error

im.telepathy.v1.Error.Media.StreamingError
Added in 0.23.4.
Raised when the call's streaming implementation has some kind of internal error.
Rationale:
This corresponds to Internal_Error.
(Permalink)

Media.Unsupported Type

im.telepathy.v1.Error.Media.UnsupportedType
Added in 0.23.4.
The media stream type requested is not supported by either the local or remote side.
Rationale:
This corresponds to Media_Error.
(Permalink)

Network Error

im.telepathy.v1.Error.NetworkError
Raised when there is an error reading from or writing to the network.
(Permalink)

No Answer

im.telepathy.v1.Error.NoAnswer
Used to represent a user being removed from a channel because they did not respond, e.g. to a call.
Rationale:
This corresponds to No_Answer in the Channel_Group_Change_Reason enum.
(Permalink)

Not Available

im.telepathy.v1.Error.NotAvailable
Raised when the requested functionality is temporarily unavailable.
(Permalink)

Not Capable

im.telepathy.v1.Error.NotCapable
Raised when requested functionality is unavailable due to contact not having required capabilities.
(Permalink)

Not Implemented

im.telepathy.v1.Error.NotImplemented
Raised when the requested method, channel, etc is not available on this connection.
(Permalink)

Not Yet

im.telepathy.v1.Error.NotYet
Added in 0.19.12.
Raised when the requested functionality is not yet available, but is likely to become available after some time has passed.
(Permalink)

Not Yours

im.telepathy.v1.Error.NotYours

The requested channel or other resource already exists, and another user interface in this session is responsible for it.

User interfaces SHOULD handle this error unobtrusively, since it indicates that some other user interface is already processing the channel.

(Permalink)

Offline

im.telepathy.v1.Error.Offline
Raised when requested functionality is unavailable because a contact is offline.
Rationale:
This corresponds to Offline in the Channel_Group_Change_Reason enum.
(Permalink)

Permission Denied

im.telepathy.v1.Error.PermissionDenied
The user is not permitted to perform the requested operation.
(Permalink)

Picked Up Elsewhere

im.telepathy.v1.Error.PickedUpElsewhere
Added in 0.21.3.
Raised when a call was terminated as a result of the local user picking up the call on a different resource.
(Permalink)

Registration Exists

im.telepathy.v1.Error.RegistrationExists
Raised during in-band registration if the server indicates that the requested account already exists.
(Permalink)

Rejected

im.telepathy.v1.Error.Rejected
Added in 0.21.2.
Raised when an incoming or outgoing Call1 is rejected by the the receiver.
(Permalink)

Resource Unavailable

im.telepathy.v1.Error.ResourceUnavailable
Raised if a request cannot be satisfied because a process local to the user has insufficient resources. Clients MAY try again later.
Rationale:
For instance, the ChannelDispatcher might raise this error for some or all channel requests if it has detected that there is not enough free memory.
(Permalink)

Service Busy

im.telepathy.v1.Error.ServiceBusy
Raised if a server or some other piece of infrastructure cannot process the request, e.g. due to resource limitations. Clients MAY try again later.
Rationale:
This is not the same error as Busy, which indicates that a user is busy.
(Permalink)

Service Confused

im.telepathy.v1.Error.ServiceConfused
Added in 0.21.5.
Raised when a server or other piece of infrastructure indicates an internal error, or when a message that makes no sense is received from a server or other piece of infrastructure.
Rationale:
For instance, this is appropriate for XMPP's internal-server-error, and is also appropriate if you receive sufficiently inconsistent information from a server that you cannot continue.
(Permalink)

Software Upgrade Required

im.telepathy.v1.Error.SoftwareUpgradeRequired
Added in 0.21.12.

Raised as a ConnectionError when a Connection cannot be established because either the Connection Manager or its support library (e.g. wocky, papyon, sofiasip) requires upgrading to support a newer protocol version.

This error corresponds to the Connection_Status_Reason of Network_Error.

Rationale:
Some protocols transmit a protocol or library version number to the server, which will disconnect them if the version isn't appropriate. This way we can report the error to the user, and if appropriate, the user's client can check for updates.
(Permalink)

Terminated

im.telepathy.v1.Error.Terminated
Raised when a channel is terminated for an unspecified reason.
Rationale:
This corresponds to None in the Channel_Group_Change_Reason enum.
(Permalink)

Would Break Anonymity

im.telepathy.v1.Error.WouldBreakAnonymity
Added in 0.19.7.
Raised if a request cannot be satisfied without violating an earlier request for anonymity, and the earlier request specified that raising an error is preferable to disclosing the user's identity (for instance via Connection.Interface.Anonymity1.AnonymityMandatory or Channel.Interface.Anonymity1.AnonymityMandatory).