Ticket #136 (assigned defect)

Opened 6 months ago

Last modified 4 months ago

SSE Transport no longer working in Opera 10.5

Reported by: bug Owned by: desmaj
Priority: major Milestone: Orbited 0.7.11
Component: Orbited JavaScript Version: Orbited 0.7.10
Keywords: Opera 10.5 SSE Cc:

Description

In Opera 10.5, a TCPClient client can no longer receive messages while using Oribited 0.7.10. After testing, it seems that only the very first Orbited.CometTransports?.SSE.receivePayload() is ever called and the connection times out afterwards. This is the same as on opera's webchat application they give as a demo of SSE - which works on 10.1 and down:

http://oxzone.opera.com:8088/

The LongPoll? transport works fine in 10.5, though, and changing Oribted.js to have Opera 10.5 use that transport instead fixes the issue. This is what I did to detect 10.5, and have that and up use LongPoll? instead.

I changed line 75 from:

        Orbited.util.browser = 'opera';

to:

        if (opera.version() >= 10.5) Orbited.util.browser = 'opera10_5';
        else Orbited.util.browser = 'opera';

Added on Line 1698:

Orbited.CometTransports.LongPoll.opera10_5 = 1.0;

And changed line 1173 from:

    if (Orbited.util.browser == "opera") {

to:

    if (Orbited.util.browser == "opera" || Orbited.util.browser == "opera10_5") {

I'm not sure if they changed the implementation in the most recent version. If so there isn't any documentation that I could find quickly. The server-event object still seems to work, just partially.

Change History

Changed 4 months ago by desmaj

  • owner set to desmaj
  • status changed from new to assigned
  • version changed from Orbited 0.7.0 to Orbited 0.7.10
  • milestone changed from Orbited 0.7 to Orbited 0.7.11
Note: See TracTickets for help on using tickets.