I'm trying to make a call with webrtc between iPhone to browser with ApprtcDemo
everything works fine through apprtc.appspot.com. but when i ran the app on my server, I was able to make a call between browsers and with the help of this post, I made a call between browser to android.
I can't make the call between iPhone to browser…
changes to code:
in APPRTCAppClient.m:
//NSString *path = [NSString stringWithFormat:@"https:%@", [url resourceSpecifier]];
NSString *path = [NSString stringWithFormat:@"http:%@", [url resourceSpecifier]];
//NSString *url = [NSString stringWithFormat:@"%@/%@", self.baseURL, self.postMessageUrl];
NSString *url = [NSString stringWithFormat:@"http://xxx.xx.x.xx:9090%@", self.postMessageUrl];
//[request addValue:@"https://apprtc.appspot.com" forHTTPHeaderField:@"origin"];
[request addValue:@"http://xxx.xx.x.xx:9090" forHTTPHeaderField:@"origin"];
in APPRTCViewController.m:
//NSString *url = [NSString stringWithFormat:@"apprtc://apprtc.appspot.com/?r=%@", room];
NSString *url = [NSString stringWithFormat:@"apprtc://xxx.xx.x.xx:9090/?r=%@", room];
in ios_channel.html:
//<script type="text/javascript" src="http://apprtc.appspot.com/_ah/channel/jsapi"></script>
<script type="text/javascript" src="http://xxx.xx.x.xx:9090/_ah/channel/jsapi"></script>
when I try to connect to the room (from iPhone) on my server I get this log messages:
INFO 2014-02-11 07:11:53,911 apprtc.py:350] IN CLASS MainPage
INFO 2014-02-11 07:11:53,927 apprtc.py:246] IN CLASS Room: add_user
INFO 2014-02-11 07:11:53,941 apprtc.py:77] create_channel
INFO 2014-02-11 07:11:53,941 apprtc.py:163] Applying media constraints: {'vi
deo': True, 'audio': True}
INFO 2014-02-11 07:11:53,957 apprtc.py:517] User 80844306 added to room 85
INFO 2014-02-11 07:11:53,957 apprtc.py:518] Room 85 has state [80844306-Fals
e]
INFO 2014-02-11 07:11:53,973 module.py:612] default: "GET /?r=85 HTTP/1.1" 2
00 1744
at this point ConnectPage should be called to connect to the room, but nothing happens…
when I try to connect to the room (from android) on my server I get this log messages:
INFO 2014-02-11 07:11:53,911 apprtc.py:350] IN CLASS MainPage
INFO 2014-02-11 07:11:53,927 apprtc.py:246] IN CLASS Room: add_user
INFO 2014-02-11 07:11:53,941 apprtc.py:77] create_channel
INFO 2014-02-11 07:11:53,941 apprtc.py:163] Applying media constraints: {'vi
deo': True, 'audio': True}
INFO 2014-02-11 07:11:53,957 apprtc.py:517] User 59372716 added to room 51
INFO 2014-02-11 07:11:53,957 apprtc.py:518] Room 51 has state [59372716-Fals
e]
INFO 2014-02-11 07:11:53,973 module.py:612] default: "GET /?r=51 HTTP/1.1" 2
00 1744
INFO 2014-02-11 07:11:55,142 apprtc.py:306] IN CLASS ConnectPage
INFO 2014-02-11 07:11:55,158 apprtc.py:298] User 59372716 connected to room
51
INFO 2014-02-11 07:11:55,158 apprtc.py:299] Room 51 has state [59372716-True
]
INFO 2014-02-11 07:11:55,190 module.py:612] default: "POST /_ah/channel/conn
ected/ HTTP/1.1" 200 -
The call isn't going through because there is no actual connection to the room.
I also tried using wireshark to see what is being sent between client to server with both android and iPhone as the client
FROM iPhone:
1009 31.978872000 84.94.156.147 xxx.xx.x.xx HTTP 265 GET /?r=9 HTTP/1.1
1022 32.088116000 xxx.xx.x.xx 84.94.156.147 HTTP 235 HTTP/1.1 200 OK (text/html)
1093 32.788407000 84.94.156.147 xxx.xx.x.xx HTTP 343 GET /_ah/channel/jsapi HTTP/1.1
1404 34.191465000 xxx.xx.x.xx 84.94.156.147 HTTP 769 HTTP/1.1 200 OK (text/javascript)
GET /?r=9 HTTP/1.1 :
Hypertext Transfer Protocol
GET /?r=9 HTTP/1.1\r\n
Expert Info (Chat/Sequence): GET /?r=9 HTTP/1.1\r\n
Message: GET /?r=9 HTTP/1.1\r\n
Severity level: Chat
Group: Sequence
Request Method: GET
Request URI: /?r=9
Request Version: HTTP/1.1
Host: xxx.xx.x.xx:9090\r\n
Connection: keep-alive\r\n
Accept-Encoding: gzip, deflate\r\n
User-Agent: AppRTCDemo/1.0 CFNetwork/672.0.8 Darwin/14.0.0\r\n
Accept-Language: he-il\r\n
Accept: */*\r\n
\r\n
Full request URI: http://xxx.xx.x.xx:9090/?r=9
HTTP request 1/1
Response in frame: 1022
HTTP/1.1 200 OK (text/html):
Hypertext Transfer Protocol
HTTP/1.1 200 OK\r\n
Expert Info (Chat/Sequence): HTTP/1.1 200 OK\r\n
Message: HTTP/1.1 200 OK\r\n
Severity level: Chat
Group: Sequence
Request Version: HTTP/1.1
Status Code: 200
Response Phrase: OK
content-type: text/html; charset=utf-8\r\n
cache-control: no-cache\r\n
Content-Length: 1705\r\n
Content length: 1705
Server: Development/2.0\r\n
Date: Thu, 13 Feb 2014 12:55:23 GMT\r\n
\r\n
HTTP response 1/1
Line-based text data: text/html
(here i have the index.html file filled with the content for each of the vars)
GET /_ah/channel/jsapi HTTP/1.1 :
Hypertext Transfer Protocol
GET /_ah/channel/jsapi HTTP/1.1\r\n
Expert Info (Chat/Sequence): GET /_ah/channel/jsapi HTTP/1.1\r\n
Message: GET /_ah/channel/jsapi HTTP/1.1\r\n
Severity level: Chat
Group: Sequence
Request Method: GET
Request URI: /_ah/channel/jsapi
Request Version: HTTP/1.1
Host: xxx.xx.x.xx:9090\r\n
Connection: keep-alive\r\n
Accept-Encoding: gzip, deflate\r\n
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 7_0_4 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11B554a\r\n
Accept-Language: he-il\r\n
Accept: */*\r\n
\r\n
Full request URI: http://xxx.xx.x.xx:9090/_ah/channel/jsapi
HTTP request 1/1
Response in frame: 1404
HTTP/1.1 200 OK (text/javascript):
HTTP/1.1 200 OK (text/html):
Hypertext Transfer Protocol
HTTP/1.1 200 OK\r\n
Expert Info (Chat/Sequence): HTTP/1.1 200 OK\r\n
Message: HTTP/1.1 200 OK\r\n
Severity level: Chat
Group: Sequence
Request Version: HTTP/1.1
Status Code: 200
Response Phrase: OK
cache-control: no-cache\r\n
content-type: text/javascript\r\n
Content-Length: 238051\r\n
Content length: 238051
Server: Development/2.0\r\n
Date: Thu, 13 Feb 2014 12:55:24 GMT\r\n
\r\n
HTTP response 1/1
Line-based text data: text/html
(here i have the jsapi file)
FROM android:
2103 64.994817000 62.219.128.171 xxx.xx.x.xx HTTP 231 GET /?r=7 HTTP/1.1
2109 65.056073000 xxx.xx.x.xx 62.219.128.171 HTTP 225 HTTP/1.1 200 OK (text/html)
2329 68.436749000 62.219.128.171 xxx.xx.x.xx HTTP 499 GET /_ah/channel/jsapi HTTP/1.1
2659 71.766089000 xxx.xx.x.xx 62.219.128.171 HTTP 869 HTTP/1.1 200 OK (text/javascript)
2723 72.548316000 62.219.128.171 xxx.xx.x.xx HTTP 582 GET /_ah/channel/dev? command=connect&channel=52dc587e2a55f84d5a24d607e01265a6-channel-2672196958-1392299260-7/48366753 HTTP/1.1
2725 72.551059000 xxx.xx.x.xx 62.219.128.171 HTTP 67 HTTP/1.1 200 OK (text/plain)
2755 73.546369000 62.219.128.171 xxx.xx.x.xx HTTP 588 GET /_ah/channel/dev? command=poll&channel=52dc587e2a55f84d5a24d607e01265a6-channel-2672196958-1392299260- 7/48366753&client=1 HTTP/1.1
2756 73.547829000 xxx.xx.x.xx 62.219.128.171 HTTP 191 HTTP/1.1 200 OK
GET /?r=7 HTTP/1.1 :
Hypertext Transfer Protocol
GET /?r=7 HTTP/1.1\r\n
Expert Info (Chat/Sequence): GET /?r=7 HTTP/1.1\r\n
Message: GET /?r=7 HTTP/1.1\r\n
Severity level: Chat
Group: Sequence
Request Method: GET
Request URI: /?r=7
Request Version: HTTP/1.1
User-Agent: Dalvik/1.6.0 (Linux; U; Android 4.3; Nexus 4 Build/JWR66V)\r\n
Host: xxx.xx.x.xx:9090\r\n
Connection: keep-alive\r\n
Accept-Encoding: gzip\r\n
\r\n
Full request URI: http://xxx.xx.x.xx:9090/?r=7
HTTP request 1/1
Response in frame: 2109
HTTP/1.1 200 OK (text/html):
Hypertext Transfer Protocol
HTTP/1.1 200 OK\r\n
Expert Info (Chat/Sequence): HTTP/1.1 200 OK\r\n
Message: HTTP/1.1 200 OK\r\n
Severity level: Chat
Group: Sequence
Request Version: HTTP/1.1
Status Code: 200
Response Phrase: OK
content-type: text/html; charset=utf-8\r\n
cache-control: no-cache\r\n
Content-Length: 1695\r\n
Content length: 1695
Server: Development/2.0\r\n
Date: Thu, 13 Feb 2014 13:17:39 GMT\r\n
\r\n
HTTP response 1/2
Line-based text data: text/html
(here i have the index.html file filled with the content for each of the vars)
GET /_ah/channel/jsapi HTTP/1.1 :
Hypertext Transfer Protocol
GET /_ah/channel/jsapi HTTP/1.1\r\n
Expert Info (Chat/Sequence): GET /_ah/channel/jsapi HTTP/1.1\r\n
Message: GET /_ah/channel/jsapi HTTP/1.1\r\n
Severity level: Chat
Group: Sequence
Request Method: GET
Request URI: /_ah/channel/jsapi
Request Version: HTTP/1.1
Host: xxx.xx.x.xx:9090\r\n
Connection: keep-alive\r\n
Referer: http://xxx.xx.x.xx:9090/\r\n
Accept: */*\r\n
X-Requested-With: org.appspot.apprtc\r\n
User-Agent: Mozilla/5.0 (Linux; U; Android 4.3; he-il; Nexus 4 Build/JWR66V) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30\r\n
Accept-Encoding: gzip, deflate\r\n
Accept-Language: he-IL, en-US\r\n
Accept-Charset: utf-8, iso-8859-1, utf-16, *;q=0.7\r\n
\r\n
Full request URI: http://xxx.xx.x.xx:9090/_ah/channel/jsapi
HTTP request 1/8
HTTP/1.1 200 OK (text/javascript):
HTTP/1.1 200 OK (text/html):
Hypertext Transfer Protocol
HTTP/1.1 200 OK\r\n
Expert Info (Chat/Sequence): HTTP/1.1 200 OK\r\n
Message: HTTP/1.1 200 OK\r\n
Severity level: Chat
Group: Sequence
Request Version: HTTP/1.1
Status Code: 200
Response Phrase: OK
cache-control: no-cache\r\n
content-type: text/javascript\r\n
Content-Length: 238051\r\n
Content length: 238051
Server: Development/2.0\r\n
Date: Thu, 13 Feb 2014 13:17:42 GMT\r\n
\r\n
HTTP response 1/8
Line-based text data: text/html
(here i have the jsapi file)
Can any one please help with this issue. any ideas on how to proceed will be good at this point.
Thanks in advance
I'm on the WebRTC team and it's quite likely iOS version of AppRTCDemo (now renamed to AppRTCMobile) wasn't working as you explain. Let us know if this is still an issue. The app has gotten a lot of work done on it lately.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With