Factory
public class Factory : LinphoneObject
Factory
is a singleton object devoted to the creation of all the object of
Liblinphone that cannot be created by Core
itself.
-
Clean the factory. This function is generally useless as the factory is unique per process, however calling this function at the end avoid getting reports from belle-sip leak detector about memory leaked in get().
Declaration
Swift
public static func clean()
-
Create the
Factory
if that has not been done and return a pointer on it.Declaration
Swift
public static var Instance: Factory { get }
Return Value
A pointer on the
Factory
-
Get the directory where the data resources are located.
Declaration
Swift
public var dataResourcesDir: String { get set }
Return Value
The path to the directory where the data resources are located
-
Get the directory where the image resources are located.
Declaration
Swift
public var imageResourcesDir: String { get set }
Return Value
The path to the directory where the image resources are located
-
Indicates if the storage in database is available.
Declaration
Swift
public var isDatabaseStorageAvailable: Bool { get }
Return Value
if the database storage is available, true otherwise
-
Indicates if IMDN are available.
Declaration
Swift
public var isImdnAvailable: Bool { get }
Return Value
if IDMN are available
-
Sets the log collection path.
Declaration
Swift
public var logCollectionPath: String { get set }
Parameters
path
the path of the logs
-
Get the directory where the mediastreamer2 plugins are located.
Declaration
Swift
public var mspluginsDir: String { get set }
Return Value
The path to the directory where the mediastreamer2 plugins are located, or nil if it has not been set
-
Get the directory where the ring resources are located.
Declaration
Swift
public var ringResourcesDir: String { get set }
Return Value
The path to the directory where the ring resources are located
-
Get the directory where the sound resources are located.
Declaration
Swift
public var soundResourcesDir: String { get set }
Return Value
The path to the directory where the sound resources are located
-
Get the list of standard video definitions supported by Linphone.
Declaration
Swift
public var supportedVideoDefinitions: [VideoDefinition] { get }
Return Value
A list of
VideoDefinition
objects. LinphoneVideoDefinition -
Get the top directory where the resources are located.
Declaration
Swift
public var topResourcesDir: String { get set }
Return Value
The path to the top directory where the resources are located
-
Creates a
AuthInfo
object. The object can be created empty, that is with all arguments set to nil. Username, userid, password, realm and domain can be set later using specific methods. At the end, username and passwd (or ha1) are required.Declaration
Swift
public func createAuthInfo(username: String, userid: String, passwd: String, ha1: String, realm: String, domain: String, algorithm: String) throws -> AuthInfo
Parameters
username
The username that needs to be authenticated
userid
The userid used for authenticating (use nil if you don’t know what it is)
passwd
The password in clear text
ha1
The ha1-encrypted password if password is not given in clear text.
realm
The authentication domain (which can be larger than the sip domain. Unfortunately many SIP servers don’t use this parameter.
domain
The SIP domain for which this authentication information is valid, if it has to be restricted for a single SIP domain.
algorithm
The algorithm for encrypting password.
-
Creates a
AuthInfo
object. The object can be created empty, that is with all arguments set to nil. Username, userid, password, realm and domain can be set later using specific methods. At the end, username and passwd (or ha1) are required.Declaration
Swift
public func createAuthInfo(username: String, userid: String, passwd: String, ha1: String, realm: String, domain: String) throws -> AuthInfo
Parameters
username
The username that needs to be authenticated
userid
The userid used for authenticating (use nil if you don’t know what it is)
passwd
The password in clear text
ha1
The ha1-encrypted password if password is not given in clear text.
realm
The authentication domain (which can be larger than the sip domain. Unfortunately many SIP servers don’t use this parameter.
domain
The SIP domain for which this authentication information is valid, if it has to be restricted for a single SIP domain.
-
Instantiate a
Core
object. TheCore
object is the primary handle for doing all phone actions. It should be unique within your application. TheCore
object is not started automatically, you need to call Core.start() to that effect. The returnedCore
will be in LinphoneGlobalState Ready. Core ressources can be released using Core.stop() which is strongly encouraged on garbage collected languages.See
See also: linphone_core_new_with_config_3
Declaration
Swift
public func createCore(configPath: String, factoryConfigPath: String, systemContext: UnsafeMutableRawPointer?) throws -> Core
Parameters
configPath
factoryConfigPath
A path to a read-only config file that can be used to store hard-coded preferences such as proxy settings or internal preferences. The settings in this factory file always override the ones in the normal config file. It is optional, use nil if unneeded.
systemContext
A pointer to a system object required by the core to operate. Currently it is required to pass an android Context on android, pass nil on other platforms.
-
Instantiate a
Core
object with a given LinphoneConfig. TheCore
object is the primary handle for doing all phone actions. It should be unique within your application. TheCore
object is not started automatically, you need to call Core.start() to that effect. The returnedCore
will be in LinphoneGlobalState Ready. Core ressources can be released using Core.stop() which is strongly encouraged on garbage collected languages.See
See also: linphone_factory_create_core_3
Declaration
-
Create a #LinphoneParticipantDeviceIdentity object.
Declaration
Swift
public func createParticipantDeviceIdentity(address: Address, name: String) throws -> ParticipantDeviceIdentity
Parameters
address
Address
object.name
the name given to the device.
Return Value
A new #LinphoneParticipantDeviceIdentity.
-
Creates an object LinphoneTransports.
Declaration
Swift
public func createTransports() throws -> Transports
Return Value
Transports
object. -
Creates an object
TunnelConfig
.Declaration
Swift
public func createTunnelConfig() throws -> TunnelConfig
Return Value
-
Creates an object LinphoneVideoActivationPolicy.
Declaration
Swift
public func createVideoActivationPolicy() throws -> VideoActivationPolicy
Return Value
VideoActivationPolicy
object. -
Create a
VideoDefinition
from a given width and height.Declaration
Swift
public func createVideoDefinition(width: UInt, height: UInt) throws -> VideoDefinition
Parameters
width
The width of the created video definition
height
The height of the created video definition
Return Value
A new
VideoDefinition
object -
Create a
VideoDefinition
from a given standard definition name.Declaration
Swift
public func createVideoDefinitionFromName(name: String) throws -> VideoDefinition
Parameters
name
The standard definition name of the video definition to create
Return Value
A new
VideoDefinition
object -
Enables or disables log collection.
Declaration
Swift
public func enableLogCollection(state: LogCollectionState)
Parameters
state
the policy for log collection
-
Indicates if the given LinphoneChatRoomBackend is available.
Declaration
Swift
public func isChatroomBackendAvailable(chatroomBackend: ChatRoomBackend) -> Bool
Parameters
chatroomBackend
the LinphoneChatRoomBackend
Return Value
if the chatroom backend is available, true otherwise