我有一个内部SMPP服务器,并且正在使用EASYSMPP from sourceforge.net发送SMS。
这里的问题是我无法获得确切的状态
1)请求是否甚至已发送到服务器,
2)如果是,则消息的状态是什么,表示是否传递。
我知道他们有一些称为返回消息ID的东西,但这对我来说是非常零星的。
从日志中得到的消息很少:
1)不允许发送或接收数据的请求,因为未连接套接字,并且(当使用sendto调用在数据报套接字上发送时)未提供地址
2)在getsockopt或setsockopt调用中指定了未知,无效或不受支持的选项或级别
3)建立的连接被主机中的软件中止了
4)有时候我甚至陷入sentEvent.WaitOne(waitForResponse, true)
任何帮助都将受到高度赞赏。
最佳答案
花费大量时间进行调试和阅读文档,我发现在EASYSMPP中,有一个字节类型的变量“askforReciept”,可以帮助您读取传递的消息ID。
此外,与连接问题有关,SMPP并不意味着过于频繁地关闭和重新打开连接。在我的情况下,每次完成发送一批错误的SMS并导致连接问题时,我都会关闭连接。
要检查连接状态,可以使用查询链接。
感谢那些花费时间为我提供解决方案的人。
关于c# - 如何获取SMPP消息已发送确认,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30499909/