Flutter
МТС Exolve Voice SDK для Flutter приложений позволяет быстро реализовать возможность исходящих и входящих звонков в своем Flutter проекте. SDK для Flutter публикуется в Dart and Flutter package repository.
Все возможности SDK показаны в нашем демо приложении.
Установка
Для подключения SDK к проекту нужно добавить зависимость в pubspec.yaml
файл:
dependencies:
exolve_voice_sdk: ^actual_version
Инициализация
Инициализируйте класс CallClient
, который позволит вам работать с остальными функциями SDK:
import 'package:exolve_voice_sdk/call_client/call_client.dart';
import 'package:exolve_voice_sdk/configuration/configuration.dart';
final CallClient callClient = CallClient();
final Configuration configuration = Configuration(
logConfiguration: LogConfiguration(logLevel: LogLevel.debug),
enableSipTrace: true,
enableNotifications: true,
callKitConfiguration: CallKitConfiguration(
includeInRecents: true,
)
)
callClient.initializeCallClient(configuration: configuration);
Регистрация
Зарегистрируйте ваш Exolve SIP ID, указав Юзерней и Пароль из Личного кабинета разработчика:
await callClient.register(
login: your_login,
password: your_password,
);
Уведомления о регистрации аккаунта
Если вы хотите получать уведомления о состоянии регистрации SIP аккаунта, вы можете на них подписаться:
StreamSubscription<RegistrationEvent> registrationSubscription = callClient
.subscribeOnRegistrationEvents()
.listen((event) {
// Handle events here
}
);
Вызовы
Чтобы принимать входящие и исходящие звонки, подпишитесь на уведомления о них:
StreamSubscription<CallEvent> callsSubscription = callClient
.subscribeOnCallEvents()
.listen((event) {
// Handle events here
});
Исходящие вызовы
callClient.makeCall(number: your_number);
Входящие вызовы
Входящие вызовы будут получены, если вы подписаны на уведомления о новых входящих вызовах CallNewEvent.
// Do when event.callEvent is CallNewEvent
call.accept();
Описание классов и методов
Более подробную документацию о классах и методах SDK вы можете найти в документации репозитория пакетов для Dart и Flutter.