• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

[MMM-CommandToNotification] Run scripts and send the outputs as configurable notifications peridocally

Scheduled Pinned Locked Moved Utilities
1 Posts 1 Posters 1.6k Views 1 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • W Offline
    wishmaster270 Module Developer
    last edited by wishmaster270 Aug 20, 2024, 3:03 PM Oct 4, 2022, 12:04 PM

    Description:

    Ever wanted to run scripts periodically and provide their output as notifications?
    Want to run the scripts within different time periods?

    Then MMM-CommandToNotification is your module!

    You can define a base rhythm the module iterates all scripts.
    You can specify skips per script to run scripts only each (skips+1) iterations.
    You can send the output as payload of one or multiple notifications.

    You may want to use my MMM-ValuesByNotification to display the payload.

    Download:

    Download
    [card: Tom-Hirschberger/MMM-CommandToNotification]


    Version 0.0.8

    • added a script called venvWrapper.py which can be used to create a virtual Python environment, install the dependencies of Python scripts to it and call the scripts with the wrapper in the virtual environment
    • the htu21 script now uses the CircuitPython libraries of Adafruit now

    Version 0.0.7

    • scripts in the scripts directory now can be called without adding a additional ./ as prefix, now
    • the module first checks if scripts do exist and if they are executable before trying to call them. If the file is missing or permissions are not set correctly the module prints a log message and skips the command now
    • reduced the console output drastically. Use debug: true config option to re-enable the console output. Errors are printed to console without the debug flag as before

    Version 0.0.6

    • add a debug flag to configuration which enables/disables some console messages
    • added a new dummy example script which simply outputs the content of a text file
    • fixed all issues reported by the new automatic module scanning script developed by @KristjanESPERANTO

    Version 0.0.5

    • Fixed a bug which caused the module to not return output for any command if one of the scripts closes with no output

    Version 0.0.4

    • added sync option to make it possible to configure if the commands should be run one after another or if they should be started as fast as possible
    • added delayNext option which makes it possible to wait a configurable amount of milliseconds before the next command is processed (i.e. if you want to make 10 API calls but the API only supports one connection each second)

    Version 0.0.3

    • fixed the additional parameters like “timeout” being ignored
    • the scripts now will be called with working directory set to “scripts” directory
    • added a new option to send the notifications with custom payloads instead of the output of the script

    Version 0.0.2

    • Added new “conditions” option which causes notifications only be send if the scripts exits with a specified return code and/or the output contains a specified string
    • The flowercare-mm.bash script now returns a JSON instead of JSON5 object
    • Added a script to watch files for changes
    • Added more documentation of the scripts

    Version 0.0.1

    • Specify a period in which the module calls all scripts
    • Configure scripts (with their arguments) to be called and the notifications which the outputs of the scripts should be send to
    • Configure a skip count per script if you do not want the script to be called each iteration
    • Configure a timeout to stop the call of a script if it does not respond within a given time
    • Scripts to query the temperature and humidity information of BME280, DHT11, DHT22, DS18B20 and HTU21 are included
    • A script to query the temperature, moisture, light, conductivity and battery level of Miflora flowercare sensors is included
    • Two scripts to generate either a single random integer or a JSON object which contains a integer and float value are included (for debugging purpose)
    1 Reply Last reply Reply Quote 2
    • S sdetweil referenced this topic on Dec 10, 2022, 1:03 AM
    • 1 / 1
    1 / 1
    • First post
      1/1
      Last post
    Enjoying MagicMirror? Please consider a donation!
    MagicMirror created by Michael Teeuw.
    Forum managed by Sam, technical setup by Karsten.
    This forum is using NodeBB as its core | Contributors
    Contact | Privacy Policy