Moode Audio Player for Raspberry Pi

Hi Mike,

Thats kind of cool.

Do you have web-console working in moOde?

-Tim

I haven't tried it with MoOde, but have used other php-based with cnc/laser/3D printer front ends, for talking to controllers (these days almost all the hobby and semi-Pro boards use some form of Linux. I have a Mac, so use ssh, mostly, but given the number of windows users and microsoft's unfathomable aversion to bash/ssh, it seemed like a worthwhile add-on.

Could have a few helpful commands alongside (ls, cd, lsblk, lsusb, cat, tail, nano, sudo, etc.) as well as the key locations for files to help them along.

Not looking for a big or full-function window, just enough for reading a file, cut and paste between Windows and HTML (which can be a pain using windows utilities), a bit of fault-finding.
 
Last edited:
So I said



Then again, maybe I got it right the first time. I just read through the FAQs and found a response to a user asking about non-shell commands in Web Console:



I'm not sure I fully understand the author's description of the problem, but the solution he offers is not good news. Expect is a great tool (full disclosure: I used to work in the same institute as its author, Don Libes) but one would have to put in a fair bit of work to develop the Expect scripts needed to glue web-console to sqlite3, say, not to mention that Expect is a tcl/tk program.

Regards,
Kent

This is common with a lot of the web consoles I've seen - can execute any command-line prog, but not a tty/console app, like vi, nano, etc.

That was the first one I found, I'm not wedded to it. I wasn't sure what underlying web tech Tim has plumbed in and am not familiar with lighttpd or it's functionality.

If I was doing it on a LAMP box, I would go for a java solution, like wetty: https://github.com/krishnasrinivas/wetty
 
Last edited:
Hi all,

I stumbled over a nice feature in Radio Paradise:
They Play Slideshows to their Songs.

https://www.radioparadise.com/rp_2s.php

Would it be possible to add this to Moode ?

I have Moode running in the chromium browser on the official Raspberry Display.

Bifi

That sounds very much a one-off special case. However, I would love to be able to to click somewhere while listening to a radio station to take me to the station's homepage

Phil
 
This is common with a lot of the web consoles I've seen - can execute any command-line prog, but not a tty/console app, like vi, nano, etc.

That was the first one I found, I'm not wedded to it. I wasn't sure what underlying web tech Tim has plumbed in and am not familiar with lighttpd or it's functionality.

If I was doing it on a LAMP box, I would go for a java solution, like wetty: https://github.com/krishnasrinivas/wetty

Hi, Mike.

You're a step ahead of me. I hadn't even thought about the possibility until you brought it up.

As for wetty, I was about to say I'm not in favor of a java solution, but skimming the wetty site it looks like it uses javascript. It goes on my list of possibilities.

I started looked for other solutions, though, and guess what? There's one already available in the debian repo called shellinabox. It installed on my moOde Player with a simple sudo apt-get install shellinabox. To the client browser, it is a service displayed as a VT100 emulator, implemented as an AJAX web application.

The attached screen capture from my PC shows the result of my first attempt running it as a separate webserver listening to its default port 4200 and paying no attention to ssl issues. Like webconsole, it requires no modification to my browser (other than it be javascript and css enabled). Unlike webconsole, it is a true terminal.

This looks pretty good already. It seems to me there are two configurations possible for moOde Player
  1. as is, accessing it through its own port
  2. as a menu item in moOde Player, accessing it as a proxied server behind the existing nginx server.

I personally favor the first choice. I think it's too fiddly to make it a normal user function, but that's just me. In any case, it's up to Tim what, if anything, should be done with it.

I was able to access this using Google Chrome and Mozilla Firefox browsers. Don't have a Windows machine within reach to try Microsoft IE/Edge nor a MacOS/iOS machine to try Safari.

As a final test, I tried accessing it from my Android phone and Android tablet using Chrome and Firefox. The terminal comes up but I had trouble logging in because the damn auto-correct function was gratuitously capitalizing and otherwise diddling with my username and password entries. Drilling down through the Android settings to turn off this helpful behavior is a real PITA.

Regards,
Kent
 

Attachments

  • shellinabox-0.png
    shellinabox-0.png
    133.8 KB · Views: 232
That sounds very much a one-off special case. However, I would love to be able to to click somewhere while listening to a radio station to take me to the station's homepage

Phil

Hi Phil,

Kind of a neat idea. I'll add to moOde 4.0 TODO list. It will require adding a homepage column to cfg_radio table and then putting a "Station Home Page" link somewhere on the Playback panel.

Currently, if you click on the cover art image a separate Browser window will open containing a Google search of Album / Artist.

-Tim
 
Hi, Mike.

You're a step ahead of me. I hadn't even thought about the possibility until you brought it up.

As for wetty, I was about to say I'm not in favor of a java solution, but skimming the wetty site it looks like it uses javascript. It goes on my list of possibilities.

I started looked for other solutions, though, and guess what? There's one already available in the debian repo called shellinabox. It installed on my moOde Player with a simple sudo apt-get install shellinabox. To the client browser, it is a service displayed as a VT100 emulator, implemented as an AJAX web application.

The attached screen capture from my PC shows the result of my first attempt running it as a separate webserver listening to its default port 4200 and paying no attention to ssl issues. Like webconsole, it requires no modification to my browser (other than it be javascript and css enabled). Unlike webconsole, it is a true terminal.

This looks pretty good already. It seems to me there are two configurations possible for moOde Player
  1. as is, accessing it through its own port
  2. as a menu item in moOde Player, accessing it as a proxied server behind the existing nginx server.

I personally favor the first choice. I think it's too fiddly to make it a normal user function, but that's just me. In any case, it's up to Tim what, if anything, should be done with it.

I was able to access this using Google Chrome and Mozilla Firefox browsers. Don't have a Windows machine within reach to try Microsoft IE/Edge nor a MacOS/iOS machine to try Safari.

As a final test, I tried accessing it from my Android phone and Android tablet using Chrome and Firefox. The terminal comes up but I had trouble logging in because the damn auto-correct function was gratuitously capitalizing and otherwise diddling with my username and password entries. Drilling down through the Android settings to turn off this helpful behavior is a real PITA.

Regards,
Kent

Hi Kent,

Can you tail -f the mpd log using shellinabox, or run nano editor?

-Tim
 
Given that some of my IT knowledge is limited to "Capcoms Street Fighter II" and the "Leisure Suit Larry" experience...
For Ver 3.81...does anyone know if this code will "take away" from the audio quality of the software ?

Its with the aim of using the Pi with the audiophonics DAC and power management.

---------------
Sudo apt-get install python-setuptools
Sudo easy_install pip
Sudo apt-get update
Sudo apt-get install -t jessie python-dev
Sudo pip install time && sudo pip install pylms && sudo pip install python-mpd2
Sudo apt-get install wiringPi

If this is all good, and doesnt mess things up... i'm about to go drop a 10.
 
Last edited:
Can't rely see any benefit of embedded console over putty or juicessh

For those of us running a *nix system (including Mac OS, apparently) this is a non-issue.

For users of Android and iOS devices there are solutions in the respective app stores. For users of Microsoft Windows there are putty.exe and alternatives; with Windows 10 there's even the Windows Subsystem for Linux (WSL).

The question is, should users have to install these solutions? With this approach, they don't have to.

I'm a life-long hacker who lives for technical arcana. No one related to me does.

Regards,
Kent
 
Got around the paypal browser out of date hurdle...
Looking foward to trying the new code out.

Would this be something for the todo list ? :D
An externally hosted image should be here but it was not working when we last tested it.


dhcp would mean i wont need to run TFTPD32 and i can just plug the thing in. Could not get 3.1 going with a static IP for some reason.
 
Last edited: