Está em conformidade com NSObject
Declarado em OTAudioKit.h

Visão geral

Define um gerenciador de sessão de áudio para uso com serviços de chamadas, como o CallKit. A implementação deste protocolo é opcional. Dispositivos de áudio personalizados podem implementar esses métodos para gerenciar a AVAudioSession. O dispositivo de áudio padrão no SDK fornece uma implementação funcional.

Para obter mais informações, consulte esta documentação.

– enableCallingServicesMode método obrigatório

Habilita a ativação manual da AVAudioSession.

- (void)enableCallingServicesMode

Discussão

Esse método prepara o SDK para integração com serviços de chamadas, como o CallKit, permitindo o roteamento adequado do áudio e o gerenciamento de sessões.

O SDK gerencia a configuração da AVAudioSession, enquanto o aplicativo ou o CallKit é responsável por ativar a sessão.

Observação: Chame essa função logo no início do ciclo de vida do aplicativo, normalmente na inicialização ou antes de iniciar qualquer chamada.

Declarado em

OTAudioKit.h

– preconfigureAudioSessionForCallWithMode: método obrigatório

Configura a sessão de áudio com as configurações adequadas para uma chamada baseada no CallKit.

- (void)preconfigureAudioSessionForCallWithMode:(AVAudioSessionMode _Nullable)mode

Parâmetros

mode O AVAudioSessionMode a ser aplicado durante a configuração. Em geral, AVAudioSessionModeVoiceChat deve ser usado para chamadas VoIP a fim de otimizar o desempenho de áudio. Se houver um modo personalizado disponível para uso com um dispositivo de áudio não padrão, esse modo será utilizado; caso contrário, AVAudioSessionModeVoiceChat será usado como padrão.

Discussão

Este método configura o AVAudioSession com configurações otimizadas para o modo especificado, incluindo categoria de áudio, modo e configuração de roteamento. No entanto, isso não é ativado a sessão. A sessão é configurada com antecedência para que possa ser ativada corretamente quando acionada por uma ação do CallKit.

Observação: Esse método deve ser chamado antes da ativação da sessão, normalmente em resposta ao CallKit’s CXAnswerCallAction ou CXStartCallAction. Isso garante a configuração adequada para posterior ativação pelo sistema. Consulte Fórum de Desenvolvedores da Apple para mais detalhes.

Declarado em

OTAudioKit.h

– audioSessionDidActivate: método obrigatório

Notifica o SDK de que a sessão de áudio foi ativada.

- (void)audioSessionDidActivate:(AVAudioSession *_Nonnull)session

Parâmetros

session O ativo AVAudioSession instância que foi ativada pelo sistema.

Discussão

Esse método deve ser chamado quando o sistema (por exemplo, por meio do CallKit) tiver ativado a sessão de áudio. Ele informa ao SDK que o áudio já está pronto para ser usado e que a sessão está ativa.

Observação: Esse método só é relevante ao usar OTAudioSessionManagerModeCallingServices. Se for chamado em outros modos, como OTAudioSessionManagerModeVideoChat, ele será ignorado, já que o SDK lida com a ativação da sessão de áudio automaticamente.

Declarado em

OTAudioKit.h

– audioSessionDidDeactivate: método obrigatório

Notifica o SDK de que a sessão de áudio foi desativada.

- (void)audioSessionDidDeactivate:(AVAudioSession *_Nonnull)session

Parâmetros

session O AVAudioSession instância que foi desativada.

Discussão

Este método deve ser chamado quando o sistema (por exemplo, o CallKit) desativar a sessão de áudio. Ele sinaliza ao SDK para liberar os recursos de áudio ou atualizar seu estado interno de acordo com isso.

Observação: Esse método só é relevante ao usar OTAudioSessionManagerModeCallingServices. Em modos como OTAudioSessionManagerModeVideoChat, essa chamada será ignorada, já que o SDK gerencia automaticamente o ciclo de vida da sessão de áudio.

Declarado em

OTAudioKit.h