Got some issues while Integrating the Temasys WebRTC Plugin using Kurento Media Server 6

1,321 views
Skip to first unread message

Dnyaneshwar

unread,
Aug 5, 2015, 6:05:54 AM8/5/15
to kurento
Hello,

I installed Temasys WebRTC plugin on Internet Explr 11. and Safari 8 using KMS version 5.1  and also made some changes in "Kurento-utils.js" file . It was worked fine on IE 11 using KMS 5.

Today, I installed the current version of Temasys plugin on IE 11 and added the code of attachMediaStream function in "Kurento-utils.js" fil . Tested it on KMS6. It is not working properly on IE 11. We found following some errors while testing in IE 11. 


TypeError: Object doesn't support this property or method
   at WebRtcPeer (http://192.168.9.17:8080/Megameeting/resources/js/lib/kurento-utils.js:137:5)
   at WebRtcPeerSendonly (http://192.168.9.17:8080/Megameeting/resources/js/lib/kurento-utils.js:435:5)
   at $scope.master (http://192.168.9.17:8080/Megameeting/resources/js/controllers/OneToManyWebController.js:105:5)
   at Anonymous function (http://192.168.9.17:8080/Megameeting/resources/js/lib/angular/angular.min.js:162:395
)
   at Anonymous function (http://192.168.9.17:8080/Megameeting/resources/js/lib/angular/angular.min.js:179:83)
   at h.prototype.$eval (http://192.168.9.17:8080/Megameeting/resources/js/lib/angular/angular.min.js:102:297)
   at h.prototype.$apply (http://192.168.9.17:8080/Megameeting/resources/js/lib/angular/angular.min.js:103:24)
   at Anonymous function (http://192.168.9.17:8080/Megameeting/resources/js/lib/angular/angular.min.js:179:63)
   at m.event.dispatch (http://192.168.9.17:8080/Megameeting/resources/js/lib/jquery/jquery-1.11.1.min.js:3:8380)
   at r.handle (http://192.168.9.17:8080/Megameeting/resources/js/lib/jquery/jquery-1.11.1.min.js:3:5064)


I have provided the both files "Kurento-utils.js" and "OneToManyWebController.js"

I am getting error for "icecandidate".

Could you please help me for to find out the solution for this.
If I missed anything please let me know.

Any suggestion would be appreciated.

Dnyaneshwar

unread,
Aug 10, 2015, 6:57:11 AM8/10/15
to kurento
Hello guys,

Can any one let me know that how to integrate Webrtc into Internet Explorer and Safari using KMS6?
I have tried Temasys Plugin for that but it is worked in KMS 5 not in KMS6.

Please help me.

Thank you.

Ivan Gracia

unread,
Aug 10, 2015, 7:43:20 AM8/10/15
to Kurento Public
Are you using v6 of kurento-utils-js too? From your mails, I understand that you have a v5 kurento-utils-js modified file with the attachMediaStream function, but maybe I got that wrong.

Ivan Gracia



--
You received this message because you are subscribed to the Google Groups "kurento" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kurento+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Dnyaneshwar

unread,
Aug 10, 2015, 10:01:25 AM8/10/15
to kurento
We have updated "Kurento-utils.js" file (KMS6).
It is giving error on this line "pc.addEventListener('icecandidate', function (event) { "  in  "Kurento-utils.js" file.
How to modify this line in KMS6?
 
I have modified the code according to the Temasys Plugin documentation. I have added "attachMediaStream" function in  "Kurento-utils.js" file instead of "URL.createObjectURL" function.

I have provided the both files "Kurento-utils.js" and "OneToManyWebController.js".
PFA.
kurento-utils.js
OneToManyWebController.js

Dnyaneshwar

unread,
Aug 11, 2015, 7:06:46 AM8/11/15
to kurento
Hello Ivan,

I have also used following code in master page:

<script language="javascript">
    /* IE11 Fix for SP2010 */
    if (typeof(UserAgentInfo) != 'undefined' && !window.addEventListener) 
    {
        UserAgentInfo.strBrowser=1; 
    } 
</script>

But getting same error
“Object doesn't support this property or method” in IE 11


Cant you tell me what is the problem?

"addEventListener"
OR
"icecandidate"

Does above both the things support in IE or not?



Ivan Gracia

unread,
Aug 11, 2015, 7:17:39 AM8/11/15
to Kurento Public

No clue, you'll have to check in their documentation on how to add an event listener. Taking a wild guess it might be something like addEvent, but you'd better check the semantics of that.


Ivan Gracia


Dnyaneshwar

unread,
Aug 11, 2015, 7:43:11 AM8/11/15
to kurento
Ok. Thanks for that.
I will check it in their documentation.

Dnyaneshwar

unread,
Aug 12, 2015, 2:05:39 PM8/12/15
to kurento
Hi Ivan,

I did some R&D on this and found following results

'icecandidate' and 'signalingstatechange' events are added in "kurento-utils.js" file in KMS6 using Trickle-Ice concept. But these events are not supported by Internet Explorer and Safari.

Please refer below links


Please let me know if you have any alternate solution or any idea for supporting Webrtc to Internet Explorer and Safari.

Thank you

Ivan Gracia

unread,
Aug 13, 2015, 4:55:50 AM8/13/15
to Kurento Public
There is no WebRTC in Internet Explorer and Safari, so there is no possibility to support that. In fact, if you examine that documentation, there is also no other method from RTCPeerConnection that is reported as supported by neither IE nor Safari. That's why you need the Temasys plugin, because it adds polyfills so when you try to use the RTCPeerConnection API in IE or Safari, you will be able to do that. It seems that the event for icecandidate is different, or maybe the way to attach listeners to events. This seems to indicate the latter, but can't really be sure as I've personally never used it. If anyone reading this can provide more info, that'd be cool.

The solution would be to adapt the kurento-utils-js library for that, or write your own. I really don't know which one would take you less time. I'd give it the adaptation of the library a go, and add checks to use one method or another depending on which capabilities the browser has. We have no plans on including this in the library, as supporting browsers that don't support WebRTC is not really our goal. You already have the Temasys plugin for that ;-) If you want to adapt the library to work with the plugin, we'd be happy to accept a pull request for that. 

Cheers,

Ivan Gracia


Dnyaneshwar

unread,
Aug 14, 2015, 10:03:31 AM8/14/15
to kurento
Hello Ivan,
Thanks for the giving suggestion.
Currently we are modifying the code in kurento-utils-js file .
We will let you know if we require any libraries for implementation of webrtc to IE and Safari.
 
Today I have modified the code and it seems like it is working fine in IE11,IE10

I am sending the only three parameters from the javascript object "candidate"to the server.

See "onIceCandidate" function in OneToManyWebController,js file

$scope.onIceCandidate = function(candidate){
         console.log("Local candidate" , JSON.stringify(candidate.
candidate));

         var message = {
            id : 'onIceCandidate',
            candidate : {
                    candidate : candidate.candidate,
                    sdpMid: candidate.sdpMid,
                    sdpMLineIndex: candidate.sdpMLineIndex
            }
        };
       
    
        $scope.sendMessage(message);
    };

 and "send" function is

$scope.sendMessage = function(message){
           
        var jsonMessage = JSON.stringify(message);
       
        ws.send(jsonMessage);
    };

But javascript object "candidate" which contains lots of data and it has also some recursion functions.
So if I send this whole candidate object to the server using JSON,Stringify then it gives me "stack out of space" error.

Should we require whole data from candidate object? or not?
Should I continue with above code or not?
Will it be affect in the future?
Please check attachment.

If the whole data is required from "candidate" object then how to solve this problem?
Could you please help me?



Thanks,

OneToManyWebController.js
kurento-utils.js

Dnyaneshwar

unread,
Aug 17, 2015, 6:22:58 AM8/17/15
to kurento
Hello Ivan,

While testing we found some audio related issues. Video is working fine but audio is not working properly in Internet Explorer..
In Local Candidate,it shows sdpMid="audio"  but actually it is not working.

Do you have any idea about this?

Thank you,

Ivan Gracia

unread,
Aug 17, 2015, 7:23:47 AM8/17/15
to Kurento Public
No clue. That's plugin stuff, sorry!

Ivan Gracia



--

Dnyaneshwar

unread,
Aug 17, 2015, 7:35:31 AM8/17/15
to kurento
ok.thanks,,,
By the way
Should I send these 3 parameters to the server?
candidate,
sdpMid,
sdpMLineIndex


Would It be affect in future?
because right now it is working fine if I send above three parameters to the server

Look at the code

Ivan Gracia

unread,
Aug 21, 2015, 6:58:40 AM8/21/15
to Kurento Public
You should be fine with those three.

Cheers,

Ivan Gracia



Dnyaneshwar

unread,
Aug 24, 2015, 2:24:26 PM8/24/15
to kurento
Thank so much you Ivan,
Message has been deleted
Message has been deleted

mukhtar....@gmail.com

unread,
Feb 25, 2016, 3:51:00 AM2/25/16
to kurento
Hi Ivan and Dnyaneshwar,

Where you able to fix the audio issue ? can you please share the steps ?

I am trying to get temasys plugin work with KMS 6.2 and need to modify kurento-utils.js
"addEventListener" becomes "attachEvent"
  and
"icecandidate" becomes "onicecandidate"


In addition to the above change, I had to make the following changes
  1. localVideo = attachMediaStream(localVideo, videoStream); // updated in showLocalVideo implementation
  2. remoteVideo = attachMediaStream(remoteVideo, stream); // updated in setRemoteVideo implementaion
  3. created candidate by taking the 3 tuples
    candidate.candidate, candidate.sdpMid, candidate.sdpMLineIndex.
    Since, JSON.stringify in IE wont be able to serialize the object returned by plugin and we wont have any candidates shared.


The setup i am currently using is

KMS version 6.2

TemWebRTCPlugin Version 0.8.866,

IE Version 11.0.96000.17031



I have had success running kurento-hello-world, kurento-one-to-one call examples from IE to IE as well as IE to other browsers
The only problem I am facing now is there is no microphone audio from IE peer, whilst the IE peer has audio in its sdpOffer.
Attaching sdpOffer for your reference.

Looking forward for some inputs.


Mukhtar Sayyed.
ie_sdpOffer.txt
kurento-utils.js

mithu...@gmail.com

unread,
Apr 18, 2016, 5:41:01 PM4/18/16
to kurento, mukhtar....@gmail.com
Hi Dnyaneshwar,

Where you able to fix the audio issue? Could you please share the steps?

Thanks
Mithun

gian...@ows.vn

unread,
Apr 29, 2016, 11:14:44 PM4/29/16
to kurento
We created a modified version of kurento-utils for temasys plugin. 


You can fork and modify this for your project.

Vào 17:05:54 UTC+7 Thứ Tư, ngày 05 tháng 8 năm 2015, Dnyaneshwar đã viết:

olivier...@cpmultimedia.com

unread,
Aug 19, 2016, 11:19:28 AM8/19/16
to kurento, gian...@ows.vn
Hello,

I have used your forked kurento-utils-js for the kurento one2many tutorial. Everything works fine even with Safari and Win/IE 11. Thank you.
The thing is that I am worried about going to production with that because your repo seems to be quiet. It is around 180 late compared to Kurento's.
Do you plan to update it to 6.5.0 ?

thx 

Holly johnson

unread,
Oct 18, 2016, 9:07:59 AM10/18/16
to kurento, gian...@ows.vn
Hi Olivier Dupuis,

Could you please share your kurento-utils.js file & also provide what you had make change on your code to run the kurento-onetomany on IE/Safari. Please help.

Thanks,
Holly
Reply all
Reply to author
Forward
0 new messages