小编Rak*_*ndo的帖子

Java (J2SE) DTMF 音调检测

我正在尝试执行以下操作

  • 我正在使用我的 Java 应用程序打电话给另一个人(已经完成并且工作正常)。

  • 然后我正在播放录音,例如“请按 1 继续用英语”(已经完成并且工作正常)。

  • 现在我想检测那个人按 1,根据我在谷歌搜索中的研究,我知道这可以使用 DTMF。如果这个人按 1,我想根据我的情况执行操作。

我的问题是如何在 java (J2SE) 中使用 DTMF 检测该数字。我正在使用中兴 USB 加密狗拨打电话。拨号、挂断等控制是通过AT指令+Java IO实现的。

这是我的示例代码,但它没有给出正确的拨号号码及其每次循环。

public class zxczczz extends javax.swing.JFrame {

/**
 * Creates new form zxczczz
 */
public zxczczz() {
    initComponents();
}
float[] lowFreq = new float[]{697.0F, 770.0F, 852.0F, 941.0F};
float[] highFreq = new float[]{1209.0F, 1336.0F, 1477.0F, 1633.0F};
float[] dtmfTones = new float[]{697.0F, 770.0F, 852.0F, 941.0F, 1209.0F, 1336.0F, 1477.0F, 1633.0F};
int dtmfBoard[][] = {{1, 2, 3, 12}, {4, 5, 6, 13}, {7, 8, …
Run Code Online (Sandbox Code Playgroud)

java dtmf at-command java-io

5
推荐指数
1
解决办法
2663
查看次数

标签 统计

at-command ×1

dtmf ×1

java ×1

java-io ×1