【问题标题】:At commands to receive phone key press through voice call通过语音呼叫接收电话按键的命令
【发布时间】:2021-11-05 03:08:28
【问题描述】:

我有一个 SIERRA Wireless FXT009 EDGE AirLink 可编程调制解调器。我使用 AT Commads 拨打电话号码,一切正常。我的问题是如何检测电话上的用户是否按下按钮以及如何接收按下的按钮?甚至有可能做到这一点吗?

我正在使用 C# 并通过串行端口与调制解调器通信。

设置

serialPort = new SerialPort();
serialPort.PortName = [Port];
serialPort.BaudRate = 9600;
serialPort.DataBits = 8;
serialPort.StopBits = StopBits.One;
serialPort.Parity = Parity.None;
serialPort.ReadTimeout = 300;
serialPort.WriteTimeout = 300;
serialPort.Encoding = Encoding.GetEncoding("iso-8859-1");

打开连接

serialPort.Open();
serialPort.DtrEnable = true;
serialPort.RtsEnable = true;

拨号

serialPort.Write("ATD[phoneNumber];\r");

定时器(500 毫秒)

string result = connection.serialPort.ReadExisting();
if (!string.IsNullOrEmpty(result))
{
    logTextBox.AppendText(result + "\n");
}

【问题讨论】:

    标签: at-command


    【解决方案1】:

    我在固件 7.52 的 AT 命令接口指南文档中找到了我的问题的解决方案。有一个 AT 命令 (+WDDM) 可以打开/关闭 DTMF 检测模式。 我打开了它,现在我在打电话时收到了电话上按下的键。在两部带有 0-9、*、# 键的手机上进行了测试。

    【讨论】:

    • 使用哪个 AT 命令来检测按键,您能详细说明一下还是指向我的文章
    • @codefreak - AT 命令是AT+WDDM。它看起来相对较新,并在 2013 年出现在一些 USRobotic 调制解调器中。我在科胜讯调制解调器中找不到它。我还不知道它是如何工作的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-09
    • 2018-04-21
    • 2017-04-04
    相关资源
    最近更新 更多