This page提出以下声明:
无论对方是否与其连接,都存在会话。创建会话后,您就可以开始向其发送消息。如果没有人登录,则在与对方建立连接时将发送消息。
我一直在通过以下步骤测试此行为:
Session.sendToTarget()
据我所见,邮件永远不会发送。
通过代码调试,我在收到toApp()
回调后不久就点击了this line。据我所知,该消息仅在isLoggedOn()
为真时发送。如果不是真的(如此处),则不采取任何替代措施。
我对上面引用的文档的期望是,QuickFix / J应该以某种方式在内部排队消息,以便在会话恢复时,它将被发送。两个问题:
以下是我的连接参数供参考:
[DEFAULT]
ConnectionType=initiator
LogonTimeout=60
ReconnectInterval=30
FileStorePath= ...
HeartBtInt=30
StartTime=22:15:00
EndTime=21:55:00
UseDataDictionary=Y
[SESSION]
BeginString=FIX.4.4
SenderCompID= ...
TargetCompID= ...
PersistMessages=Y
ResetOnLogon=Y
SessionQualifier= ...
SocketConnectHost= ...
SocketConnectPort= ...
Username= ...
Password= ...
DataDictionary=config/dict/fix44.xml
非常感谢提前
答案 0 :(得分:1)
好的,所以我有消息排队逻辑工作。问题是ResetOnLogon=Y
,大概搞乱了序列号的增量。