如何从电话线检测来电显示?

Jal*_*lal 13 c# serial-port

是否可以直接从调制解调器或电话线读取字节而不丢失任何信息?如果SerialPort在响铃后使用,ReceiveData事件没有任何反应.

我想直接从该行读取来电显示信息.我的调制解调器不支持来电显示.

use*_*515 16

检测呼叫者ID的正确方法是使用TAPI API.

您可以在此处找到C#TAPI库(称为ITAPI3). http://www.julmar.com/tapi/

查看2006年4月4日的博客文章,了解有关在64位Windows上与其相关联的构建程序的一些注意事项.

这里是示例代码:

TTAPI tapi = new TTAPI();

tapi.TE_CALLINFOCHANGE += (sender, e) =>
{
    if (e.Cause == CALLINFOCHANGE_CAUSE.CIC_CALLERID)
    {
        Console.WriteLine(e.Call.get_CallInfo(CALLINFO_STRING.CIS_CALLERIDNUMBER));
        Console.WriteLine(e.Call.get_CallInfo(CALLINFO_STRING.CIS_CALLERIDNAME));
    }
}

tapi.Initialize();

// ...
// Keep the TAPI object in memory so it can listen for events
// ...

tapi.ShutDown();
Run Code Online (Sandbox Code Playgroud)