我必须每分钟发送一条消息,我使用的是telit GE864-GPS调制解调器,我的调制解调器将在偏远的地方使用,所以我的设备会将数据写入GSM调制解调器,如果消息成功提交到目的地,我将得到一个响应为 +CMGS:,如果由于没有可用的网络而没有将 msg 提交到目的地会发生什么。“调制解调器将重试发送该消息”,如何找到调制解调器可用的网络。
问问题
868 次
1 回答
1
AT+CREG 的答案?将告诉您设备当前是否已在网络上注册。如果它在网络上注册,您可以发送 SMS(假设您的合同允许)。AT+CREG 记录在 3GPP TS 27.007 中,可从 www.3gpp.org 的规范页面获得。
快速浏览 3GPP 测试规范表明,如果没有网络,则在尝试发送移动发起的 SMS 时没有测试 MS(GSM 调制解调器)的行为。此处描述了测试:3GPP TS 34.123 第 1 部分,第 16 节。
因此,最快的做法是 (a) 询问制造商或 (b) 自己测试设备的行为。去没有网络的地方,尝试发送短信,等待,回到有网络的地方,看看短信是否被发送,设备在合理的超时后返回什么等。
一旦你知道设备的行为,你就可以设计你的代码,基于在你发送 SMS 之前检查是否有网络,等待 +CMGS 并且可能在你的代码中超时。
于 2012-12-11T09:52:52.183 回答