OpentTok (iOS) Как подписаться на изменения потока hasAudio - PullRequest
0 голосов
/ 03 июля 2018

Мне нужна возможность в iOS SDK TokBox выяснить, есть ли у подписанного потока звук динамически / через событие. (OTStream.hasAudio)

OTSubscriberDelegate предоставляет обратные вызовы для состояния подписанного видео subscriberVideoEnabled/Disabled, но я ничего не могу найти для аудио.

  • JS SDK предоставляет для этого StreamPropertyChangedEvent.
  • Android SDK предоставляет для этого StreamPropertiesListener.
  • iOS кажется единственной платформой, у которой нет правильного решения.

1 Ответ

0 голосов
/ 03 июля 2018

Евангелист разработчиков TokBox здесь.

Для iOS SDK мы не предоставляем делегата для изменений свойства потока, но вы можете реализовать Наблюдение значения ключа (KVO) , чтобы проверить, изменилось ли свойство наблюдаемого потока.

В приведенном ниже примере я добавил наблюдателя для свойства потока hasAudio, и наблюдатель будет печатать старые и новые значения при каждом его изменении.

 func session(_ session: OTSession, streamCreated stream: OTStream) {
   let hasAudioObservation: NSKeyValueObservation = stream.observe(\.hasAudio, options: [.old, .new]) { object, change in
     guard let oldValue = change.oldValue else { return }
     guard let newValue = change.newValue else { return }
     print("Old stream value: \(oldValue)")
     print("New stream value: \(newValue)")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...