JSMPP库中的enquireLinkTimer类中的SMPPSession属性是什么?它每隔N毫秒就恢复一次?如果没有,是否有一种方法可以使用某个时间间隔自动重命名会话?
或者,如果我面临以下问题,我应该怎么办:当很长一段时间没有消息可发送时,我认为会话死亡(我得到了java.net.SocketException: Socket closed ),然后消息就不发送了。
发布于 2015-05-18 04:41:31
enquireLinkTimer通过向SMSC发送“保持活动”消息来保持与SMSC的连接。但是它不能重新/重新连接一个断开的连接。
也许SMSC决定在一段时间后关闭连接,因为您有一段时间没有发送SMS。您必须通过放弃旧会话并创建一个新会话来手动重新连接。
如果要立即重新连接,可以将状态更改侦听器设置为会话:
yourSession.addSessionStateListener(new SessionStateListener() {
@Override
public void onStateChange(SessionState newState, SessionState oldState,
Object source)
{
if (newState == SessionState.CLOSED) {
/* throw away old session and create a new one */
}
}
}https://stackoverflow.com/questions/29483928
复制相似问题