The D-Bus errors used in Telepathy all start with
im.telepathy1.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.telepathy1.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.telepathy1.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.telepathy1.Error.AuthenticationFailed
Raised when authentication with a service was unsuccessful.
(Permalink)
Busy
im.telepathy1.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.
(Permalink)
Cancelled
im.telepathy1.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.telepathy1.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.telepathy1.Error.Cert.Expired
Raised if the server provided an expired SSL/TLS certificate.
(Permalink)
Cert.Fingerprint Mismatch
im.telepathy1.Error.Cert.FingerprintMismatch
Raised if the server provided an SSL/TLS certificate that did not have
the expected fingerprint.
(Permalink)
Cert.Hostname Mismatch
im.telepathy1.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.
(Permalink)
Cert.Insecure
im.telepathy1.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.
(Permalink)
Cert.Invalid
im.telepathy1.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.
(Permalink)
Cert.Limit Exceeded
im.telepathy1.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.
(Permalink)
Cert.Not Activated
im.telepathy1.Error.Cert.NotActivated
Raised if the server provided an SSL/TLS certificate that will become
valid at some point in the future.
(Permalink)
Cert.Not Provided
im.telepathy1.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.telepathy1.Error.Cert.Revoked
Raised if the server provided an SSL/TLS certificate that has been
revoked.
(Permalink)
Cert.Self Signed
im.telepathy1.Error.Cert.SelfSigned
Raised if the server provided an SSL/TLS certificate that is self-signed
and untrusted.
(Permalink)
Cert.Untrusted
im.telepathy1.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.
(Permalink)
Channel.Banned
im.telepathy1.Error.Channel.Banned
You are banned from the channel.
(Permalink)
Channel.Full
im.telepathy1.Error.Channel.Full
The channel is full.
(Permalink)
Channel.Invite Only
im.telepathy1.Error.Channel.InviteOnly
The requested channel is invite-only.
(Permalink)
Channel.Kicked
im.telepathy1.Error.Channel.Kicked
Used to represent a user being ejected from a channel by another user,
for instance being kicked from a chatroom.
(Permalink)
Confused
im.telepathy1.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.telepathy1.Error.ConnectionFailed
Raised when a connection can't be established.
(Permalink)
Connection Lost
im.telepathy1.Error.ConnectionLost
Raised when a connection is broken.
(Permalink)
Connection Refused
im.telepathy1.Error.ConnectionRefused
Raised when a connection is refused.
(Permalink)
Connection Replaced
im.telepathy1.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.telepathy1.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.telepathy1.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.telepathy1.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.telepathy1.Error.EncryptionError
Raised if encryption appears to be available, but could not actually be
used (for instance if SSL/TLS negotiation fails).
(Permalink)
Encryption Not Available
im.telepathy1.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.telepathy1.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.telepathy1.Error.InvalidArgument
Raised when one of the provided arguments is invalid.
(Permalink)
Invalid Handle
im.telepathy1.Error.InvalidHandle
The handle specified is unknown on this channel or connection.
(Permalink)
Media.Codecs Incompatible
im.telepathy1.Error.Media.CodecsIncompatible
Added in 0.23.4.
Raised when the local streaming implementation has no codecs in common
with the remote side.
(Permalink)
Media.Streaming Error
im.telepathy1.Error.Media.StreamingError
Added in 0.23.4.
Raised when the call's streaming implementation has some kind of internal
error.
(Permalink)
Media.Unsupported Type
im.telepathy1.Error.Media.UnsupportedType
Added in 0.23.4.
The media stream type requested is not supported by either the
local or remote side.
(Permalink)
Network Error
im.telepathy1.Error.NetworkError
Raised when there is an error reading from or writing to the network.
(Permalink)
No Answer
im.telepathy1.Error.NoAnswer
Used to represent a user being removed from a channel because they did
not respond, e.g. to a StreamedMedia call.
(Permalink)
Not Available
im.telepathy1.Error.NotAvailable
Raised when the requested functionality is temporarily unavailable.
(Permalink)
Not Capable
im.telepathy1.Error.NotCapable
Raised when requested functionality is unavailable due to contact
not having required capabilities.
(Permalink)
Not Implemented
im.telepathy1.Error.NotImplemented
Raised when the requested method, channel, etc is not available on this connection.
(Permalink)
Not Yet
im.telepathy1.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.telepathy1.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.telepathy1.Error.Offline
Raised when requested functionality is unavailable because a contact is
offline.
(Permalink)
Permission Denied
im.telepathy1.Error.PermissionDenied
The user is not permitted to perform the requested operation.
(Permalink)
Picked Up Elsewhere
im.telepathy1.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.telepathy1.Error.RegistrationExists
Raised during in-band registration if the server indicates that the
requested account already exists.
(Permalink)
Rejected
im.telepathy1.Error.Rejected
Added in 0.21.2.
Raised when an incoming or outgoing
Call1 is
rejected by the the receiver.
(Permalink)
Resource Unavailable
im.telepathy1.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.telepathy1.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.telepathy1.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.telepathy1.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.telepathy1.Error.Terminated
Raised when a channel is terminated for an unspecified reason. In
particular, this error SHOULD be used whenever normal termination of
a 1-1 StreamedMedia call by the remote user is represented as a D-Bus
error name.
(Permalink)
Would Break Anonymity
im.telepathy1.Error.WouldBreakAnonymity
Added in 0.19.7.