Foscam R2 with Lenovo Smart Tab [SOLVED]
-
I noticed a couple others with Ubiquity USG that had issues “Camera Doesn’t Support That”
https://www.ui.com/unifi-routing/usg/But im not sure if they are related.
-
Im not sure its DNS rebinding these tests seem to work out i gleaned from this thread… Its worth investigating the USG config though. Also i am using OpenDNS as the public DNS and i checked the account to make sure it isn’t blocking DNS Rebinding
https://forum.monoclecam.com/topic/153/reolink-camera-wont-show-on-alexa-tv-solved/8
c:\Program Files (x86)\GnuWin32\bin>nslookup 46224620-b4e1-424d-abce-1ddb866d01f8.mproxy.io Server: ubnt Address: 192.168.1.1 Non-authoritative answer: Name: 46224620-b4e1-424d-abce-1ddb866d01f8.mproxy.io Address: 192.168.1.26 c:\Program Files (x86)\GnuWin32\bin>nslookup 46224620-b4e1-424d-abce-1ddb866d01f8.mproxy.io 8.8.8.8 Server: dns.google Address: 8.8.8.8 Non-authoritative answer: Name: 46224620-b4e1-424d-abce-1ddb866d01f8.mproxy.io Address: 192.168.1.26 c:\Program Files (x86)\GnuWin32\bin>
-
Even though the DNS Rebinding tests seem to check out (no mismatch on internal vs external) I tried manually adding the fqdn into the DNS host file and specific file for DNSmasq on the USG following instructions found on some forums.
Since DNS rebinding didn’t seem to the be the issue, i wasn’t able to really test other than asking Alexa to show the camera and look at the logs which show there is no connection attempt
Also thinking it is the firewall, i temporarily created ANY ANY rule effectively allowing all traffic through to the LAN network. Unfortunately nothing seems to make any difference or show at least the connection attempt.
I am thinking a good testing step would be connect to known working camera and known working proxy. If you can check that setup and provide details i will test it out.
------------------------------------------------- RTSP STREAM MODIFIED: Upstairs Bedroom Any existing RTSP steams will be shut down and a new stream instance will be registered. ------------------------------------------------- 2020-01-20T05:50:12.979Z [DEBUG] <RTSP-PROXY> [REQUEST] --> [DEREGISTER] rtsp://192.168.1.205:443/videoSub 2020-01-20T05:50:12.980Z [TRACE] <RTSP-PROXY> [REQUEST] --> [HEADERS] { "cseq": "1", "transport": "reuse_connection=0;preferred_delivery_protocol=udp;proxy_url_suffix=STREAM:43a3e6d3-53a9-48ca-b4fa-2554acae132c" } 2020-01-20T05:50:12.981Z [DEBUG] <RTSP-PROXY> [RESPONSE] <-- [200 (OK)] <cseq=1> (session=undefined) 2020-01-20T05:50:12.981Z [TRACE] <RTSP-PROXY> [RESPONSE] <-- [HEADERS] { "cseq": "1", "date": "Mon, Jan 20 2020 05:50:12 GMT" } ------------------------------------------------- INITIALIZE RTSP STREAM: Upstairs Bedroom ------------------------------------------------- - NAME : Upstairs Bedroom - MAKE : Foscam - MODEL : R2 - LABEL : PRIMARY - URL : rtsp://192.168.1.205:443/videoSub - UUID : STREAM:43a3e6d3-53a9-48ca-b4fa-2554acae132c - SESS : e79d3050-3344-4d6d-a14c-a381ecc582bc - MODIF : Sun Jan 19 2020 21:50:04 GMT-0800 (Pacific Standard Time) - TAGS : @tunnel -------------------------------------------------
-
Some more info this is the gateway server and which ports are listening. I ran the command twice. First run is with monocle gateway started, second one is is with monocle gateway stopped
C:\WINDOWS\system32>netstat -an |find /i "listening" TCP 0.0.0.0:80 0.0.0.0:0 LISTENING TCP 0.0.0.0:135 0.0.0.0:0 LISTENING TCP 0.0.0.0:443 0.0.0.0:0 LISTENING TCP 0.0.0.0:445 0.0.0.0:0 LISTENING TCP 0.0.0.0:554 0.0.0.0:0 LISTENING TCP 0.0.0.0:1801 0.0.0.0:0 LISTENING TCP 0.0.0.0:2103 0.0.0.0:0 LISTENING TCP 0.0.0.0:2105 0.0.0.0:0 LISTENING TCP 0.0.0.0:2107 0.0.0.0:0 LISTENING TCP 0.0.0.0:2869 0.0.0.0:0 LISTENING TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING TCP 0.0.0.0:3483 0.0.0.0:0 LISTENING TCP 0.0.0.0:5040 0.0.0.0:0 LISTENING TCP 0.0.0.0:5357 0.0.0.0:0 LISTENING TCP 0.0.0.0:6789 0.0.0.0:0 LISTENING TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING TCP 0.0.0.0:8443 0.0.0.0:0 LISTENING TCP 0.0.0.0:8554 0.0.0.0:0 LISTENING TCP 0.0.0.0:8555 0.0.0.0:0 LISTENING TCP 0.0.0.0:8843 0.0.0.0:0 LISTENING TCP 0.0.0.0:8880 0.0.0.0:0 LISTENING TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING TCP 0.0.0.0:9090 0.0.0.0:0 LISTENING TCP 0.0.0.0:10200 0.0.0.0:0 LISTENING TCP 0.0.0.0:10243 0.0.0.0:0 LISTENING TCP 0.0.0.0:10400 0.0.0.0:0 LISTENING TCP 0.0.0.0:10401 0.0.0.0:0 LISTENING TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING TCP 0.0.0.0:49666 0.0.0.0:0 LISTENING TCP 0.0.0.0:49667 0.0.0.0:0 LISTENING TCP 0.0.0.0:49668 0.0.0.0:0 LISTENING TCP 0.0.0.0:49722 0.0.0.0:0 LISTENING TCP 0.0.0.0:49752 0.0.0.0:0 LISTENING TCP 0.0.0.0:49753 0.0.0.0:0 LISTENING TCP 0.0.0.0:49769 0.0.0.0:0 LISTENING TCP 127.0.0.1:5354 0.0.0.0:0 LISTENING TCP 127.0.0.1:27117 0.0.0.0:0 LISTENING TCP 192.168.1.26:139 0.0.0.0:0 LISTENING TCP [::]:135 [::]:0 LISTENING TCP [::]:445 [::]:0 LISTENING TCP [::]:554 [::]:0 LISTENING TCP [::]:1801 [::]:0 LISTENING TCP [::]:2103 [::]:0 LISTENING TCP [::]:2105 [::]:0 LISTENING TCP [::]:2107 [::]:0 LISTENING TCP [::]:2869 [::]:0 LISTENING TCP [::]:3389 [::]:0 LISTENING TCP [::]:5357 [::]:0 LISTENING TCP [::]:6789 [::]:0 LISTENING TCP [::]:7680 [::]:0 LISTENING TCP [::]:8080 [::]:0 LISTENING TCP [::]:8443 [::]:0 LISTENING TCP [::]:8843 [::]:0 LISTENING TCP [::]:8880 [::]:0 LISTENING TCP [::]:10243 [::]:0 LISTENING TCP [::]:49664 [::]:0 LISTENING TCP [::]:49665 [::]:0 LISTENING TCP [::]:49666 [::]:0 LISTENING TCP [::]:49667 [::]:0 LISTENING TCP [::]:49668 [::]:0 LISTENING TCP [::]:49722 [::]:0 LISTENING TCP [::]:49752 [::]:0 LISTENING TCP [::]:49753 [::]:0 LISTENING TCP [::]:49769 [::]:0 LISTENING C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32> C:\WINDOWS\system32>netstat -an |find /i "listening" TCP 0.0.0.0:80 0.0.0.0:0 LISTENING TCP 0.0.0.0:135 0.0.0.0:0 LISTENING TCP 0.0.0.0:445 0.0.0.0:0 LISTENING TCP 0.0.0.0:554 0.0.0.0:0 LISTENING TCP 0.0.0.0:1801 0.0.0.0:0 LISTENING TCP 0.0.0.0:2103 0.0.0.0:0 LISTENING TCP 0.0.0.0:2105 0.0.0.0:0 LISTENING TCP 0.0.0.0:2107 0.0.0.0:0 LISTENING TCP 0.0.0.0:2869 0.0.0.0:0 LISTENING TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING TCP 0.0.0.0:3483 0.0.0.0:0 LISTENING TCP 0.0.0.0:5040 0.0.0.0:0 LISTENING TCP 0.0.0.0:5357 0.0.0.0:0 LISTENING TCP 0.0.0.0:6789 0.0.0.0:0 LISTENING TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING TCP 0.0.0.0:8443 0.0.0.0:0 LISTENING TCP 0.0.0.0:8843 0.0.0.0:0 LISTENING TCP 0.0.0.0:8880 0.0.0.0:0 LISTENING TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING TCP 0.0.0.0:9090 0.0.0.0:0 LISTENING TCP 0.0.0.0:10200 0.0.0.0:0 LISTENING TCP 0.0.0.0:10243 0.0.0.0:0 LISTENING TCP 0.0.0.0:10400 0.0.0.0:0 LISTENING TCP 0.0.0.0:10401 0.0.0.0:0 LISTENING TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING TCP 0.0.0.0:49666 0.0.0.0:0 LISTENING TCP 0.0.0.0:49667 0.0.0.0:0 LISTENING TCP 0.0.0.0:49668 0.0.0.0:0 LISTENING TCP 0.0.0.0:49722 0.0.0.0:0 LISTENING TCP 0.0.0.0:49752 0.0.0.0:0 LISTENING TCP 0.0.0.0:49753 0.0.0.0:0 LISTENING TCP 0.0.0.0:49769 0.0.0.0:0 LISTENING TCP 127.0.0.1:5354 0.0.0.0:0 LISTENING TCP 127.0.0.1:27117 0.0.0.0:0 LISTENING TCP 192.168.1.26:139 0.0.0.0:0 LISTENING TCP [::]:135 [::]:0 LISTENING TCP [::]:445 [::]:0 LISTENING TCP [::]:554 [::]:0 LISTENING TCP [::]:1801 [::]:0 LISTENING TCP [::]:2103 [::]:0 LISTENING TCP [::]:2105 [::]:0 LISTENING TCP [::]:2107 [::]:0 LISTENING TCP [::]:2869 [::]:0 LISTENING TCP [::]:3389 [::]:0 LISTENING TCP [::]:5357 [::]:0 LISTENING TCP [::]:6789 [::]:0 LISTENING TCP [::]:7680 [::]:0 LISTENING TCP [::]:8080 [::]:0 LISTENING TCP [::]:8443 [::]:0 LISTENING TCP [::]:8843 [::]:0 LISTENING TCP [::]:8880 [::]:0 LISTENING TCP [::]:10243 [::]:0 LISTENING TCP [::]:49664 [::]:0 LISTENING TCP [::]:49665 [::]:0 LISTENING TCP [::]:49666 [::]:0 LISTENING TCP [::]:49667 [::]:0 LISTENING TCP [::]:49668 [::]:0 LISTENING TCP [::]:49722 [::]:0 LISTENING TCP [::]:49752 [::]:0 LISTENING TCP [::]:49753 [::]:0 LISTENING TCP [::]:49769 [::]:0 LISTENING
-
Let’s start with a test of the Alexa device to a known working demo camera without the gateway.
The following RTSP URL is now working and I just tested it with FireTV and Echo Show 8:
rtsp://demo.mproxy.io:443/test
Here are the connection details I am using in Monocle web portal.
In this case we are not using the Monocle Gateway at all. I’m just hoping to verify that your Alexa-enabled device can at least access a publicly hosted camera and show the camera’s stream thus verifying the device is fully capable of showing camera stream using the Alexa Smart Home Camera APIs.
-
Just says “Camera Doesn’t Support That”
-
Well, that’s not a good sign. I just tested the demo feed again to make sure it was still working and it is.
I renamed my demo camera to “Demo Direct” just to try it out. I then asked “Alexa, discover devices” so she would get the updated device name. She responded with “No new devices …” which is correct, because this is just a change to an existing device.
Finally, I asked “Alexa, show me Demo Direct” and she responded with “OK”. After about 5-10 seconds, the feed is displayed on my devices. I tested on the following:
- Fire TV 4K (Gen 1)
- Fire TV Cube 4K
- Fire TV Stick 4K
- Fire TV Edition 4K (Toshiba)
- Echo Spot (Gen 1)
- Echo Show 7" (Gen 1)
- Echo Show 10.1" (Gen 2)
- Echo Show 5
- Echo Show 8
- Echo Fire Tablet (7th Gen)
So at this point, I’m really out of suggestions to try other than trying to work with Amazon Alexa support. I don’t believe its a problem at all with the Monocle Alexa Skill.
Thanks, Robert
-
Actually … I did think of one more small thing to try. Add the tag “
@noproxy
” to the “Demo Direct” camera.
This will eliminate one more step in the process. I don’t expect it to make a difference but it’s worth a shot.Thanks, Robert
-
I will try @noproxy
-
Thanks so much for trying to help… Unfortunately no love, I will try replacing my firewall with a different device to see if it is indeed some setting with the firewall. If that doesn’t work, do you have any suggestions on who and how to contact amazon support? I.e. is there an email address to contact?
-
If the Lenovo Smart Tab won’t work with the DEMO camera feed then I don’t think its an issue with your firewall. The DEMO camera feed is available publicly and thus as long as the Alexa device can access the Internet, then nothing firewall related should have an impact in this case.
Basically here is what should happen:
1.) You ask Alexa for a camera feed.
2.) Your Lenovo Smart Tab will contact Alexa servers to initiate the camera stream by name.
3.) The Alexa servers contact the Monocle servers with a request for the camera stream. (InitializeCameraStream)
4.) Monocle servers receive the Alexa InitializeCameraStream request and respond with the appropriate details (RTSP URL, username, password, etc) for the Alexa device to make a RTSP connection to the IP camera.You can verify this by inspecting the “
Camera Feed History
” on your camera in the Monocle Web Portal.
You should see something like this in your feed history for the demo camera stream when using tag@noproxy
:{ "timestamp": "2020-01-21T17:19:06.750Z", "request": "InitializeCameraStreams", "response": [ { "uri": "rtsp://demo.mproxy.io:443/test", "resolution": { "width": "1920", "height": "1080" }, "authorizationType": "NONE", "videoCodec": "H264", "audioCodec": "NONE", "protocol": "RTSP" } ] }
5.) This response is then returned to the Lenovo Smart Tab by the Alexa servers and then the tablet should immediately attempt to establish a (secure) connection to the camera stream, negotiate a RTSP session and start playing the stream.
So as long as this is showing up in your camera feed history, then that tells us that the Alexa servers are accepting your request and we are responding with the demo camera stream information and at that point its entirely up to the Lenovo Smart Tab to make the connection to the camera stream and start playing the stream.
Thanks, Robert
-
@skarragallagher said in Foscam R2 with Lenovo Smart Tab:
… do you have any suggestions on who and how to contact amazon support? I.e. is there an email address to contact?
Unfortunately I don’t have access to any direct means of Amazon support … just the general customer support URLs.
- https://www.amazon.com/gp/help/customer/display.html/?nodeId=201952240
- https://www.amazon.com/gp/help/customer/contact-us
I’ve had limited success using the Amazon developer forums for certain issues in the past:
-
@Monocle Thanks for providing that context and detail.
When i tested again today, i do see the Demo Direct feed now!!!
[ { "timestamp": "2020-01-21T22:38:39.607Z", "request": "InitializeCameraStreams", "response": [ { "uri": "rtsp://demo.mproxy.io:443/test", "resolution": { "width": "1920", "height": "1080" }, "authorizationType": "NONE", "videoCodec": "H264", "audioCodec": "NONE", "protocol": "RTSP" } ] },
So this indicates that indeed the Alexa on Lenovo Smart Tab actually works. How do we test it through the proxy?
-
I tested the Demo Direct Feed with and without the “@noproxy” tags.
- It does indeed work with the “@noproxy”
- It does NOT work with blank tags section
-
Here is my Demo Direct Feed, Can you validate that i have this configured correctly. Note the port change and tag, everything else should be the same
This one going through the proxy with @proxy-tcp tag shows this:
------------------------------------------------- INITIALIZE RTSP STREAM: Demo Proxy ------------------------------------------------- - NAME : Demo Proxy - MAKE : Monocle - MODEL : Demo - LABEL : PRIMARY - URL : rtsp://demo.mproxy.io:554/test - UUID : STREAM:b10829c1-f61c-4f67-a30f-dc3dd578d447 - SESS : f3915c4d-2a2c-4325-9ba6-d5738a36875c - MODIF : Tue Jan 21 2020 14:40:28 GMT-0800 (Pacific Standard Time) - TAGS : @proxy-tcp ------------------------------------------------- 2020-01-21T22:43:03.664Z [INFO] [RTSP PROXY] REGISTERING STREAM [Demo Proxy/PRIMARY]; (STREAM:b10829c1-f61c-4f67-a30f-dc3dd578d447) 2020-01-21T22:43:03.674Z [DEBUG] <RTSP-PROXY> [REQUEST] --> [REGISTER] rtsp://demo.mproxy.io:554/test 2020-01-21T22:43:03.675Z [TRACE] <RTSP-PROXY> [REQUEST] --> [HEADERS] { "cseq": "1", "transport": "reuse_connection=0;preferred_delivery_protocol=interleaved;proxy_url_suffix=STREAM:b10829c1-f61c-4f67-a30f-dc3dd578d447" } 2020-01-21T22:43:03.677Z [DEBUG] <RTSP-PROXY> [RESPONSE] <-- [200 (OK)] <cseq=1> (session=undefined) 2020-01-21T22:43:03.677Z [TRACE] <RTSP-PROXY> [RESPONSE] <-- [HEADERS] { "cseq": "1", "date": "Tue, Jan 21 2020 22:43:03 GMT" } 2020-01-21T22:43:10.654Z [INFO] [RTSP PROXY] STREAM [Demo Proxy/PRIMARY] WILL BE DE-REGISTERED IN 4 MINUTES 2020-01-21T22:44:10.653Z [INFO] [RTSP PROXY] STREAM [Demo Proxy/PRIMARY] WILL BE DE-REGISTERED IN 3 MINUTES 2020-01-21T22:45:10.654Z [INFO] [RTSP PROXY] STREAM [Demo Proxy/PRIMARY] WILL BE DE-REGISTERED IN 2 MINUTES 2020-01-21T22:46:10.653Z [INFO] [RTSP PROXY] STREAM [Demo Proxy/PRIMARY] WILL BE DE-REGISTERED IN 1 MINUTES 2020-01-21T22:47:10.654Z [INFO] [RTSP PROXY] DE-REGISTERING STREAM [Demo Proxy/PRIMARY]; NO LONGER IN USE 2020-01-21T22:47:10.658Z [DEBUG] <RTSP-PROXY> [REQUEST] --> [DEREGISTER] rtsp://demo.mproxy.io:554/test 2020-01-21T22:47:10.659Z [TRACE] <RTSP-PROXY> [REQUEST] --> [HEADERS] { "cseq": "1", "transport": "reuse_connection=0;preferred_delivery_protocol=interleaved;proxy_url_suffix=STREAM:b10829c1-f61c-4f67-a30f-dc3dd578d447" } 2020-01-21T22:47:10.659Z [DEBUG] <RTSP-PROXY> [RESPONSE] <-- [200 (OK)] <cseq=1> (session=undefined) 2020-01-21T22:47:10.659Z [TRACE] <RTSP-PROXY> [RESPONSE] <-- [HEADERS] { "cseq": "1", "date": "Tue, Jan 21 2020 22:47:10 GMT" }
Here is the corresponding logs from Monocle WebUI
[ { "timestamp": "2020-01-21T22:43:03.709Z", "request": "InitializeCameraStreams", "response": [ { "uri": "rtsp://demo.mproxy.io:554/test", "proxy": "rtsp://46224620-b4e1-424d-abce-1ddb866d01f8.mproxy.io:443/STREAM:b10829c1-f61c-4f67-a30f-dc3dd578d447?session=f3915c4d-2a2c-4325-9ba6-d5738a36875c", "resolution": { "width": "1920", "height": "1080" }, "authorizationType": "NONE", "videoCodec": "H264", "audioCodec": "NONE", "protocol": "RTSP" } ] },
-
Can you revert back to the URL
rtsp://demo.mproxy.io:443/test
and test again both with and without the@noproxy
tag. I’m just trying to isolate the issue and make sure we are working on the exact breakdown.If it’s absolutely working with tag
@noproxy
and definitely not working with no tags, then that points to a new issue we have never seen before. But it’s a clue and possibly we can move to the next diagnostics step once this is confirmed.Thanks, Robert
-
After confirming the steps above in my last post, you can move forward and try RTSP URL:
rtsp://demo.mproxy.io:554/test
and include both of the following tags:@noproxy, @tunnel
and lets see if anything new shows up in the gateway log.If the key to getting this working is the tag
@noproxy
, then I suspect I know what the issue is. Tag@noproxy
tells our servers NOT to use a RTSP REDIRECT. In fact, I should change it to@noredirect
to avoid confusion because the word “proxy” in this case means something different than the @proxy used with the gateway. This issue has never come up before and we have never shared this tag for use until now. By default we use a RTSP redirection stage as this was the original working implementation method before Amazon started implementing stricter and stricter access policies.Thanks, Robert
-
Yes, i have 2 demo cameras in my configuration
The Direct one that isn’t using the gateway is the first camera that i have gotten to work at all. I am 100% positive that it is working using the @noproxy and as soon as i remove that it stops working
-
I will configure Demo Proxy with @noproxy, @tunnel and see what happens
-
So i tried Demo Proxy (should rename that to Demo Gateway)
I tried with a combination of
- @noproxy, @tunnel
- @noproxy, @proxy
- @noproxy, @proxy-tcp
Interestingly enough i didn’t get anything in the monocle gateway logs
I read a note somewhere that said the demo stream only works with proxy-tcp and not proxy or tunnel tags
for all 3 Alexa attempts to load the stream and then says “Sorry, Something Went Wrong”