Methods
CreateAccount | (s: Connection_Manager, s: Protocol, s: Display_Name, a{sv}: Parameters, a{sv}: Properties) | → | o: Account |
Signals
AccountRemoved | (o: Account) | |
AccountUsabilityChanged | (o: Account, b: Usable) |
Properties
Interfaces | as (DBus_Interface_List) | Read only | ||
UsableAccounts | ao | Read only | ||
UnusableAccounts | ao | Read only | ||
SupportedAccountProperties | as (DBus_Qualified_Member_List) | Read only |
Description
The account manager is a central service used to store account details.
The current account manager is defined to be the process that owns the well-known bus name im.telepathy.v1.AccountManager on the session bus. This process must export an /im/telepathy/v1/AccountManager object with the AccountManager interface.
Methods
CreateAccount (s: Connection_Manager, s: Protocol, s: Display_Name, a{sv}: Parameters, a{sv}: Properties) → o: Account
Parameters
- Connection_Manager — s (Connection_Manager_Name)
- Protocol — s (Protocol_Name)
- Display_Name — s
- Parameters — a{sv}
- Properties — a{sv} (Qualified_Property_Value_Map)
Rationale:
The account creation UI may ask the user for a name for the new account. If the author of the UI chooses not to do this, the account creation UI is better able to suggest a default display name because it has protocol-specific knowledge which the account manager does not.
The account manager always knows the complete list of accounts so it can easily tell whether it should append something to the display name to avoid presenting two identically-named accounts to the user.
The values of any other properties to be set immediately on the new Account.
Only the properties mentioned in SupportedAccountProperties are acceptable here. In particular, the DisplayName and Parameters properties are never allowed here, since they are set using the other arguments to this method.
Account manager implementations SHOULD support creating accounts with an empty value for this argument.
Returns
- Account — o
Possible Errors
- Not Implemented
- Invalid Argument
The Connection_Manager is not installed or does not implement the given Protocol.
The Parameters provided were unacceptable: they might omit a Required parameter, include an unsupported parameter, or have a value of the wrong type.
Signals
AccountRemoved (o: Account)
Parameters
- Account — o
Rationale:
AccountUsabilityChanged (o: Account, b: Usable)
Parameters
- Account — o
- Usable — b
Rationale:
Properties
Interfaces — as (DBus_Interface_List)
UsableAccounts — ao
Rationale:
UnusableAccounts — ao
SupportedAccountProperties — as (DBus_Qualified_Member_List)
A list of the fully qualified names of properties that can be set via the Properties argument to CreateAccount when an account is created.
Rationale:
Examples of good properties to support here include Icon, Enabled, Nickname, AutomaticPresence, ConnectAutomatically, RequestedPresence, Supersedes and Avatar.
Examples of properties that would make no sense here include Usable, Connection, ConnectionStatus, ConnectionStatusReason, CurrentPresence and NormalizedName.
This property MUST NOT include include the DisplayName and Parameters properties, which are set using separate arguments.
This property MAY include the names of properties that, after account creation, will be read-only: this indicates that the property can be set at account creation but not changed later.
Rationale:
For example, an account manager might support migration tools that use this to preserve the HasBeenOnline property, even though that property is usually read-only.