我使用at-command来获取来电显示,但只是写好的响铃

时间:2014-02-02 21:47:03

标签: c# at-command

当有人打电话时,我使用以下方法检测CallerID

private void Form1_Load(object sender, EventArgs e)
{
    serialPort1.PortName = "COM3";
    serialPort1.RtsEnable = true;
    serialPort1.BaudRate = 9600;
    serialPort1.DataBits = 8;
    serialPort1.RtsEnable = true;
    serialPort1.Open();
    serialPort1.WriteLine("AT+VCID=1" + System.Environment.NewLine);
}

private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
    textBox1.Text += serialPort1.ReadLine();
}

我除外:

RING               //On 1st Ring
DATE = xxxxx       //On 2nd Ring
TIME = xxxx
NMBR = xxxxxxxxx

RING               //On 3rd Ring    
RING               //On 4th Ring

但我只是:

OK
RING
RING
RING

注:

行支持CallerID

我猜调制解调器也支持CallerID,因为我看到每个传入铃声的单词RING

确认:我有来电显示设备,我查了一下;我确信我有来电显示服务。

4 个答案:

答案 0 :(得分:3)

我相信您需要在设备上设置主叫线演示。只需发送命令:

AT+CLIP=1

然后您应该看到,当调用该号码时,将显示以下内容:

+CLIP 1234567890

答案 1 :(得分:0)

最常见的CALLER ID命令是“AT#CID = 1”

答案 2 :(得分:0)

找到命令

AT#CID=1
AT#CC1
AT+VCID=1
AT%CCID=1
AT*ID1

没有人因为...换行(facepalm)而工作。所以用\ r \ n或\ n

尝试一下

答案 3 :(得分:-1)

我遇到了类似的问题。我换了不同的USB调制解调器。它工作得很好。