Add JS Code to the Mirror



  • i have the following problem, i want to show the current playing song from mopidy, so i install the MMM-MPD module, but it shows me only a play button, nothing else. So i try another way and i found this code in the web:

    https://pastebin.com/7e40507n

    Now my problem is, when i open the file:

    file:///home/pi/MagicMirror/modules/test/mopidy.html
    

    it shows exactly that output i want to see.
    But if i open:

    localhost:8080/modules/test/mopidy.html
    

    or try to put the code in the index.html it shows me nothing. Can anyone help me to find out, what is blocking the code? Thanks!



  • This post is deleted!


  • This post is deleted!


  • So, u need to change the HTML returned by MMM-MPD to look like the HTML in the file. But only the section that is your real user interface.

    See the getDom() function which would build the html.



  • No, i want to show the current playing Track from mopidy.

    Either by MMM-MPD (i didn‘t get to work)
    Or by the Code i found on the web ( i didn‘t get to work)



  • @stro MagicMirror is a web page.
    It displays html. The modules generate a small section matching their requirements, and mm injects that onto the page in the configured position.

    The module can get it’s data from anywhere. API, file system, database.

    You have an API, which returns data, not html. Some code has to convert the data into displayable html



  • @sdetweil thanks for helping me.

    I have the code (pastebin) who put the data, i‘m looking for, in a HTML Output. If i open the html file like this

    file:///home/pi/MagicMirror/modules/test/mopidy.html
    

    everything is okay.

    But if open this HTML File with the Mirrorpath like this:

    localhost:8080/modules/test/mopidy.html
    

    It shows me nothing. And i wonder why.



  • @stro open the developers window, ctrl-shift-i, select the console tab and scroll up to see any errors



  • Check your

    mopidy.conf

    located at:

    ~/.config/mopidy/mopidy.conf
    

    Look for this section:

    [http]
    enabled = true
    hostname = 127.0.0.1
    port = 6680
    static_dir =
    zeroconf = Mopidy HTTP server on $hostname
    allowed_origins =
    csrf_protection = true
    

    Take note of the hostname part.
    If your’s looks like the above instead of using localhost in the url, use the ip address or host name of the mirror.

    Examples:
    mirror.local:8080/modules/test/mopidy.html
    or
    10.x.x.x:8080/modules/test/mopidy.html

    I tested the code you posted on pastebin and it works as expected for me.
    Only tested using the hostname of the Mirror from external browser. Not locally on the machine.



  • I was able to solve that problem.
    MPD port was double busy. Apparently 2 instances of Mopidy were running.

    Now the module MMM-MPD runs under a few specials:

    During the installation the folder name has to be changed according to the config file.
    The config file value maxRows must not be 0!
    The display will only update after a song change!

    It was hard to find this specifics, but I thank everyone for the help!