Jopyth / MMM-Remote-Control

Magic Mirror Module to shutdown or configure your mirror
MIT License
498 stars 149 forks source link

Restart MagicMirror Not working #270

Closed CitysGrill closed 2 years ago

CitysGrill commented 2 years ago

OS

OS: Raspibian

NodeJS Version

14.18.1

MagicMirror Version

2.17.1

Remote Control Version

2.36

Did you try using just Remote Control alone with MM?

Description

{ "success": false, "status": "error", "reason": "PM2 not installed or unlinked", "info": { "code": "MODULE_NOT_FOUND", "requireStack": [ "/home/pi/MagicMirror/modules/MMM-Remote-Control/node_helper.js", "/home/pi/MagicMirror/js/app.js", "/home/pi/MagicMirror/js/electron.js", "/home/pi/MagicMirror/node_modules/electron/dist/resources/default_app.asar/main.js", null ] } }

Expected behavior

restart app Magic Mirror

Current behavior

Error

Possible solution

No response

Steps to reproduce

install pm2

Log

{
   "success": false,
   "status": "error",
   "reason": "PM2 not installed or unlinked",
   "info": {
      "code": "MODULE_NOT_FOUND",
      "requireStack": [
         "/home/pi/MagicMirror/modules/MMM-Remote-Control/node_helper.js",
         "/home/pi/MagicMirror/js/app.js",
         "/home/pi/MagicMirror/js/electron.js",
         "/home/pi/MagicMirror/node_modules/electron/dist/resources/default_app.asar/main.js",
         null
      ]
   }
}

config.js

/* Magic Mirror Config Sample
 *
 * By Michael Teeuw https://michaelteeuw.nl
 * MIT Licensed.
 *
 * For more information on how you can configure this file
 * see https://docs.magicmirror.builders/getting-started/configuration.html#general
 * and https://docs.magicmirror.builders/modules/configuration.html
 */
let config = {
    //address: "localhost",     // Address to listen on, can be:
    address: "0.0.0.0",     // Address to listen on, can be:
                            // - "localhost", "127.0.0.1", "::1" to listen on loopback interface
                            // - another specific IPv4/6 to listen on a specific interface
                            // - "0.0.0.0", "::" to listen on any interface
                            // Default, when address config is left out or empty, is "localhost"
    port: 8080,
    basePath: "/",  // The URL path where MagicMirror is hosted. If you are using a Reverse proxy
                    // you must set the sub path here. basePath must end with a /
    //ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"],    // Set [] to allow all IP addresses
    ipWhitelist: [],    // Set [] to allow all IP addresses
                                                            // or add a specific IPv4 of 192.168.1.5 :
                                                            // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
                                                            // or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
                                                            // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],

    useHttps: false,        // Support HTTPS or not, default "false" will use HTTP
    httpsPrivateKey: "",    // HTTPS private key path, only require when useHttps is true
    httpsCertificate: "",   // HTTPS Certificate path, only require when useHttps is true

    language: "pt-br",
    locale: "pt-br",
    logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
    timeFormat: 24,
    units: "metric",
    // serverOnly:  true/false/"local" ,
    // local for armv6l processors, default
    //   starts serveronly and then starts chrome browser
    // false, default for all NON-armv6l devices
    // true, force serveronly mode, because you want to.. no UI on this device

    modules: [
        {
            module: "alert",
        },
        {
            module: "updatenotification",
            position: "top_bar"
        },
        {
            module: "clock",
            position: "top_left",
            config: {
                dateFormat: "ddd, LL"
            }
        },
        {
            module: "calendar",
            header: "Calendário",
            position: "top_left",
            config: {
                fetchInterval: "1000",
                calendars: [
                    {
                        symbol: "calendar-check",
                        url: "xxxxxx"
                    },
                    {
                        symbol: "building",
                        url: "xxxxxx"
                    }
                ]
            }
        },
        {
            module: "compliments",
            position: "lower_third"
        },
        {
            module: "weather",
            position: "top_right",
            config: {
                weatherProvider: "openweathermap",
                type: "current",
                location: "São Paulo",
                locationID: "3448439", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                apiKey: "xxxxxx"
            }
        },
        {
            module: "weather",
            position: "top_right",
            header: "Weather Forecast",
            config: {
                weatherProvider: "openweathermap",
                type: "forecast",
                location: "São Paulo",
                locationID: "3448439", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                apiKey: "xxxxxx"
            }
        },
        {
            module: 'MMM-Remote-Control',
            // uncomment the following line to show the URL of the remote control on the mirror
            // position: 'bottom_left',
            // you can hide this module afterwards from the remote control itself
            config: {
                customCommand: {},  // Optional, See "Using Custom Commands" below
                showModuleApiMenu: true, // Optional, Enable the Module Controls menu
                secureEndpoints: true, // Optional, See API/README.md
                // uncomment any of the lines below if you're gonna use it
                // customMenu: "custom_menu.json", // Optional, See "Custom Menu Items" below
                // apiKey: "", // Optional, See API/README.md for details
                // classes: {} // Optional, See "Custom Classes" below
            }
        },
        {
            module: "newsfeed",
            position: "bottom_bar",
            config: {
                feeds: [
                    {
                        title: "Brasil",
                        url: "http://g1.globo.com/dynamo/brasil/rss2.xml"
                    },
                    {
                        title: "Mundo",
                        url: "http://g1.globo.com/dynamo/rss2.xml",
                    }
                ],
                showSourceTitle: true,
                showPublishDate: true,
                broadcastNewsFeeds: true,
                broadcastNewsUpdates: true
            }
        },
    ]
};

/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {module.exports = config;}

Additional info

@ezeholz: Deleted personal apiKeys

ezeholz commented 2 years ago

Refer to FAQ to resolve this issue. If you need more help, feel free to answer this issue.

Keep Coding! :D