PubBub WebRTC Android Demo is Not Connecting from Android to Android - webrtc

When I tried the demo app https://kevingleason.me/AndroidRTC/, it was working as expected.
But when I tried with two android devices, I can make a call and receive call, but they don't get connected. In both devices, its own camera feed is displayed with a text "Connecting...". I tried on both my home Wifi and mobile data 3G. There is no error that I can find in log.
Could anyone help me to resolve the issue please. What is that I am missing here?
I am using the latest code from https://github.com/GleasonK/AndroidRTC which already has the Xirsys ICE servers configured. But I noticed that the Xirsys ICE servers is not added in the below line from VideoChatActivity.java, so I also tried adding that servers into the PnSignalingParams' constructor, but still facing the same Connecting message only.
List<PeerConnection.IceServer> servers = getXirSysIceServers();
if (!servers.isEmpty()) {
this.pnRTCClient.setSignalParams(new PnSignalingParams(servers));
}

I have fixed the issue. It was little tricky. If you see the log, it will show you that the application always execute createOffer method. So both client A and client B will send an offer in same time. You can fix that issue by giving some condition so if the client A give an offer, and the client B will response by give an answer.
To see if any error occurs you can use method onCreateFailure(String s) and onSetFailure(String s) in PnPeer.java.
Hope this will help.

Related

https://appr.tc is down. How to set up own signaling server/ room server URL?

I'd developed a video calling app on Android using WebRTC and was using the https://appr.tc as the signaling server (Room Server URL). But according to https://groups.google.com/g/discuss-webrtc/c/H7XuZfgkGH0 apprtc is now taken down. When I run the AppRTC demo app I get the following error:
Connection Error
Non-200 response to POST to URL: https://appr.tc/join/room_id32864 : HTTP/1.1 404 Not Found
Could someone please show the way on how to change the Room Server URL or setup my own Room Server URL? Any help would be appreciated. Thanks
The source code of apprtc remains available on github:
https://github.com/webrtc/apprtc
You might want to read this blog post about whether to use it though:
https://bloggeek.me/webrtc-signaling-server-not-use-apprtc/
The project has been effectively abandoned for years and you will have a hard time finding support.

Reactnative Signalwire application unable to establish Ice server peer connection

I am trying to implement Signalwire calling in a react-native app. I am facing issue in connecting ice servers. Sometimes it connects and calling between two persons get successful. But most of the time it throws error
"Cannot set properties of undefined (setting 'onicecandidate')"
I have tried to search a lot but could not succeed. Can you please guide me how this issue can be resolved? I am using following iceservers:
iceServers = [
{urls: ['stun:stun.l.google.com:19302','stun:stun1.l.google.com:19302','stun:stun2.l.google.com:19302']}
];
I have tried to find iceserver associated with my signalwire account but could not find, Please guide me how to get ice/turn/stun server urls and credentials. I am using Relay SDK for reactnative
It's not possible from this post to tell if you're using the SignalWire SDKs exclusively, if you're working from third party tools, or if you're doing your own setup. There are also a few variables in terms of how you've set up your app, what errors you're seeing from the SignalWire side, and the config of your ice servers.
With all that in mind, if you could reach out to SignalWire support (from your SignalWire space, select 'Help and Support' at the top right and then Submit a New Support Request) we can take a look at your setup and work through this with you.

DOMException: Could not start video source

I am trying to run the webRTC code which i have mentioned below, it is working fine when i am connecting with two devices using same network. But it is not connecting when the devices are in different networks and i am getting DOM Exception. please help me to fix it.
please refer the below link for your understanding
It seems like you need a TURN-Server. (CoTurn for example). The traffic will be relayed if a direct connection is not possible (NAT, Firewall,...)

OpenTok WebRTC - The video stream failed to connect error

Condition:
1. Two users use Chrome (latest version) on Mac
2. One-to-one video conference
Problem - sometimes (~ ones in 5-6 calls) video window shows the error - The video stream failed to connect. Please notify the site owner. It can be on the beggining, or after several minutes spent on call.
Where can be the issue?
If any addition info needed i will provide in the post.
Thanks
If I understand correctly, one in 5-6 calls results in "Video stream failed to connect error". This is most likely a firewall or router configuration issue.
If you are video chatting with different people and you are sometimes getting a "video stream failed to connect error", the person you are chatting with probably has a firewall or configuration issue.
If you are testing with yourself and sometimes getting that error, you might have firewall or configuration issues.
To verify that you firewall is configured correctly, try running this diagnostic tool.
If you would like to see when your users are experiencing this error and would like to educate them on the diagnostic tool or what the possible causes are, you can listen to exception events (#1013 in your case)
Disclaimer: I work at TokBox.
Good Luck!

GCM does dot work with GPRS but works fine with WIFI?

I have searched for the solution but i did not get any solution for the above problem. Please let me know if anybody knows why this happens with gcm. I have implemented gcm as per the google doc it works fine when I ran using wifi but it fails(device will not register on server and force close error occurs on app side) when I try to run using gprs.
Please help. I am stucked with this.
Please refer to the link http://www.youtube.com/watch?v=YoaP6hcDctM there it was answer to one of the question that it will work with wifi only