Read the statement by Michael Teeuw here.
How to send a notification
-
@alyx no after u get a static IP, and your mm config.js has
address:"0.0.0.0", ipWhitelist:[],
to allow incoming connections from outside the pi machine
it should work
-
@sdetweil I did that but still isnt working
-
@alyx sorry, don’t know how u to debug this. it’s really hard
you config works perfectly here
your devices are found (that means the module is running) and the ssdp discovery workednow alexa will call back at the server (MM system) ip address and port for each switch
which goes into the node_helper and is then sent up to the modulename.js to send to other modules -
@sdetweil hmmmm would you think it has something to do with my static IP?
I did the whole thing via my interfaces file and then reserved an IP in my router for it also.
Edit: I did the static in in the DHCP file. Interfaces is just to activate my USB network adapter (PI OS on desktop)
-
@sdetweil ok so I removed my static IP and the Alexa features are working again well some…
Also rebooted there with no luck and deleted the devices and repaired… The monitor on/off is working but the selfie shoot isnt. I checked the dev panel and the notification isnt being received and alexa is saying its not responsive?
-
@alyx if it’s not responsive, that means the little web server Alexa is calling didn’t work
that is the port you set in the notification definition
when you start mm, there are messages that say which ports are listening
that is the info Alexa records on Alexa discover devices
-
@sdetweil yes makes sense and no I cant see any indication of a port opening up for any devices even.
Dev Console tab on MM
main.js:481 Initializing MagicMirror. translator.js:128 Loading core translation file: translations/en.json translator.js:146 Loading core translation fallback file: translations/en.json loader.js:184 Load script: modules/MMM-Config/MMM-Config.js module.js:509 Module registered: MMM-Config MMM-Config.js:31 undefined is in init! loader.js:155 Bootstrapping module: MMM-Config loader.js:160 Scripts loaded for: MMM-Config loader.js:203 Load stylesheet: modules/MMM-Config/MMM-Config.css loader.js:162 Styles loaded for: MMM-Config translator.js:107 MMM-Config - Load translationfalse: translations/en.json loader.js:164 Translations loaded for: MMM-Config loader.js:184 Load script: modules/MMM-AlexaControl/MMM-AlexaControl.js module.js:509 Module registered: MMM-AlexaControl loader.js:155 Bootstrapping module: MMM-AlexaControl loader.js:160 Scripts loaded for: MMM-AlexaControl loader.js:162 Styles loaded for: MMM-AlexaControl translator.js:107 MMM-AlexaControl - Load translationfalse: translations/en.json loader.js:164 Translations loaded for: MMM-AlexaControl loader.js:184 Load script: modules/MMM-SleepWake/MMM-SleepWake.js module.js:509 Module registered: MMM-SleepWake loader.js:155 Bootstrapping module: MMM-SleepWake loader.js:160 Scripts loaded for: MMM-SleepWake loader.js:162 Styles loaded for: MMM-SleepWake loader.js:164 Translations loaded for: MMM-SleepWake loader.js:184 Load script: modules/MMM-pages/MMM-pages.js module.js:509 Module registered: MMM-pages loader.js:155 Bootstrapping module: MMM-pages loader.js:160 Scripts loaded for: MMM-pages loader.js:203 Load stylesheet: modules/MMM-pages/pages.css loader.js:162 Styles loaded for: MMM-pages loader.js:164 Translations loaded for: MMM-pages loader.js:184 Load script: modules/MMM-page-indicator/MMM-page-indicator.js module.js:509 Module registered: MMM-page-indicator loader.js:155 Bootstrapping module: MMM-page-indicator loader.js:160 Scripts loaded for: MMM-page-indicator loader.js:203 Load stylesheet: vendor/css/font-awesome.css loader.js:203 Load stylesheet: modules/MMM-page-indicator/page-indicators.css loader.js:162 Styles loaded for: MMM-page-indicator loader.js:164 Translations loaded for: MMM-page-indicator loader.js:184 Load script: modules/MMM-Selfieshot/MMM-Selfieshot.js module.js:509 Module registered: MMM-Selfieshot loader.js:155 Bootstrapping module: MMM-Selfieshot loader.js:160 Scripts loaded for: MMM-Selfieshot loader.js:203 Load stylesheet: modules/MMM-Selfieshot/MMM-Selfieshot.css loader.js:244 File already loaded: font-awesome.css loader.js:162 Styles loaded for: MMM-Selfieshot loader.js:164 Translations loaded for: MMM-Selfieshot loader.js:184 Load script: modules/MMM-Astro/MMM-Astro.js module.js:509 Module registered: MMM-Astro loader.js:155 Bootstrapping module: MMM-Astro loader.js:184 Load script: vendor/node_modules/moment/min/moment-with-locales.js loader.js:160 Scripts loaded for: MMM-Astro loader.js:203 Load stylesheet: modules/MMM-Astro/MMM-Astro.css loader.js:162 Styles loaded for: MMM-Astro loader.js:164 Translations loaded for: MMM-Astro loader.js:184 Load script: modules/MMM-MoonPhase/MMM-MoonPhase.js module.js:501 Check MagicMirror version for module 'MMM-MoonPhase' - Minimum version: 2.1.0 - Current version: 2.17.1 module.js:503 Version is ok! module.js:509 Module registered: MMM-MoonPhase loader.js:155 Bootstrapping module: MMM-MoonPhase loader.js:160 Scripts loaded for: MMM-MoonPhase loader.js:203 Load stylesheet: modules/MMM-MoonPhase/MMM-MoonPhase.css loader.js:162 Styles loaded for: MMM-MoonPhase translator.js:107 MMM-MoonPhase - Load translationfalse: translations/en.json loader.js:164 Translations loaded for: MMM-MoonPhase loader.js:184 Load script: modules/MMM-OpenWeatherMapForecast/MMM-OpenWeatherMapForecast.js module.js:501 Check MagicMirror version for module 'MMM-OpenWeatherMapForecast' - Minimum version: 2.2.0 - Current version: 2.17.1 module.js:503 Version is ok! module.js:509 Module registered: MMM-OpenWeatherMapForecast loader.js:155 Bootstrapping module: MMM-OpenWeatherMapForecast loader.js:244 File already loaded: moment.js loader.js:184 Load script: modules/MMM-OpenWeatherMapForecast/skycons.js loader.js:160 Scripts loaded for: MMM-OpenWeatherMapForecast loader.js:203 Load stylesheet: modules/MMM-OpenWeatherMapForecast/MMM-OpenWeatherMapForecast.css loader.js:162 Styles loaded for: MMM-OpenWeatherMapForecast loader.js:164 Translations loaded for: MMM-OpenWeatherMapForecast loader.js:184 Load script: modules/lifecounter/lifecounter.js module.js:509 Module registered: lifecounter loader.js:155 Bootstrapping module: lifecounter loader.js:244 File already loaded: moment.js loader.js:160 Scripts loaded for: lifecounter loader.js:162 Styles loaded for: lifecounter loader.js:164 Translations loaded for: lifecounter loader.js:184 Load script: modules/default/alert/alert.js module.js:509 Module registered: alert loader.js:155 Bootstrapping module: alert loader.js:184 Load script: modules/default/alert/notificationFx.js loader.js:160 Scripts loaded for: alert loader.js:203 Load stylesheet: modules/default/alert/notificationFx.css loader.js:244 File already loaded: font-awesome.css loader.js:162 Styles loaded for: alert translator.js:107 alert - Load translationfalse: translations/en.json loader.js:164 Translations loaded for: alert loader.js:184 Load script: modules/default/clock/clock.js module.js:509 Module registered: clock loader.js:155 Bootstrapping module: clock loader.js:244 File already loaded: moment.js loader.js:184 Load script: vendor/node_modules/moment-timezone/builds/moment-timezone-with-data.js loader.js:184 Load script: vendor/node_modules/suncalc/suncalc.js loader.js:160 Scripts loaded for: clock loader.js:203 Load stylesheet: modules/default/clock/clock_styles.css loader.js:162 Styles loaded for: clock loader.js:164 Translations loaded for: clock loader.js:184 Load script: modules/default/compliments/compliments.js module.js:509 Module registered: compliments loader.js:155 Bootstrapping module: compliments loader.js:244 File already loaded: moment.js loader.js:160 Scripts loaded for: compliments loader.js:162 Styles loaded for: compliments loader.js:164
Snap of Config
let config = { 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: [], // 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: "en", locale: "en-UK", logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging timeFormat: 12, units: "metric", serverOnly: true, // 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: [ { disabled: false, module:"MMM-Config", position:"top_right", // the QR code (if requested) will appear here config:{ showQR: false, //restart: "pm2", //force_update: true, //debug: true } }, { module: 'MMM-AlexaControl', position: 'middle_center', config:{ image: true, deviceName: "mirror", pm2ProcessName: "mm", vcgencmd: "hide", startPort: 11001, refresh: true, restart: true, //stop: true, reboot: true, shutdown: true, monitorToggle: true, //cecAddress: "0.0.0.0", //usb: false pages: 3, notifications:[ { name: 'Selfie', port: 11106, OnOff: false, notification: ["SELFIE_SHOOT"] } ],