我的情况:我有一个用于VoIP的xspeech,当有关于电话的操作时,消息(数据包)被发送到xspeech接口。从这个接口,这些操作的日志被发送到特定的IP地址,也就是我的IP地址。而且这些日志是从特定端口发送的。
我正在尝试开发一个读取这些日志(而不是文件)的应用程序。我尝试了 TCPListener 和 TCPClient,它们有效,但不适合我的情况。我认为这些日志不是从 TCP 端口发送的。这就是问题所在。
从你的帖子中我怀疑它正在使用 UDP...这意味着你需要使用 UDPClient 类来接收和处理...
取决于他们是否提供您可以使用的 TAPI 提供商:
可能需要构建 SIP 代理(这将能够生成例如“接听事件”):
编辑 - 根据评论其他可能性:
如果您尝试捕获的内容作为系统日志消息发送,请参阅 http://michael.chanceyjr.com/useful-code/syslogd-class-for-sending-and-receiving-syslogd-events/ .
另一种可能性是 SNMP - 请参阅 SNMP#NET。
SIP 默认使用 UDP。
这并不像从一个端点获取数据包、记录它们然后将它们发送到真正的目的地那么简单。如果这样做,您将破坏 NAT 处理等功能。
您需要充当完整的 SIP 代理(有状态)或 B2BUA。
更简单的方法是下载现有的 sip 代理,然后将其记录到文件并读取该文件。
如果您在您的 IP 地址上收到信息,那么我也会认为正在使用 TCP/IP。您是否检查过您的防火墙没有阻止有问题的端口。 我建议您再看看正在使用的协议(可能是 UDP)并使用
Socket
类。