initialize method
Future<int>
initialize({
- required TransportType transport,
- required String localIP,
- required int localSIPPort,
- required PortsipLogLevel logLevel,
- required String logFilePath,
- required int maxCallLines,
- required String sipAgent,
- required int audioDeviceLayer,
- required int videoDeviceLayer,
- required String tlsCertificatesRootPath,
- required String tlsCipherList,
- required bool verifyTLSCertificate,
- required String dnsServers,
- int ptime = 20,
- int maxPtime = 60,
override
Initializes the PortSIP SDK with the provided configuration.
Invokes the native 'initialize' method via MethodChannel.
Returns 0 on success, -1 or error code on failure.
Implementation
@override
Future<int> initialize({
required TransportType transport,
required String localIP,
required int localSIPPort,
required PortsipLogLevel logLevel,
required String logFilePath,
required int maxCallLines,
required String sipAgent,
required int audioDeviceLayer,
required int videoDeviceLayer,
required String tlsCertificatesRootPath,
required String tlsCipherList,
required bool verifyTLSCertificate,
required String dnsServers,
int ptime = 20,
int maxPtime = 60,
}) async {
final args = {
'transport': transport.value,
'localIP': localIP,
'localSIPPort': localSIPPort,
'logLevel': logLevel.value,
'logFilePath': logFilePath,
'maxCallLines': maxCallLines,
'sipAgent': sipAgent,
'audioDeviceLayer': audioDeviceLayer,
'videoDeviceLayer': videoDeviceLayer,
'tlsCertificatesRootPath': tlsCertificatesRootPath,
'tlsCipherList': tlsCipherList,
'verifyTLSCertificate': verifyTLSCertificate,
'dnsServers': dnsServers,
'ptime': ptime,
'maxPtime': maxPtime,
};
_logCall('initialize', args);
try {
final result = await methodChannel.invokeMethod<int>('initialize', args);
_logResponse('initialize', result);
return result ?? -1;
} on PlatformException catch (e) {
_logError('initialize', e);
return -1;
}
}