我们在应用程序(VOIP)中使用 agora.io 进行语音通话。两个人之间的通话非常流畅。但是当我拨号联系人 B 时,在连接电话时我无法听到拨号音。我希望在电话接通时能够听到铃声,而来电者会听到铃声。
请问有人能帮助我如何解决这个问题吗?
我们正在构建 Android 应用程序,使用 Java、Kotlin 和 Agora.io SDK。
我们在应用程序(VOIP)中使用 agora.io 进行语音通话。两个人之间的通话非常流畅。但是当我拨号联系人 B 时,在连接电话时我无法听到拨号音。我希望在电话接通时能够听到铃声,而来电者会听到铃声。
请问有人能帮助我如何解决这个问题吗?
我们正在构建 Android 应用程序,使用 Java、Kotlin 和 Agora.io SDK。
目前Agora.io的Android SDK不直接支持呼叫方播放音频。这需要使用Android的Telcom包来实现,更具体地实现Connection、ConnectionService和ToneGenerator类。
每当您开始通话时,您可能希望创建一个新的音调,将下面的<AUDIO STREAM>
替换为您想要在其中播放音调的流,并将<VOLUME LEVEL>
替换为整数(或枚举)以设置音量级别。
ToneGenerator dtmfGenerator = new ToneGenerator(<AUDIO STREAM>,<VOLUME LEVEL>);
dtmfGenerator.startTone(ToneGenerator.TONE_DTMF_0, 1000);
dtmfGenerator.stopTone();
ToneGenerator dtmfGenerator = new ToneGenerator(ToneGenerator.TONE_SUP_RINGTONE,ToneGenerator.MAX_VOLUME);
dtmfGenerator.startTone(ToneGenerator.TONE_DTMF_0, 1000);
dtmfGenerator.stopTone();
如果你正在使用Flutter,flutter_dtmf包可以实现这个功能...
import 'package:flutter_dtmf/dtmf.dart';
...
Dtmf.playTone("1", durationMs: 1000);