kylejohnson / Patiobar

A web frontend for pianobar, which is a CLI frontend for Pandora.
MIT License
62 stars 22 forks source link

Crashes after connecting to web interface #1

Closed parkerlreed closed 10 years ago

parkerlreed commented 10 years ago
[parker@localhost Patiobar]$ node index.js 
a user connected

fs.js:432
  return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
                 ^
Error: ENOENT, no such file or directory '/home/parker/currentSong'
    at Object.fs.openSync (fs.js:432:18)
    at Object.fs.readFileSync (fs.js:289:15)
    at readCurrentSong (/home/parker/build/Patiobar/index.js:15:23)
    at Namespace.<anonymous> (/home/parker/build/Patiobar/index.js:62:2)
    at Namespace.emit (events.js:95:17)
    at Namespace.emit (/home/parker/build/Patiobar/node_modules/socket.io/lib/namespace.js:205:10)
    at /home/parker/build/Patiobar/node_modules/socket.io/lib/namespace.js:172:14
    at process._tickCallback (node.js:419:13)

My Patiobar folder is ~/build/Patiobar

parkerlreed commented 10 years ago

Ohhh so this expects pianobar to be run from ~/

|>  Station "Today's Country Radio" (346203075956917773)
rm: cannot remove ‘/run/media/parker/B056-729D/DCIM/103CANON/stationList’: No such file or directory
(i) Receiving new playlist... Ok.

It had dumped the current song and info to the folder I was in

[parker@localhost 103CANON]$ ls 
currentSong   IMG_2773.JPG  IMG_4130.JPG  IMG_4132.JPG  IMG_4134.JPG  IMG_4136.JPG  IMG_4138.JPG  mon.png       
IMG_2772.JPG  IMG_2774.JPG  IMG_4131.JPG  IMG_4133.JPG  IMG_4135.JPG  IMG_4137.JPG  mon.jpg       stationList   

Wouldn't it just be better to put those files in ~/.config/pianobar/ instaed of $pwd of pianobar?

parkerlreed commented 10 years ago

Huh even when running it from ~/ I get

[parker@localhost Patiobar]$ node index.js 
a user connected

fs.js:432
  return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
                 ^
Error: ENOENT, no such file or directory '/home/parker/stationList'
    at Object.fs.openSync (fs.js:432:18)
    at Object.fs.readFileSync (fs.js:289:15)
    at readStations (/home/parker/build/Patiobar/index.js:55:20)
    at Namespace.<anonymous> (/home/parker/build/Patiobar/index.js:63:2)
    at Namespace.emit (events.js:95:17)
    at Namespace.emit (/home/parker/build/Patiobar/node_modules/socket.io/lib/namespace.js:205:10)
    at /home/parker/build/Patiobar/node_modules/socket.io/lib/namespace.js:172:14
    at process._tickCallback (node.js:419:13)
parkerlreed commented 10 years ago

Ok after skipping a few songs in pianobar it seems to have created the file but Chrome on Android isn't controlling it at all. The right ctl file is mentioned. Sorry for the repated posts. I need to start using the edit function, heh.

kylejohnson commented 10 years ago

Hey there, and thanks for the report.

You're right, I should probably move these files into ~/.config/pianobar/

I also just experienced the issue where it takes a few songs in order to create the stationList and currentSong files, will look into it.

As for chrome, I hadn't tested but just have - doesn't work for me on Android either. Will look into it.

kylejohnson commented 10 years ago

commit 5d6346c489fb90d27275a50a29fd70e62b1592b6 should allow support for Android Chrome

kylejohnson commented 10 years ago

Alright - commit cc166ee6569361abca40cf8e5038e1488ab4eb59 should address currentSong and stationList not being created, as well as moving them into ~/.config/pianobar/. Closing this for now - feel free to reopen or report any additional issues.

Thanks for the report!

parkerlreed commented 10 years ago

Just pulled latest. Controlling from Firefox on the same computer works great but Chrome on Android still doesn't show artwork and doesn't control. Oh I am on chrome Beta if that makes a difference. Sorry for not mentioning.

parkerlreed commented 10 years ago

Works great on stock browser though! Thanks for this project. Wonder what Chrome is doing that isn't working.

kylejohnson commented 10 years ago

Strange. It works fine on my Nexus 5 with both the latest Chrome and Firefox. It also works on my iPad.