Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IE9 and IE10 support #37

Open
undsoft opened this issue Apr 23, 2013 · 18 comments
Open

IE9 and IE10 support #37

undsoft opened this issue Apr 23, 2013 · 18 comments

Comments

@undsoft
Copy link

undsoft commented Apr 23, 2013

Hi,

Kitchen sink demo doesn't work in my IE10, if I choose IE9 or IE10 mode, Nor it works in quircks.
IE8 works thought.

Here's the console error I get:

13:59:07.774 DEBUG - [STROPHE] error: function (stanza) {
        // remove timeout handler if there is one
            if (timeoutHandler) {
                that.deleteTimedHandler(timeoutHandler);
            }

            var iqtype = stanza.getAttribute('type');
        if (iqtype === 'result') {
        if (callback) {
                    callback(stanza);
                }
        } else if (iqtype === 'error') {
        if (errback) {
                    errback(stanza);
                }
        } else {
                throw {
                    name: "StropheError",
                    message: "Got bad IQ type of " + iqtype
                };
            }
    } 
@nstratford
Copy link
Contributor

Hi, can you let me know which Phono version gives you this error?

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

The latest one:
http://s.phono.com/releases/0.6/samples/kitchen-sink/www/index.html

0.5 seems to work fine. At least it loads fine.

@nstratford
Copy link
Contributor

Would it be possible for you to try the current master on GitHub to see if we have already resolved the issue or if it still happens?

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

Yeah, ok. I will do this later.

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

Ok, I've tried a nightly build.
IE 10 works, thought there are some errors in console.
IE 9 Standarts doesn't work, but gives a different error:

 Phono Logger Initialized 
 audioType = auto 
 dialString = sip:[email protected] 
 charString = [email protected] 
 18:22:47.742 DEBUG - ConnectionUrl: http://app.phono.com/http-bind 
 18:22:47.742 DEBUG - adding loadbalancer 
 18:22:47.743 DEBUG - OrigT =app.phono.com path =http-bind 
SCRIPT5: Access is denied.

jquery.phono.js, line 746 character 9

This happens not only my local machine, but on staging server too:
http://bizzocall2dev.aws.af.cm/endpoint/static/id/36 (hit the connect via internet)

@nstratford
Copy link
Contributor

Many thanks - can you let me know if you are using https to serve the host page?

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

Not on staging, but production does use https.

http://bizzocall2dev.aws.af.cm/endpoint/static/id/36 (hit the connect via internet)

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

By the way, despite the fact that kitchen sink on version 0.5 initializes in IE9 and IE 10, when I try to make an actual call I get the same error that's been there since version 0.3:

 18:44:01.827 DEBUG - [STROPHE] error: 
function() {
    [native code]
}
``

@nstratford
Copy link
Contributor

I believe that this may be IE throwing the "SCRIPT5: Access is denied" error if the whole page and connection back to Phono isn't using SSL.

Do you have a way to test SSL with a valid certificate on your staging network?

(Thanks for helping to debug this.)

@undsoft
Copy link
Author

undsoft commented Apr 23, 2013

Here you go:
https://bizzocall2dev.aws.af.cm/sdk/samples/kitchen-sink/www/index.html

Same 'Access denied' error.

@nstratford
Copy link
Contributor

I've made some changes to the master branch. Please can you retest the current master and let me know if that helps?

@undsoft
Copy link
Author

undsoft commented Apr 29, 2013

Well, the good news is that kitchen sink demo works in IE8, IE9 and IE10.
The bad news is that it doesn't work in my application in any IE.
I don't get any sound from phono and the call seem to end on its own.

Here's the log from IE10:
http://pastebin.com/download.php?i=miCafLNM

You can test here:
https://disrupt.ap01.aws.af.cm/endpoint/static/id/36
There should be an echo test when 'Connect via internet' button is pressed.

I load phono code via ajax. Could this be the issue?

@kidlab
Copy link

kidlab commented May 13, 2013

Yes, got this too! Maybe Strophe bug?

@kidlab
Copy link

kidlab commented May 14, 2013

I think I figured out the problem on IE9. It because the phono.audio.swf does not load in IE9! And the root cause of [STROPHE] error is Error #1009, a common error indicates that the embedded flash was not loaded.

@nstratford
Copy link
Contributor

Do you still get this error when using the master branch from github?

@kidlab
Copy link

kidlab commented May 14, 2013

I just check the master branch, there's still some errors in IE. I have to monkey patch the loggyFunction to make it work in IE:

Phono.util = {
//...
loggyFunction: function(objName, obj, funcName) {
        var original = obj[funcName];
        obj[funcName] = function() {
            // Convert arguments to a real array
            var sep = "";
            var args = "";
            for (var i = 0; i < arguments.length; i++) {
                try {
                    args+= (sep + arguments[i]);
                } catch(e) {
                    // To fix bug in IE when concatinating an object to a string.
                    args+= (sep + typeof(arguments[i]));
                }

                sep = ",";
            }

            Phono.log.debug("[INVOKE] " + objName + "." + funcName + "(" + args  + ")");
            return original.apply(obj, arguments);
        }
    }

After that it works fine in IE8 and IE10, but not in IE9 :D
The flash is now loaded correctly, but it raises error in the FlashAudio.share() method, when calling

this.$flash.share(url, autoPlay, codec.id, codec.name, codec.rate, true, peerID, video);

the error is:

TypeError: Error #1009: Cannot access a property or method of a null object reference.

Maybe error in the native flash Audio class?

@kidlab
Copy link

kidlab commented May 15, 2013

I found the problem! It's because the microphone is null in IE9. I don't know why, but I try to fix and make it work in IE9 now.
Here is my patch kidlab@651c24d

@undsoft
Copy link
Author

undsoft commented Jun 6, 2013

Updating to phono.js 1.0 fixed all my issues in IE. IE7 - IE10 now works. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants