Liblinphone  4.5.0
Public Types | Public Member Functions | List of all members
linphone::AccountCreator Class Reference

The object used to configure an account on a server via XML-RPC, see https://wiki.linphone.org/xwiki/wiki/public/view/Lib/Features/Override%20account%20creator%20request/. More...

#include <account_creator.hh>

Inheritance diagram for linphone::AccountCreator:

Public Types

enum  Status {
  Status::RequestOk,
  Status::RequestFailed,
  Status::MissingArguments,
  Status::MissingCallbacks,
  Status::AccountCreated,
  Status::AccountNotCreated,
  Status::AccountExist,
  Status::AccountExistWithAlias,
  Status::AccountNotExist,
  Status::AliasIsAccount,
  Status::AliasExist,
  Status::AliasNotExist,
  Status::AccountActivated,
  Status::AccountAlreadyActivated,
  Status::AccountNotActivated,
  Status::AccountLinked,
  Status::AccountNotLinked,
  Status::ServerError,
  Status::PhoneNumberInvalid,
  Status::WrongActivationCode,
  Status::PhoneNumberOverused,
  Status::AlgoNotSupported,
  Status::UnexpectedError
}
 Enum describing the status of server request, used by the AccountCreator. More...
 
enum  TransportStatus {
  TransportStatus::Ok,
  TransportStatus::Unsupported
}
 Enum describing transport checking, used by the AccountCreator. More...
 
enum  DomainStatus {
  DomainStatus::Ok,
  DomainStatus::Invalid
}
 Enum describing domain checking, used by the AccountCreator. More...
 
enum  ActivationCodeStatus {
  ActivationCodeStatus::Ok,
  ActivationCodeStatus::TooShort,
  ActivationCodeStatus::TooLong,
  ActivationCodeStatus::InvalidCharacters
}
 Enum describing activation code checking, used by the AccountCreator. More...
 
enum  LanguageStatus { LanguageStatus::Ok }
 Enum describing language checking, used by the AccountCreator. More...
 
enum  PasswordStatus {
  PasswordStatus::Ok,
  PasswordStatus::TooShort,
  PasswordStatus::TooLong,
  PasswordStatus::InvalidCharacters,
  PasswordStatus::MissingCharacters
}
 Enum describing password checking, used by the AccountCreator. More...
 
enum  EmailStatus {
  EmailStatus::Ok,
  EmailStatus::Malformed,
  EmailStatus::InvalidCharacters
}
 Enum describing email checking, used by the AccountCreator. More...
 
enum  UsernameStatus {
  UsernameStatus::Ok,
  UsernameStatus::TooShort,
  UsernameStatus::TooLong,
  UsernameStatus::InvalidCharacters,
  UsernameStatus::Invalid
}
 Enum describing username checking, used by the AccountCreator. More...
 
enum  PhoneNumberStatus {
  PhoneNumberStatus::Ok = 1,
  PhoneNumberStatus::TooShort = 2,
  PhoneNumberStatus::TooLong = 4,
  PhoneNumberStatus::InvalidCountryCode = 8,
  PhoneNumberStatus::Invalid = 16
}
 Enum describing phone number checking, used by the AccountCreator. More...
 

Public Member Functions

 AccountCreator (void *ptr, bool takeRef=true)
 
LINPHONECXX_PUBLIC _LinphoneAccountCreator * cPtr ()
 
LINPHONECXX_PUBLIC void addListener (const std::shared_ptr< AccountCreatorListener > &listener)
 
LINPHONECXX_PUBLIC void removeListener (const std::shared_ptr< AccountCreatorListener > &listener)
 
LINPHONECXX_PUBLIC std::string getActivationCode () const
 Get the activation code. More...
 
LINPHONECXX_PUBLIC ActivationCodeStatus setActivationCode (const std::string &activationCode)
 Set the activation code. More...
 
LINPHONECXX_PUBLIC std::string getAlgorithm () const
 Get the algorithm configured in the account creator. More...
 
LINPHONECXX_PUBLIC linphone::AccountCreatorAlgoStatus setAlgorithm (const std::string &algorithm)
 Set the supported algorithm. More...
 
LINPHONECXX_PUBLIC Status setAsDefault (bool setAsDefault)
 Set the set_as_default property. More...
 
LINPHONECXX_PUBLIC std::string getDisplayName () const
 Get the display name. More...
 
LINPHONECXX_PUBLIC UsernameStatus setDisplayName (const std::string &displayName)
 Set the display name. More...
 
LINPHONECXX_PUBLIC std::string getDomain () const
 Get the domain. More...
 
LINPHONECXX_PUBLIC DomainStatus setDomain (const std::string &domain)
 Set the domain. More...
 
LINPHONECXX_PUBLIC std::string getEmail () const
 Get the email. More...
 
LINPHONECXX_PUBLIC EmailStatus setEmail (const std::string &email)
 Set the email. More...
 
LINPHONECXX_PUBLIC std::string getHa1 () const
 Get the ha1. More...
 
LINPHONECXX_PUBLIC PasswordStatus setHa1 (const std::string &ha1)
 Set the ha1. More...
 
LINPHONECXX_PUBLIC std::string getLanguage () const
 Get the language use in email of SMS. More...
 
LINPHONECXX_PUBLIC LanguageStatus setLanguage (const std::string &lang)
 Set the language to use in email or SMS if supported. More...
 
LINPHONECXX_PUBLIC std::string getPassword () const
 Get the password. More...
 
LINPHONECXX_PUBLIC PasswordStatus setPassword (const std::string &password)
 Set the password. More...
 
LINPHONECXX_PUBLIC std::string getPhoneNumber () const
 Get the RFC 3966 normalized phone number. More...
 
LINPHONECXX_PUBLIC void setProxyConfig (const std::shared_ptr< linphone::ProxyConfig > &cfg)
 Assign a proxy config pointer to the LinphoneAccountCreator. More...
 
LINPHONECXX_PUBLIC std::string getRoute () const
 Get the route. More...
 
LINPHONECXX_PUBLIC Status setRoute (const std::string &route)
 Set the route. More...
 
LINPHONECXX_PUBLIC bool getSetAsDefault () const
 Get the set_as_default property. More...
 
LINPHONECXX_PUBLIC linphone::TransportType getTransport () const
 Get Transport. More...
 
LINPHONECXX_PUBLIC TransportStatus setTransport (linphone::TransportType transport)
 Set Transport. More...
 
LINPHONECXX_PUBLIC std::string getUsername () const
 Get the username. More...
 
LINPHONECXX_PUBLIC UsernameStatus setUsername (const std::string &username)
 Set the username. More...
 
LINPHONECXX_PUBLIC Status activateAccount ()
 Send a request to activate an account on server. More...
 
LINPHONECXX_PUBLIC Status activateAlias ()
 Send a request to activate an alias. More...
 
LINPHONECXX_PUBLIC Status createAccount ()
 Send a request to create an account on server. More...
 
LINPHONECXX_PUBLIC std::shared_ptr< linphone::ProxyConfigcreateProxyConfig () const
 Create and configure a proxy config and a authentication info for an account creator. More...
 
LINPHONECXX_PUBLIC Status isAccountActivated ()
 Send a request to know if an account is activated on server. More...
 
LINPHONECXX_PUBLIC Status isAccountExist ()
 Send a request to know the existence of account on server. More...
 
LINPHONECXX_PUBLIC Status isAccountLinked ()
 Send a request to know if an account is linked. More...
 
LINPHONECXX_PUBLIC Status isAliasUsed ()
 Send a request to know if an alias is used. More...
 
LINPHONECXX_PUBLIC Status linkAccount ()
 Send a request to link an account to an alias. More...
 
LINPHONECXX_PUBLIC Status loginLinphoneAccount ()
 Send a request to get the password & algorithm of an account using the confirmation key. More...
 
LINPHONECXX_PUBLIC Status recoverAccount ()
 Send a request to recover an account. More...
 
LINPHONECXX_PUBLIC void reset ()
 Reset the account creator entries like username, password, phone number...
 
LINPHONECXX_PUBLIC unsigned int setPhoneNumber (const std::string &phoneNumber, const std::string &countryCode)
 Set the phone number normalized. More...
 
LINPHONECXX_PUBLIC Status updateAccount ()
 Send a request to update an account. More...
 

Detailed Description

The object used to configure an account on a server via XML-RPC, see https://wiki.linphone.org/xwiki/wiki/public/view/Lib/Features/Override%20account%20creator%20request/.

Member Enumeration Documentation

◆ ActivationCodeStatus

Enum describing activation code checking, used by the AccountCreator.

Enumerator
Ok 

Activation code ok.

TooShort 

Activation code too short.

TooLong 

Activation code too long.

InvalidCharacters 

Contain invalid characters.

◆ DomainStatus

Enum describing domain checking, used by the AccountCreator.

Enumerator
Ok 

Domain ok.

Invalid 

Domain invalid.

◆ EmailStatus

Enum describing email checking, used by the AccountCreator.

Enumerator
Ok 

Email ok.

Malformed 

Email malformed.

InvalidCharacters 

Contain invalid characters.

◆ LanguageStatus

Enum describing language checking, used by the AccountCreator.

Enumerator
Ok 

Language ok.

◆ PasswordStatus

Enum describing password checking, used by the AccountCreator.

Enumerator
Ok 

Password ok.

TooShort 

Password too short.

TooLong 

Password too long.

InvalidCharacters 

Contain invalid characters.

MissingCharacters 

Missing specific characters.

◆ PhoneNumberStatus

Enum describing phone number checking, used by the AccountCreator.

Enumerator
Ok 

Phone number ok.

TooShort 

Phone number too short.

TooLong 

Phone number too long.

InvalidCountryCode 

Country code invalid.

Invalid 

Phone number invalid.

◆ Status

Enum describing the status of server request, used by the AccountCreator.

Enumerator
RequestOk 

Request status.

RequestFailed 

Request failed.

MissingArguments 

Request failed due to missing argument(s)

MissingCallbacks 

Request failed due to missing callback(s)

AccountCreated 

Account status.

AccountNotCreated 

Account not created.

AccountExist 

Account exist.

AccountExistWithAlias 

Account exist with alias.

AccountNotExist 

Account not exist.

AliasIsAccount 

Account was created with Alias.

AliasExist 

Alias exist.

AliasNotExist 

Alias not exist.

AccountActivated 

Account activated.

AccountAlreadyActivated 

Account already activated.

AccountNotActivated 

Account not activated.

AccountLinked 

Account linked.

AccountNotLinked 

Account not linked.

ServerError 

Server.

PhoneNumberInvalid 

Error cannot send SMS.

WrongActivationCode 

Error key doesn't match.

PhoneNumberOverused 

Error too many SMS sent.

AlgoNotSupported 

Error algo isn't MD5 or SHA-256.

UnexpectedError 

Generic error.

◆ TransportStatus

Enum describing transport checking, used by the AccountCreator.

Enumerator
Ok 

Transport ok.

Unsupported 

Transport invalid.

◆ UsernameStatus

Enum describing username checking, used by the AccountCreator.

Enumerator
Ok 

Username ok.

TooShort 

Username too short.

TooLong 

Username too long.

InvalidCharacters 

Contain invalid characters.

Invalid 

Invalid username.

Member Function Documentation

◆ activateAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::activateAccount ( )

Send a request to activate an account on server.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ activateAlias()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::activateAlias ( )

Send a request to activate an alias.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ createAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::createAccount ( )

Send a request to create an account on server.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ createProxyConfig()

LINPHONECXX_PUBLIC std::shared_ptr<linphone::ProxyConfig> linphone::AccountCreator::createProxyConfig ( ) const

Create and configure a proxy config and a authentication info for an account creator.

Returns
A ProxyConfig object if successful, nullptr otherwise.

◆ getActivationCode()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getActivationCode ( ) const

Get the activation code.

Returns
The activation code of the AccountCreator.

◆ getAlgorithm()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getAlgorithm ( ) const

Get the algorithm configured in the account creator.

Returns
The algorithm of the AccountCreator.

◆ getDisplayName()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getDisplayName ( ) const

Get the display name.

Returns
The display name of the AccountCreator.

◆ getDomain()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getDomain ( ) const

Get the domain.

Returns
The domain of the AccountCreator.

◆ getEmail()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getEmail ( ) const

Get the email.

Returns
The email of the AccountCreator.

◆ getHa1()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getHa1 ( ) const

Get the ha1.

Returns
The ha1 of the AccountCreator.

◆ getLanguage()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getLanguage ( ) const

Get the language use in email of SMS.

Returns
The language of the AccountCreator.

◆ getPassword()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getPassword ( ) const

Get the password.

Returns
The password of the AccountCreator.

◆ getPhoneNumber()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getPhoneNumber ( ) const

Get the RFC 3966 normalized phone number.

Returns
The phone number of the AccountCreator.

◆ getRoute()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getRoute ( ) const

Get the route.

Returns
The route of the AccountCreator.

◆ getSetAsDefault()

LINPHONECXX_PUBLIC bool linphone::AccountCreator::getSetAsDefault ( ) const

Get the set_as_default property.

Returns
true if account will be set as default, false otherwise.

◆ getTransport()

LINPHONECXX_PUBLIC linphone::TransportType linphone::AccountCreator::getTransport ( ) const

Get Transport.

Returns
The TransportType of the creator.

◆ getUsername()

LINPHONECXX_PUBLIC std::string linphone::AccountCreator::getUsername ( ) const

Get the username.

Returns
The username of the AccountCreator.

◆ isAccountActivated()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::isAccountActivated ( )

Send a request to know if an account is activated on server.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ isAccountExist()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::isAccountExist ( )

Send a request to know the existence of account on server.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ isAccountLinked()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::isAccountLinked ( )

Send a request to know if an account is linked.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ isAliasUsed()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::isAliasUsed ( )

Send a request to know if an alias is used.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ linkAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::linkAccount ( )

Send a request to link an account to an alias.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ loginLinphoneAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::loginLinphoneAccount ( )

Send a request to get the password & algorithm of an account using the confirmation key.

Returns
Status::RequestOk if everything is OK, or a specific error otherwise.

◆ recoverAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::recoverAccount ( )

Send a request to recover an account.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

◆ setActivationCode()

LINPHONECXX_PUBLIC ActivationCodeStatus linphone::AccountCreator::setActivationCode ( const std::string &  activationCode)

Set the activation code.

Parameters
activationCodeThe activation code to set
Returns
ActivationCodeStatus::Ok if everything is OK, or a specific error otherwise.

◆ setAlgorithm()

LINPHONECXX_PUBLIC linphone::AccountCreatorAlgoStatus linphone::AccountCreator::setAlgorithm ( const std::string &  algorithm)

Set the supported algorithm.

Parameters
algorithmThe algorithm to use
Returns
LinphoneAccountCreatorAlgoStatusOk if everything is OK, or a specific error otherwise.

◆ setAsDefault()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::setAsDefault ( bool  setAsDefault)

Set the set_as_default property.

Parameters
setAsDefaulttrue for the created proxy config to be set as default in Core, false otherwise
Returns
Status::RequestOk if everything is OK, or a specific error otherwise.

◆ setDisplayName()

LINPHONECXX_PUBLIC UsernameStatus linphone::AccountCreator::setDisplayName ( const std::string &  displayName)

Set the display name.

Parameters
displayNameThe display name to set
Returns
UsernameStatus::Ok if everything is OK, or a specific error otherwise.

◆ setDomain()

LINPHONECXX_PUBLIC DomainStatus linphone::AccountCreator::setDomain ( const std::string &  domain)

Set the domain.

Parameters
domainThe domain to set
Returns
DomainStatus::Ok if everything is OK, or a specific error otherwise.

◆ setEmail()

LINPHONECXX_PUBLIC EmailStatus linphone::AccountCreator::setEmail ( const std::string &  email)

Set the email.

Parameters
emailThe email to set
Returns
EmailStatus::Ok if everything is OK, or a specific error otherwise.

◆ setHa1()

LINPHONECXX_PUBLIC PasswordStatus linphone::AccountCreator::setHa1 ( const std::string &  ha1)

Set the ha1.

Parameters
ha1The ha1 to set
Returns
PasswordStatus::Ok if everything is OK, or a specific error otherwise.

◆ setLanguage()

LINPHONECXX_PUBLIC LanguageStatus linphone::AccountCreator::setLanguage ( const std::string &  lang)

Set the language to use in email or SMS if supported.

Parameters
langThe language to use
Returns
LanguageStatus::Ok if everything is OK, or a specific error otherwise.

◆ setPassword()

LINPHONECXX_PUBLIC PasswordStatus linphone::AccountCreator::setPassword ( const std::string &  password)

Set the password.

Parameters
passwordThe password to set
Returns
PasswordStatus::Ok if everything is OK, or specific(s) error(s) otherwise.

◆ setPhoneNumber()

LINPHONECXX_PUBLIC unsigned int linphone::AccountCreator::setPhoneNumber ( const std::string &  phoneNumber,
const std::string &  countryCode 
)

Set the phone number normalized.

Parameters
countryCodeCountry code to associate phone number with
Returns
PhoneNumberStatus::Ok if everything is OK, or specific(s) error(s) otherwise.

◆ setProxyConfig()

LINPHONECXX_PUBLIC void linphone::AccountCreator::setProxyConfig ( const std::shared_ptr< linphone::ProxyConfig > &  cfg)

Assign a proxy config pointer to the LinphoneAccountCreator.

Parameters
cfgThe LinphoneProxyConfig to associate with the LinphoneAccountCreator.

◆ setRoute()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::setRoute ( const std::string &  route)

Set the route.

Parameters
routeThe route to set
Returns
Status::RequestOk if everything is OK, or a specific error otherwise.

◆ setTransport()

LINPHONECXX_PUBLIC TransportStatus linphone::AccountCreator::setTransport ( linphone::TransportType  transport)

Set Transport.

Parameters
transportThe TransportType to set
Returns
TransportStatus::Ok if everything is OK, or a specific error otherwise.

◆ setUsername()

LINPHONECXX_PUBLIC UsernameStatus linphone::AccountCreator::setUsername ( const std::string &  username)

Set the username.

Parameters
usernameThe username to set
Returns
UsernameStatus::Ok if everything is OK, or a specific error otherwise.

◆ updateAccount()

LINPHONECXX_PUBLIC Status linphone::AccountCreator::updateAccount ( )

Send a request to update an account.

Returns
Status::RequestOk if the request has been sent, Status::RequestFailed otherwise

The documentation for this class was generated from the following file: