NoRulesJustFeels / Fling

Fling media to a ChromeCast device
351 stars 53 forks source link

Response code 404 from RampClient #22

Open DwayneSmurdon opened 10 years ago

DwayneSmurdon commented 10 years ago

Hello,

First, thanks for working on this application. I hope to get it running and perhaps contribute myself. Could you please help debug this issue?

Fling: Fling version 0.6 Fling: Windows 7 Fling: Found VLC at windows location 2: C:/Users/dwayne/Downloads/vlc-2.1.0-win64/vlc-2.1.0 Fling: VLC available Fling: set to system default LaF Fling: createAndShowGUI FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FlingFrame: Started web server on port 8080 Nov 10, 2013 12:27:46 AM com.entertailion.java.fling.Log i INFO: BroadcastDiscoveryClient: Starting client on address /239.255.255.250 Nov 10, 2013 12:27:46 AM com.entertailion.java.fling.Log i INFO: BroadcastDiscoveryClient: Broadcast client thread starting. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. FileDrop: Hierarchy changed. FileDrop: Drop target added to component. BroadcastDiscoveryClient: response=HTTP/1.1 200 OK CACHE-CONTROL: max-age=1800 DATE: Sun, 10 Nov 2013 06:27:52 GMT EXT: LOCATION: http://192.168.0.3:8008/ssdp/device-desc.xml OPT: "http://schemas.upnp.org/upnp/1/0/"; ns=01 01-NLS: b398bdae-1dd1-11b2-b693-ceac539c66ee SERVER: Linux/3.8.13, UPnP/1.0, Portable SDK for UPnP devices/1.6.18 X-User-Agent: redsonic ST: urn:dial-multiscreen-org:service:dial:1 USN: uuid:b9615bb5-872a-de1a-1838-e1e6aaebaa2c::urn:dial-multiscreen-org:service:dial:1 BOOTID.UPNP.ORG: 40 CONFIGID.UPNP.ORG: 1

BroadcastDiscoveryClient: tokens.length=13 FlingFrame: location=http://192.168.0.3:8008/ssdp/device-desc.xml FlingFrame: appsUrl=http://192.168.0.3:8008/apps/ FlingFrame: modelName=Eureka Dongle FlingFrame: ChromeCast device found: 192.168.0.3 FlingFrame: size=1 Nov 10, 2013 12:28:01 AM com.entertailion.java.fling.Log i INFO: BroadcastDiscoveryClient: Exiting client loop. FileDrop: dragEnter event. FileDrop: normal border saved. FileDrop: drag border set. FileDrop: event accepted. FileDrop: dragExit event. FileDrop: normal border restored. FileDrop: dragEnter event. FileDrop: normal border saved. FileDrop: drag border set. FileDrop: event accepted. FileDrop: drop event. FileDrop: file list accepted. DragHereIcon: G:\downloads\Boardwalk.Empire.S01.DVDRip.XviD-REWARD\boardwalk.empire.s01e03.dvdrip.xvid-reward.avi FlingFrame: sendMediaUrl=G:\downloads\Boardwalk.Empire.S01.DVDRip.XviD-REWARD\boardwalk.empire.s01e03.dvdrip.xvid-reward.avi FlingFrame: Available port for VLC: 8081 FlingFrame: prefix=192. FlingFrame: interface=lo FlingFrame: address=/127.0.0.1 FlingFrame: address=/0:0:0:0:0:0:0:1 FlingFrame: interface=net0 FlingFrame: interface=net1 FlingFrame: interface=net2 FlingFrame: interface=ppp0 FlingFrame: interface=eth0 FlingFrame: interface=eth1 FlingFrame: interface=eth2 FlingFrame: interface=ppp1 FlingFrame: interface=net3 FlingFrame: interface=eth3 FlingFrame: address=/fe80:0:0:0:5824:26ff:7bcf:f01e%11 FlingFrame: interface=net4 FlingFrame: address=/192.168.0.4 FlingFrame: networkAddress=/192.168.0.4 FlingFrame: url=http://192.168.0.4:8081/cast.webm RampClient: device=http://192.168.0.3:8008 RampClient: apps url=http://192.168.0.3:8008/apps/ RampClient: get response code=200 RampClient: lastUrl=http://192.168.0.3:8008/apps/00000000-0000-0000-0000-000000000000 RampClient: get response=<?xml version="1.0" encoding="UTF-8"?>

00000000-0000-0000-0000-000000000000 running RampClient: Content-Type=application/xml RampClient: Content-Length=323 RampClient: delete response code=200 RampClient: delete response= RampClient: get response code=404 RampClient: get response= FileDrop: drop complete. FileDrop: normal border restored. -=-= end log -=-= Is that 404 from RampClient indicative of a problem? Also, when I see "RampClient: lastUrl=http://192.168.0.3:8008/apps/00000000-0000-0000-0000-000000000000" in the logs, should all of these 0's instead my my APP ID? I have a few APP ID's and I want to make sure I'm using the right one. I didn't include the entire APP ID for obvious reasons. I wasn't sure if we needed to include the port # when we requested the whitelisting, so I did one without. ...b293 -> http://192.168.0.2:8080/index.html ...b293_1 -> http://192.168.0.3:8080/index.html ...b293_2 -> http://192.168.0.4:8080/index.html ...b293_3 -> http://192.168.0.2/index.html ChromeCast will always be 192.168.0.3 and the computer I'm running on is usually 192.168.0.2 (I can reserve that IP for my MAC address, but I haven't yet). I can can manually connect to that URL above, but it is obviously unreadable...and seems to keep sending data. Finally -- and this could be important, I am running this from inside Eclipse. This worries me because it might have trouble finding my index.html file (perhaps others, too?). I dropped a copy into my project root folder (because this is often my current working directory). Thanks, -Dwayne
DwayneSmurdon commented 10 years ago

Oops. I found out that I needed to also put my APP ID in FlingFrame.java as well. So, it has changed the screen on my TV, but I have yet to see the video come out yet. My console in Eclipse seems to be in a loop with the following output (I edited out my full app id, but you can see "...b293_2":

RampClient: connectionServiceUrl=null
RampClient: protocol=null
http://192.168.0.3:8008/apps/...b293_2
RampClient: get response code=200
RampClient: get response=<?xml version="1.0" encoding="UTF-8"?>
<service xmlns="urn:dial-multiscreen-org:schemas:dial">
  <name>...b293_2</name>
  <options allowStop="true"/>
  <state>running</state>
  <link rel="run" href="web-18"/>
  <servicedata xmlns="urn:chrome.google.com:cast">
  </servicedata>
</service>

RampClient: state=running
RampClient: connectionServiceUrl=null
RampClient: protocol=null
http://192.168.0.3:8008/apps/...b293_2
RampClient: get response code=200
RampClient: get response=<?xml version="1.0" encoding="UTF-8"?>
<service xmlns="urn:dial-multiscreen-org:schemas:dial">
  <name>....b293_2</name>
  <options allowStop="true"/>
  <state>running</state>
  <link rel="run" href="web-18"/>
  <servicedata xmlns="urn:chrome.google.com:cast">
  </servicedata>
</service>

RampClient: state=running
RampClient: connectionServiceUrl=null
RampClient: protocol=null
NoRulesJustFeels commented 10 years ago

It is important that the Chromecast device is able to load the receiver HTML file on your network. Its not clear from your description if you have a dedicated web server on a computer with a static IP address.

DwayneSmurdon commented 10 years ago

Well, it's on DHCP (for now) because it's my laptop. However, I did change my app ID to match the currently assigned IP address. Nonetheless, I will configure my router to reserve an IP for my laptop's MAC address and try it all again.

What I can tell you is that on my TV I saw two scroll bars: along the bottom and on the far right -- but the rest was a black string. I did check and VLC is able to properly play my test file. Should I start with a smaller test file while debugging?

NoRulesJustFeels commented 10 years ago

Point the Chrome browser to port 9222 of the Chromecast device and use the Chrome debug tools to get more visibility on what is happening on the Chromecast device.