Jump to content


  • Content count

  • Joined

  • Last visited

  1. Well whether or not you intended it you found it anyway. So for future reference everyone lightstreamer client version 4.2.8 is the one that works here. Thanks for everything physicsman you where great. If you're ever in Ohio I'll buy you a beer!
  2. I really hate to keep this thread running for you but there seems to be another subscription problem still in this method and unfortunately I'm not as versed in lightstreamer as I'd like to be. I can see the data coming in thru the logger system, but for some reason the client is discarding all the incoming messages. Seems to start with this warning here : |WARN |lightstreamer.stream|Session Thread <1>|onOpen event discarded Which seems to disregard the subscription on the client end and then ignores all the incoming updates which stalls the connection and then keeps reconnecting with the same result. I can't seem to find a thread anywhere with this issue for reference. Full log to follow: Status: INITIALIZING MATRIX Status: LOGIN FOREX.COM: AUTHENTICATED 17.Jan.22 09:55:00,173|INFO |lightstreamer.actions|main|New client created 17.Jan.22 09:55:00,175|INFO |lightstreamer.actions|main|Server Address value changed to https://push.cityindex.com/ 17.Jan.22 09:55:00,175|INFO |lightstreamer.actions|main|Adapter Set value changed to STREAMINGALL 17.Jan.22 09:55:00,178|INFO |lightstreamer.actions|main|Forced Transport value changed to null 17.Jan.22 09:55:00,178|INFO |lightstreamer.actions|main|User value changed to cleggfredrick@gmail.com 17.Jan.22 09:55:00,179|INFO |lightstreamer.actions|main|Password value changed 17.Jan.22 09:55:00,181|INFO |lightstreamer.actions|main|Connect requested Status: LIGHTSTREAMER CLIENT LISTENER STARTED 17.Jan.22 09:55:00,191|DEBUG|lightstreamer.actions|main|Item list assigned: PRICE.401484300 17.Jan.22 09:55:00,192|DEBUG|lightstreamer.actions|main|Field list assigned: MarketId TickDate Bid Offer Price High Low 17.Jan.22 09:55:00,193|DEBUG|lightstreamer.actions|main|Snapshot Required assigned: yes 17.Jan.22 09:55:00,193|DEBUG|lightstreamer.actions|main|Adapter Set assigned: PRICES 17.Jan.22 09:55:00,195|DEBUG|lightstreamer.session|Session Thread <1>|Opening a new session and starting automatic reconnections 17.Jan.22 09:55:00,200|DEBUG|lightstreamer.session|Session Thread <1>|SessionManager state change: OFF -> STREAMING_WS Status: LIGHTSTREAMER SUBSCRIPTION LISTENER STARTED 17.Jan.22 09:55:00,247|DEBUG|lightstreamer.netty.pool|Session Thread <1>|Creating new WS channel pool map 17.Jan.22 09:55:01,105|INFO |lightstreamer.actions|Session Thread <1>|Session ID value changed to null 17.Jan.22 09:55:01,105|INFO |lightstreamer.actions|Session Thread <1>|Server Socket Name value changed to null 17.Jan.22 09:55:01,105|INFO |lightstreamer.actions|Session Thread <1>|Client IP value changed to null 17.Jan.22 09:55:01,106|INFO |lightstreamer.actions|Session Thread <1>|Server Instance Address value changed to null 17.Jan.22 09:55:01,106|INFO |lightstreamer.session|Session Thread <1>|Opening new session 17.Jan.22 09:55:01,256|DEBUG|lightstreamer.netty.pool|Session Thread <1>|Creating new HTTP channel pool map 17.Jan.22 09:55:01,395|DEBUG|lightstreamer.netty.pool|Session Thread <1>|HTTP channel pool map [1] created and initialized 17.Jan.22 09:55:01,396|DEBUG|lightstreamer.netty.pool|Session Thread <1>|New HTTP channel pool created. Remote address: push.cityindex.com/<unresolved>:443 17.Jan.22 09:55:01,572|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: OFF -> CREATING 17.Jan.22 09:55:01,574|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 4000 17.Jan.22 09:55:01,575|DEBUG|lightstreamer.session|Session Thread <1>|WebSocket early opening 17.Jan.22 09:55:01,577|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: NOT_CONNECTED Status: LIGHTSTREAMER CLIENT: CONNECTING 17.Jan.22 09:55:01,589|DEBUG|lightstreamer.netty.pool|Session Thread <1>|New WS channel pool created. Remote address: push.cityindex.com/<unresolved>:443 17.Jan.22 09:55:01,597|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: CONNECTING 17.Jan.22 09:55:01,598|INFO |lightstreamer.subscribe|Session Thread <1>|Adding subscription 1 17.Jan.22 09:55:01,598|DEBUG|lightstreamer.actions|Session Thread <1>|Subscription 1 ready to be sent to server 17.Jan.22 09:55:01,599|DEBUG|lightstreamer.actions|Session Thread <1>|structures reset for subscription 1 17.Jan.22 09:55:01,599|DEBUG|lightstreamer.actions|Session Thread <1>|Subscription 1 is now on hold 17.Jan.22 09:55:01,764|DEBUG|lightstreamer.netty.pool|Netty Thread 1|HTTP channel created [ee653a32] 17.Jan.22 09:55:01,764|DEBUG|lightstreamer.netty.pool|Netty Thread 2|HTTP channel created [df90c136] 17.Jan.22 09:55:02,200|DEBUG|lightstreamer.netty.pool|Netty Thread 1|HTTP channel acquired [ee653a32] 17.Jan.22 09:55:02,200|DEBUG|lightstreamer.netty.pool|Netty Thread 2|HTTP channel acquired [df90c136] 17.Jan.22 09:55:02,246|DEBUG|lightstreamer.netty.pool|Netty Thread 4|ChannelUpgradeFuture state change: CONNECTING -> CONNECTION_OK 17.Jan.22 09:55:02,282|DEBUG|lightstreamer.stream|Netty Thread 3|HTTP transport sending [ee653a32]: /lightstreamer/create_session.txt?LS_protocol=TLCP-2.1.0 LS_polling=true&LS_cause=new.api&LS_polling_millis=0&LS_idle_millis=0&LS_cid=pcYgxptg4pkpW39AM3M4hwLri8L7MDl&LS_adapter_set=STREAMINGALL&LS_user=cleggfredrick@gmail.com&LS_password=93744e78-fbf1-4e71-9ed7-7938ae62bc5e& 17.Jan.22 09:55:02,311|DEBUG|lightstreamer.netty.pool|Netty Thread 2|HTTP channel active [df90c136] 17.Jan.22 09:55:02,311|DEBUG|lightstreamer.netty.pool|Netty Thread 1|HTTP channel active [ee653a32] 17.Jan.22 09:55:02,376|DEBUG|lightstreamer.netty.pool|Netty Thread 2|WS channel handshake [df90c136] 17.Jan.22 09:55:03,103|DEBUG|lightstreamer.stream|Netty Thread 1|Response status: 200 17.Jan.22 09:55:03,111|DEBUG|lightstreamer.stream|Netty Thread 1|HTTP transport receiving [ee653a32]: CONOK,S4bc95cafd11478ebMbecT5503039,50000,0,push-retail-01-101-01.cityindex.com SERVNAME,Lightstreamer HTTP Server CLIENTIP, CONS,unlimited LOOP,0 17.Jan.22 09:55:03,114|DEBUG|lightstreamer.netty.pool|Netty Thread 1|HTTP channel released [ee653a32] 17.Jan.22 09:55:03,115|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: CONOK,S4bc95cafd11478ebMbecT5503039,50000,0,push-retail-01-101-01.cityindex.com 17.Jan.22 09:55:03,116|DEBUG|lightstreamer.session|Session Thread <1>|OK event while CREATING 17.Jan.22 09:55:03,117|DEBUG|lightstreamer.session|Session Thread <1>|Control-Link has changed: https://push.cityindex.com/ -> https://push-retail-01-101-01.cityindex.com/ 17.Jan.22 09:55:03,117|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: DISCONNECTED 17.Jan.22 09:55:03,118|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: NOT_CONNECTED 17.Jan.22 09:55:03,118|DEBUG|lightstreamer.netty.pool|Session Thread <1>|New HTTP channel pool created. Remote address: push-retail-01-101-01.cityindex.com/<unresolved>:443 17.Jan.22 09:55:03,118|DEBUG|lightstreamer.netty.pool|Netty Thread 2|ChannelUpgradeFuture state change: CONNECTION_OK -> UPGRADE_OK 17.Jan.22 09:55:03,118|DEBUG|lightstreamer.netty.pool|Session Thread <1>|New WS channel pool created. Remote address: push-retail-01-101-01.cityindex.com/<unresolved>:443 17.Jan.22 09:55:03,118|DEBUG|lightstreamer.netty.pool|Netty Thread 2|WS channel created [df90c136] 17.Jan.22 09:55:03,119|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: CONNECTING 17.Jan.22 09:55:03,119|DEBUG|lightstreamer.session|Session Thread <1>|Data event while CREATING 17.Jan.22 09:55:03,119|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: CREATING -> CREATED 17.Jan.22 09:55:03,120|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 2000 17.Jan.22 09:55:03,121|DEBUG|lightstreamer.actions|Session Thread <1>|Subscription 1 ready to be sent to server 17.Jan.22 09:55:03,121|INFO |lightstreamer.subscribe|Session Thread <1>|Preparing subscription: 1 17.Jan.22 09:55:03,122|INFO |lightstreamer.protocol|Session Thread <1>|Sending subscription request 17.Jan.22 09:55:03,122|DEBUG|lightstreamer.protocol|Session Thread <1>|subscription parameters: LS_reqId=1&LS_op=add&LS_subId=1&LS_mode=MERGE&LS_group=PRICE.401484300&LS_schema=MarketId TickDate Bid Offer Price High Low&LS_data_adapter=PRICES&LS_snapshot=true&LS_session=S4bc95cafd11478ebMbecT5503039& 17.Jan.22 09:55:03,127|INFO |lightstreamer.subscribe|Session Thread <1>|Start message handler 17.Jan.22 09:55:03,127|DEBUG|lightstreamer.subscribe|Session Thread <1>|Sending queued messages 17.Jan.22 09:55:03,128|INFO |lightstreamer.actions|Session Thread <1>|Session ID value changed to S4bc95cafd11478ebMbecT5503039 17.Jan.22 09:55:03,128|INFO |lightstreamer.actions|Session Thread <1>|Server Instance Address value changed to https://push-retail-01-101-01.cityindex.com/ 17.Jan.22 09:55:03,128|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: SERVNAME,Lightstreamer HTTP Server 17.Jan.22 09:55:03,129|INFO |lightstreamer.actions|Session Thread <1>|Server Socket Name value changed to Lightstreamer HTTP Server 17.Jan.22 09:55:03,129|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: CLIENTIP, 17.Jan.22 09:55:03,129|INFO |lightstreamer.actions|Session Thread <1>|Client IP value changed to 17.Jan.22 09:55:03,129|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: CONS,unlimited 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.session|Session Thread <1>|Data event while CREATED 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: LOOP,0 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.session|Session Thread <1>|Loop event while CREATED 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: CREATED -> FIRST_PAUSE 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.session|Session Thread <1>|Timeout event while FIRST_PAUSE cause=null 17.Jan.22 09:55:03,130|DEBUG|lightstreamer.netty.pool|Netty Thread 6|HTTP channel created [8d95ce21] 17.Jan.22 09:55:03,130|INFO |lightstreamer.session|Session Thread <1>|Binding session 17.Jan.22 09:55:03,132|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: FIRST_PAUSE -> FIRST_BINDING 17.Jan.22 09:55:03,132|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 4000 Status: LIGHTSTREAMER CLIENT: CONNECTED:STREAM-SENSING 17.Jan.22 09:55:03,139|DEBUG|lightstreamer.netty|Netty Thread 2|WebSocket handler added [df90c136] 17.Jan.22 09:55:03,142|WARN |lightstreamer.stream|Session Thread <1>|onOpen event discarded 17.Jan.22 09:55:03,652|DEBUG|lightstreamer.netty.pool|Netty Thread 6|HTTP channel acquired [8d95ce21] 17.Jan.22 09:55:03,718|DEBUG|lightstreamer.netty.pool|Netty Thread 7|ChannelUpgradeFuture state change: CONNECTING -> CONNECTION_OK 17.Jan.22 09:55:03,719|DEBUG|lightstreamer.netty.pool|Netty Thread 6|HTTP channel active [8d95ce21] 17.Jan.22 09:55:03,720|DEBUG|lightstreamer.netty.pool|Netty Thread 6|WS channel handshake [8d95ce21] 17.Jan.22 09:55:04,996|DEBUG|lightstreamer.netty.pool|Netty Thread 6|ChannelUpgradeFuture state change: CONNECTION_OK -> UPGRADE_OK 17.Jan.22 09:55:04,996|DEBUG|lightstreamer.netty.pool|Netty Thread 6|WS channel created [8d95ce21] 17.Jan.22 09:55:04,997|DEBUG|lightstreamer.netty|Netty Thread 6|WebSocket handler added [8d95ce21] 17.Jan.22 09:55:04,997|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: CONNECTED 17.Jan.22 09:55:04,997|DEBUG|lightstreamer.heartbeat|Session Thread <1>|rhb max interval 0 17.Jan.22 09:55:04,997|DEBUG|lightstreamer.heartbeat|Session Thread <1>|rhb current interval 0 17.Jan.22 09:55:04,998|DEBUG|lightstreamer.stream|Session Thread <1>|WS transport sending [8d95ce21]: bind_session LS_cause=loop1&LS_session=S4bc95cafd11478ebMbecT5503039& 17.Jan.22 09:55:05,002|DEBUG|lightstreamer.actions|Session Thread <1>|Subscription 1 sent to server 17.Jan.22 09:55:05,002|DEBUG|lightstreamer.heartbeat|Session Thread <1>|rhb updated 17.Jan.22 09:55:05,002|DEBUG|lightstreamer.stream|Session Thread <1>|WS transport sending [8d95ce21]: control LS_reqId=1&LS_op=add&LS_subId=1&LS_mode=MERGE&LS_group=PRICE.401484300&LS_schema=MarketId TickDate Bid Offer Price High Low&LS_data_adapter=PRICES&LS_snapshot=true& 17.Jan.22 09:55:05,149|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: CONOK,S4bc95cafd11478ebMbecT5503039,50000,5000,push-retail-01-101-01.cityindex.com CLIENTIP, 17.Jan.22 09:55:05,150|DEBUG|lightstreamer.protocol|Session Thread <1>|New message: CONOK,S4bc95cafd11478ebMbecT5503039,50000,5000,push-retail-01-101-01.cityindex.com 17.Jan.22 09:55:05,151|DEBUG|lightstreamer.session|Session Thread <1>|OK event while FIRST_BINDING 17.Jan.22 09:55:05,151|DEBUG|lightstreamer.session|Session Thread <1>|Control-Link has changed: https://push-retail-01-101-01.cityindex.com/ -> https://push-retail-01-101-01.cityindex.com/ 17.Jan.22 09:55:05,151|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: DISCONNECTED 17.Jan.22 09:55:05,151|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: NOT_CONNECTED 17.Jan.22 09:55:05,151|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: CONNECTING 17.Jan.22 09:55:05,152|INFO |lightstreamer.actions|Session Thread <1>|Keepalive Interval value changed to 5000 17.Jan.22 09:55:05,152|DEBUG|lightstreamer.session|Session Thread <1>|Data event while FIRST_BINDING 17.Jan.22 09:55:05,152|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: FIRST_BINDING -> RECEIVING 17.Jan.22 09:55:05,152|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 5000 17.Jan.22 09:55:05,153|DEBUG|lightstreamer.mpn|Session Thread <1>|MpnManager state change on onSessionStart: NoSessionState -> SessionOkState 17.Jan.22 09:55:05,153|DEBUG|lightstreamer.netty.pool|Netty Thread 5|HTTP channel created [19d5f359] Status: LIGHTSTREAMER CLIENT: CONNECTED:WS-STREAMING 17.Jan.22 09:55:05,154|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: CLIENTIP, 17.Jan.22 09:55:05,351|DEBUG|lightstreamer.netty.pool|Netty Thread 5|HTTP channel acquired [19d5f359] 17.Jan.22 09:55:05,351|DEBUG|lightstreamer.netty.pool|Netty Thread 1|ChannelUpgradeFuture state change: CONNECTING -> CONNECTION_OK 17.Jan.22 09:55:05,392|DEBUG|lightstreamer.netty.pool|Netty Thread 5|HTTP channel active [19d5f359] 17.Jan.22 09:55:05,396|DEBUG|lightstreamer.netty.pool|Netty Thread 5|WS channel handshake [19d5f359] 17.Jan.22 09:55:05,410|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: CONS,unlimited 17.Jan.22 09:55:05,411|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: CONS,unlimited 17.Jan.22 09:55:05,411|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: REQOK,1 17.Jan.22 09:55:05,412|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: REQOK,1 17.Jan.22 09:55:05,412|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: SUBOK,1,1,7 CONF,1,unlimited,filtered 17.Jan.22 09:55:05,412|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: SUBOK,1,1,7 17.Jan.22 09:55:05,412|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: CONF,1,unlimited,filtered 17.Jan.22 09:55:05,413|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,401484300|\/Date(1642431304198)\/|0.90354|0.90378|0.90366|0.90594|0.90259 17.Jan.22 09:55:05,413|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,401484300|\/Date(1642431304198)\/|0.90354|0.90378|0.90366|0.90594|0.90259 17.Jan.22 09:55:05,413|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431305248)\/|0.90355||0.90367|| 17.Jan.22 09:55:05,414|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431305248)\/|0.90355||0.90367|| 17.Jan.22 09:55:06,034|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431305967)\/|0.90354|0.90377|0.90366|| 17.Jan.22 09:55:06,034|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431305967)\/|0.90354|0.90377|0.90366|| 17.Jan.22 09:55:06,034|DEBUG|lightstreamer.netty.pool|Netty Thread 5|ChannelUpgradeFuture state change: CONNECTION_OK -> UPGRADE_OK 17.Jan.22 09:55:06,035|DEBUG|lightstreamer.netty.pool|Netty Thread 5|WS channel created [19d5f359] 17.Jan.22 09:55:06,035|DEBUG|lightstreamer.netty|Netty Thread 5|WebSocket handler added [19d5f359] 17.Jan.22 09:55:06,035|DEBUG|lightstreamer.stream|Session Thread <1>|WebSocket transport: CONNECTED 17.Jan.22 09:55:06,252|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431306218)\/|0.90350|0.90374|0.90362|| 17.Jan.22 09:55:06,252|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431306218)\/|0.90350|0.90374|0.90362|| 17.Jan.22 09:55:06,513|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431306470)\/|0.90351|0.90375|0.90363|| 17.Jan.22 09:55:06,514|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431306470)\/|0.90351|0.90375|0.90363|| 17.Jan.22 09:55:06,934|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431306720)\/||0.90374|0.90362|| 17.Jan.22 09:55:06,935|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431306720)\/||0.90374|0.90362|| 17.Jan.22 09:55:08,123|DEBUG|lightstreamer.netty.pool|Netty Thread 1|channel closed [ee653a32] 17.Jan.22 09:55:08,124|DEBUG|lightstreamer.netty.pool|Netty Thread 1|HTTP channel inactive [ee653a32] 17.Jan.22 09:55:08,714|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431308641)\/|0.90352|0.90375|0.90364|| 17.Jan.22 09:55:08,715|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431308641)\/|0.90352|0.90375|0.90364|| 17.Jan.22 09:55:08,970|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431308891)\/|0.90355|0.90378|0.90367|| 17.Jan.22 09:55:08,971|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431308891)\/|0.90355|0.90378|0.90367|| 17.Jan.22 09:55:10,156|DEBUG|lightstreamer.session|Session Thread <1>|Timeout event while RECEIVING cause=null 17.Jan.22 09:55:10,156|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: RECEIVING -> STALLING 17.Jan.22 09:55:10,156|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 2000 17.Jan.22 09:55:11,612|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: SYNC,6 U,1,1,|\/Date(1642431311578)\/|0.90356|0.90379|0.90368|| 17.Jan.22 09:55:11,612|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: SYNC,6 17.Jan.22 09:55:11,613|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431311578)\/|0.90356|0.90379|0.90368|| 17.Jan.22 09:55:12,165|DEBUG|lightstreamer.session|Session Thread <1>|Timeout event while STALLING cause=null 17.Jan.22 09:55:12,165|DEBUG|lightstreamer.session|Session Thread <1>|Session state change: STALLING -> STALLED 17.Jan.22 09:55:12,165|DEBUG|lightstreamer.session|Session Thread <1>|Status timeout in 3000 Status: LIGHTSTREAMER CLIENT: STALLED 17.Jan.22 09:55:12,568|DEBUG|lightstreamer.stream|Netty Thread 6|WS transport receiving [8d95ce21]: U,1,1,|\/Date(1642431312529)\/|0.90355|0.90378|0.90367|| 17.Jan.22 09:55:12,569|WARN |lightstreamer.stream|Session Thread <1>|onMessage event discarded: U,1,1,|\/Date(1642431312529)\/|0.90355|0.90378|0.90367||
  3. Updated to AUD/CAD at random from my marketID list, right at the top of the list lol. Still no subscription, and it still bothers me that the thread disappears almost immediately. I wonder if it is in my listener implementation. Which is doesn't seem to be that either I just tested that as well by initializing those classes outside the addListener() function call with no change... lsSub = new Subscription("MERGE", "PRICE.401484300", fields); So I'm ashamed to admit that there was a missing dependency which I was only able to see after I added this gem ahead of initializing the client LightstreamerClient.setLoggerProvider(new SystemOutLogProvider()); And now I get this server error: |DEBUG|lightstreamer.protocol|Session Thread <1>|New message (1): CONERR,60,License not valid for this Client version In conclusion Lightstreamer client dependencies did not make it apparent that there is a dependency for: <!-- https://mvnrepository.com/artifact/io.netty/netty-all --> <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>4.1.73.Final</version> </dependency> Which was the cause of the original error that couldn't be traced. The license not being valid was due to the fact that after you told me to downgrade my client version to the applicable version for server 7.0.3 which Lightstreamers website told me was client version 4.3.0, when in reality it is 4.2.0. This typo has been pointed out to the administrators of Lightstreamers forum as I had to create a thread there as well to track down these innocuous errors. None of which where the fault of anyone here, so I apologize for spinning your wheels for something that I assumed was a server issue. I was wrong.
  4. Sorry about the size of the picture, there is a size limit for attachments here so I had to shrink it. I've updated the fields as suggested. I've been watching wireshark capture network traffic as well and it seems that there isn't a problem logging in. However I can see in debug that the Lightstreamer client deamon threads are just vanishing. And with this field adjustment there is still no subscription notice as it should be triggering this onSubscription(), the boolean shown below only affects my heuristic class pauses calculation if there isn't any data coming in. I've also update this line lsSub = new Subscription("MERGE", "PRICE.154297", fields); to get rid of the array for testing as suggested. The market id is the one suggested in the online docs. @Override public void onSubscription() { System.out.println("Status: LIGHTSTREAMER SUBSCRIPTION STARTED"); Main.httpHold = false; }
  5. Successfully logged into the webtrader using the same user pass combo I've been using. I grab the session token in this loginPost() which returns the proper sessionToken String. You didn't ask but I anticipate that it will be asked. The marketID is set by the functions getCFDList() which calls httpSessionBasedGet(), all functions included below for review. There is no issue logging in or grabbing the session token, or cataloging the data. public void getCFDList() { // ALL AVAILABLE CFD MARKETS LISTING (BUILDS forexComMarketList) String[] availMarkets = forexComTransport.httpSessionBasedGet(String.join("", forexComTransport.baseURL, "/cfd/markets?marketname=&maxresults=200&usemobileshortname=true")).split(","); // STRIP HEADER AND FOOTER OF JSON OBJECT STRING availMarkets[0] = availMarkets[0].substring(12, availMarkets[0].length()); availMarkets[availMarkets.length - 1] = availMarkets[availMarkets.length - 1].substring(0, (availMarkets[availMarkets.length - 1].length() - 2)); // CATALOG ALL AVAILABLE CFD MARKETS forexComMarketList = new MarketCFD[(availMarkets.length) / 3]; for (int i = 0; i < forexComMarketList.length; i++) { // INITIALIZATION LOOP forexComMarketList = new MarketCFD(); } int j = 0; // MARKET LIST CONSTRUCTION LOOP for (int i = 0; i < availMarkets.length; i++) { forexComMarketList[j].marketID = availMarkets.substring(12, availMarkets.length()); i++; forexComMarketList[j].name = availMarkets.substring(8, availMarkets.length() - 1); i++; forexComMarketList[j].weighting = Integer.valueOf( availMarkets.substring(12, availMarkets.length() - 1)); j++; } } public String httpSessionBasedGet(String pURL) { // GET COMMAND WITH HEADERS HttpResponse<String> getResponse = null; request = HttpRequest.newBuilder() .setHeader("Content-Type", "application/json") .setHeader("Accept", "*/*") .setHeader("UserName", user) .setHeader("Session", sessionToken) .uri(URI.create(pURL)) .build(); try { getResponse = client.send(request, HttpResponse.BodyHandlers.ofString()); // GET RESPONSE FAILURE if (getResponse.headers().map().get(":status").toString().compareTo("[200]") != 0) { getResponse = null; } } catch (IOException | InterruptedException e) { System.out.println("EXCEPTION: " + e.toString()); } return getResponse.body(); } public String loginPost(String pURL, HashMap<String, String> pJSON) { // POST WITH REQUEST BODY HttpResponse<String> postResponse = null; try { // FORM POST COMMAND objectMapper = new ObjectMapper(); requestBody = objectMapper.writeValueAsString(pJSON); request = HttpRequest.newBuilder() .setHeader("Content-Type", "application/json") .setHeader("Accept", "application/json") .uri(URI.create(pURL)) .POST(HttpRequest.BodyPublishers.ofString(requestBody)).build(); // SEND POST COMMAND postResponse = client.send(request, HttpResponse.BodyHandlers.ofString()); // CATALOG RESPONSES sessionToken = null; if (postResponse.headers().map().get(":status").toString().compareTo("[200]") == 0) { sessionToken = postResponse.body().substring(12, 48); } else { // LOGIN FAILURE postResponse = null; } } catch (Exception e) { System.out.println("EXCEPTION: " + e.toString()); } return postResponse.body(); }
  6. I saw this thread a couple days ago while googling this problem, I noticed the version suggestion, which mentions going all the way down to v4.0.0. I tried this as well with no change. I'm back to your suggested v.4.3.0 client and am installing wireshark now to watch the traffic flow. Threads seem to create and then destroy themselves without error so I'm thinking it has something to do with the credentials I'm using, which I believed to be correct as the logon user name is the same as my forex.com account, and the password is supposed to be the session ID token received at from forex.com. I've tried every combination of user name, password, session token, and clientAccountID I could find. Still the same result.
  7. Ok, sorry I've taken so long, the dependency you pointed out is now client version 4.3.0 from the package you suggested and I am still getting the same result.
  8. Thank you for replying so quickly, I'm downloading this version now. I'll let you know how that works for me. I don't recall reading anywhere that your servers where running v7.0.3 just a suggestion but perhaps this should be a bit more apparent in the documentation. And shame on Lightstreamer for not have backwards compatibility built into their API. Thanks again, I'll update this thread after I've integrated the legacy version.
  9. Hello, I recently started an account with your company in order to start an algorithmic trading application. I’ve been testing heuristics against yahoo finance’s data and I believe I’m ready to move forward into actual trading. To be certain of this I need access to your data regarding currency pairs. I’ve managed my way thru all the GET and POST HTTP requests and cataloged all those responses myself, the documentation at https://docs.labs.gaincapital.com leads me to believe that there is an API developed for this already but I can’t seem to find it anywhere. If you can send a link for this that would be greatly appreciated, but not completely necessary. So I’ve managed to logon, retrieve my CFD list and corresponding market data. Which is great. Unfortunately when I attempt to subscribed to your Lightstreamer push service my application just doesn’t connect or subscribe in any way, without any error messages or exceptions thrown. I’ve been reading through Gain Capitals documentation and FAQs, along with those from Lightstreamer themselves. It is my belief that I’ve set up the code for this method correctly and I cannot trace an error of any fashion. I will include the code for this below. If it makes any difference to you I am using Eclipse IDE Version: 2021-12 (4.22.0) Build id: 20211202-1639, overtop Java SE 17 on Windows 10. The project Maven dependencies I am using are: jackson-annotations_2.13.1, jackson-core_2.13.1, jackson-databind_2.13.1, lightstreamer_java-system-out.log_1.02, lightstreamer_ls-log-adapter-java_1.02, lightstreamer_ls-javase-client_4.3.7, slf4j-api_1.7.32, and slf4j-log4j12_1.7.32. I’m currently at a loss as to how to proceed from this point. Any assistance you can provide would be amazing. As a side note, if you had a code example in your online documentation as to the proper way to configure Lightstreamer for use with your service you might not have had to read all of this just now 😊 Thank you for your time and patience. P.S. Problem code: // TODO LIGHTSTREAMER SUBSCRIPTION String[] items = new String[forexComMarketList.length]; String[] fields = { "stock_name", "MarketId", "Bid", "Offer", "Price", "High", "Low" }; for (int i = 0; i < items.length; i++) { // MARKET item LIST BUILD LOOP items = String.join("", "PRICE.", forexComMarketList.marketID); } lsClient = new LightstreamerClient("https://push.cityindex.com/", "STREAMINGALL"); lsClient.connectionDetails.setUser(forexComClientData.personalEmailAddress); lsClient.connectionDetails.setPassword(forexComClientData.sessionToken); lsClient.addListener(new LightstreamerClientListener()); lsClient.connect(); lsSub = new Subscription("MERGE", items, fields); lsSub.addListener(new LightstreamerSubscriptionListener()); lsSub.setRequestedSnapshot("yes"); lsSub.setDataAdapter("PRICES"); lsClient.subscribe(lsSub); Thank you again