# Функции iOS/iPadOS
Далее идёт список функций, которые применяются при разработке на IDE Xcode под iOS/iPadOS.
# initWithViewController
Функция инициализации объекта SDK.
Параметры:
vc
– используемый для инициализации вьюконтроллер (UIViewController
);serverIP
– сервер и порт, к которому нужно присоединиться в виде<server address>:<server port>
(String
);directConnection
(опциональный) – использование прямого соединения (Bool
). По умолчаниюtrue
.
# start
Запуск SDK после инициализации.
# startWithServersList
Запуск SDK после инициализации со списком серверов. Происходит перебор адресов из переданного списка и подключение к первому рабочему серверу.
Параметры:
serversList
– список адресов серверов, разделённых запятой (String
).
# isStarted
Проверка состояния работы экземпляра SDK, результат типа Bool
.
# stop
Остановка работы экземпляра SDK и освобождение ресурсов.
# loginAs
Авторизация под определённым пользователем с указанными параметрами на сервере.
Параметры:
user
– идентификатор пользователя (String
);pwd
– пароль (String
);encryptPassword
–true
, если пароль передается в открытом виде (и SDK требуется его зашифровать);false
, если он уже в зашифрованном виде (Bool
);enableAutoLogin
– нужно ли автоматически авторизовать пользователя этим идентификатором при повторном запуске (Bool
).
Возвращаемое значение (Bool
): true
- запрос на авторизацию отправлен на сервер, false
– авторизацию невозможно произвести.
# logout
Деавторизация (выход из системы) аккаунта без отключения SDK от сервера видеосвязи.
Возвращаемое значение (Bool
): true
- запрос на деавторизацию отправлен на сервер, false
– деавторизацию невозможно произвести.
# callTo
Звонок указанному абоненту.
Параметры:
user
– TrueConf ID вызываемого абонента (String
).
Возвращаемое значение (Bool
): true
- звонок отправлен на сервер, false
– звонок невозможно произвести.
# joinConf
Подключение к групповой конференции.
Параметры:
conf_ID
– идентификатор конференции (String
).pwd
(опциональный) – пароль для входа в конференцию (String
);
Возвращаемое значение (Bool
): true
звонок отправлен на сервер, false
– звонок невозможно произвести.
# hangup
Завершение текущего звонка или конференции.
Параметры:
forAll
(опциональный) – в случае конференции завершать ли её для всех участников при наличии полномочий (Bool
). По умолчаниюtrue
.
Возвращаемое значение (Bool
): true
- звонок завершить возможно, false
– звонок завершить невозможно (обычно по причине неверного состояния).
# acceptCall
Ответ на входящий звонок.
Параметры:
accept
– принять или отклонить вызов (Bool
).
Возвращаемое значение (Bool
): true
- ответ на запрос можно произвести, false
– ответ невозможен.
# parseProtocolLink
Функция получает в виде строки команду, содержащую указания, к какому серверу подключиться, каким аккаунтом авторизоваться и какой звонок осуществить. После чего автоматически выполняет все эти операции.
Параметры:
cmd
– обрабатываемая строка (String
).
# scheduleLoginAs
Получение списка операций, которые должны осуществиться последовательно, в том числе сервер для присоединения, идентификационные данные аккаунта и адресата звонка. Является эквивалентом функции parseProtocolLink
, в которой параметры передаются не в виде строки протокола, а по отдельности. Строковые параметры могут быть пустыми.
Параметры:
login
– идентификатор пользователя (String
);pwd
– пароль (String
);encryptPassword
–true
, если пароль передается в открытом виде (и SDK требуется его зашифровать),false
, если он уже в зашифрованном виде (Bool
);callToUser
– идентификатор вызываемого абонента (String
);autoClose
– нужно ли закрывать сеанс работы с сервером после выполнения звонка или прерывания выполнения (Bool
);loginTemp
– признак временного логина. Означает, что после звонка нужно деавторизовать клиент (Bool
);loginForce
– принудительный логин. Авторизация будет произведена даже в том случае, если клиент уже авторизован на сервере (Bool
);domain
– домен, в котором будет осуществляться автоматический поиск сервера (String
);serversList
– список серверов, к которым необходимо подключиться (String
);isPublic
– параметр, указывающий, чтоcallToUser
является именем конференции, а не именем пользователя. При неверном значении этого параметра звонок пользователю или подключение к конференции не выполнится (Bool
).
# muteMicrophone
Изменение состояния микрофона.
Параметры:
mute
– состояние, в которое требуется перевести микрофон:true
– выключен,false
– включен (Bool
).
# muteCamera
Изменение состояния камеры.
Параметры:
mute
– состояние, в которое требуется перевести камеру:true
– выключена,false
– включена (Bool
).
# muteAudio
Изменение состояния динамика.
Параметры:
mute
– состояние, в которое требуется перевести динамик:true
– выключен,false
– включен (Bool
).
# getMyId
Получение собственного идентификатора.
Возвращаемое значение (String
): идентификатор текущего пользователя в системе. Если пользователь не авторизован на сервере, возвращается nil
.
# getMyName
Получение собственного имени для показа в интерфейсе.
Возвращаемое значение (String
): имя текущего пользователя. Содержит nil
, если пользователь не авторизован на сервере.
# isConnectedToServer
Проверка соединения с сервером.
Возвращаемое значение (Bool
): true
- есть соединение с сервером, false
– соединение отсутствует.
# isLoggedIn
Проверка состояния авторизации.
Возвращаемое значение (Bool
): true
- пользователь авторизован на сервере, false
– пользователь не авторизован.
# isInConference
Проверка нахождения в конференции.
Возвращаемое значение (Bool
): true
- клиент находится в конференции, false
– клиент вне конференции.
# getUserStatus
Получение статуса другого пользователя. Если статус известен, он возвращается немедленно. Если нет – статус запрашивается на сервере, а клиент подписывается на получение уведомлений о его изменении.
Параметры:
user
– TrueConf ID пользователя, статус которого запрашивается (String
).
Возвращаемое значение (UserPresStatus
): текущий статус пользователя.
# isMicrophoneMuted
Проверка состояния микрофона.
Возвращаемое значение (Bool
): true
- отключен, false
– включен.
# isCameraMuted
Проверка состояния камеры.
Возвращаемое значение (Bool
): true
- отключена, false
– включена.
# isAudioMuted
Проверка состояния динамика.
Возвращаемое значение (Bool
): true
- отключен, false
– включен.
# acceptRecord
Ответ на входящий запрос на видеозапись.
Параметры:
accept
– принять или отклонить запрос на видеозапись (Bool
);userID
– TrueConf ID пользователя, которому даётся ответ на запрос (String
).
# sendChatMessage
Отправка текстового сообщения.
Параметры:
toID
– TrueConf ID пользователя, которому отправляется сообщение (рекомендуется использовать полный ID видаuser@server.name
) (String
). Для отправки сообщения в чат текущей групповой конференции этот параметр должен быть пустым.text
– текст сообщения (String
).
Возвращаемое значение (Bool
): true
- сообщение отправлено на сервер, false
– сообщение отправить не удалось из-за отсутствия соединения с сервером.
# setNewExtraButtons
Добавление дополнительных кнопок в панель управления конференцией. Кнопки будут добавлены в список, который открывается по тапу на кнопку троеточия в порядке расположения их в переданном массиве. Смотрите Пример 5.
Параметры:
btns
– массив из объектов типаTCSDKExtraButton
(NSArray
).
# presentViewController
Презентация другого UIViewController поверх окна конференции.
Параметры:
viewControllerToPresent
– окно для презентации (UIViewController
);flag
- анимация процесса презентации (Bool
);popoverFrom
- элемент, поверх которого будет выполняться презентация (Any
). Вы можете указатьnil
для этого параметра - в таком случае при указании стиля презентации UIModalPresentationPopover будет форсированно выполняться UIModalPresentationFullScreen;completion
- блок, который будет выполняться после завершения презентации. Вы можете указатьnil
для этого параметра.
# getUserName
Получение отображаемого имени другого пользователя.
Параметры:
user
– TrueConf ID пользователя, имя которого запрашивается (String
).
Возвращаемое значение (String
): имя пользователя.
# getAudioDeviceList
Получение текущего списка аудио устройств вывода.
Возвращаемое значение (массив TCSDKAudioDevice
): массив из аудио устройств вывода.
# audioDevice
Свойство для получения и установки текущего аудио устройства вывода звука.
Тип: TCSDKAudioDevice
# resources
Свойство для установки бандла с ресурсами. Используется для замены стандартных изображений на кастомные.
Тип: NSBundle
# swapCamera
Смена камеры с передней на заднюю и наоборот.
# xview
Свойство для установки родительского элемента для окна, где расположены другие участники конференции.
Тип: UIView
# xsview
Свойство для установки родительского элемента для окна собственного изображения.
Тип: UIView
# joinWithMic
Свойство для установки состояния микрофона по умолчанию при подключении к конференции. По умолчанию true
.
Тип: Bool
# joinWithVideo
Свойство для установки состояния камеры по умолчанию при подключении к конференции. По умолчанию true
.
Тип: Bool
# hideConfControls
Свойство для установки дефолтного состояния нижней панели с элементами управления конференцией. По умолчанию false
.
Тип: Bool
# windowsDelegate
Свойство для реализации методов протокола TCWindowsDelegate
.
# tcWindowsGetPlaces
Метод протокола TCWindowsDelegate
, который используется для изменения размеров и координат видео окон других участников конференции. Вызывается автоматически, когда SDK необходимо перестроить полученные видео от других участников.
Параметры:
aWindows
– массив видео окон участников конференции типаTCSDKWindowRect
. Для каждого такого объекта можно изменить свойстваCGRect
rect,CGSize
resolution иString
userId;aSize
– координаты окна (CGSize
)
Возвращаемое значение: массив объектов TCSDKWindowRect
.