JSMPP - EnquireLinkTimer,长时间不活动后会话终止
JSMPP - EnquireLinkTimer, session dies after long time inactivity
JSMPP 库中 SMPPSession
class 中的 enquireLinkTimer
属性 是什么?它每 N 毫秒重新启动一次会话?如果没有,有没有办法以一定的时间间隔自动重启会话?
或者我应该怎么办,如果我遇到以下问题:当很长一段时间没有消息要发送时,我认为会话结束(我得到 java.net.SocketException: Socket closed
)然后消息不发送发送。
enquireLinkTimer
通过向 SMSC 发送保活消息来保持您与 SMSC 的连接。但它不能 rebring/reconnect 断开连接。
也许 SMSC 在一段时间后决定关闭连接,因为您有一段时间没有发送短信。您必须通过丢弃旧会话并创建新会话来手动重新连接。
如果您想立即重新连接,您可以为您的会话设置状态更改侦听器:
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 */
}
}
}