Read the statement by Michael Teeuw here.
-
- one schedule can now be used to hide/show/dim all modules - see global scheduling
- one schedule can now be create to hide/show/dim a group of modules - see group schedules
To do:
- add the ability to exclude specific modules from the global/group schedules
- unit and regression tests ;)
-
Nice work! LockStrings are not yet implemented, right? Until then I can’t use the module.
-
I’m using it like this… but it’s not working for some reason:
{
module: ‘MMM-ModuleScheduler’,
config: {
global_schedule: [
// SHOW MODULES WITH THE CLASS ‘daytime_scheduler’ AT 06:00 AND HIDE AT 22:00 EVERY DAY
{from: ‘50 6 * * *’, to: ‘0 9 * * *’, groupClass: ‘scheduler_mfm’},
{from: ‘50 6 * * *’, to: ‘0 23 * * *’, groupClass: ‘scheduler_mfd’},
{from: ‘0 6 * * *’, to: ‘0 23 * * *’, groupClass: ‘scheduler_sat’},
{from: ‘0 6 * * *’, to: ‘0 23 * * *’, groupClass: ‘scheduler_sun’},
{from: ‘0 6 * * *’, to: ‘0 23 * * *’, groupClass: ‘scheduler_nflg’},
{from: ‘0 6 * * *’, to: ‘0 23 * * *’, groupClass: ‘scheduler_nflng’}
]
}
},Then for example a module:
{ module: 'compliments', position: 'lower_third', classes: 'scheduler_mfm' },I did update the module with ‘git pull’ so that’s okay but it’s not rendering correctly and shutting the module ‘off’
Did I miss something simple again? :)
-
@cowboysdude - During my testing of the global scheduling feature, I identified an issue which meant the initial state of the modules may not have been correct. I’ve committed a potential fix for this which may fix your issue too so please feel free to
git pullagain and test.If it doesn’t work, can you let me know what is output in the logs
pm2 logs mm- you should see something like the following for each of your global schedulesMMM-ModuleScheduler is creating a global schedule for scheduler_mfm modules using '50 6 * * *' and '0 9 * * *' with dim level undefined MMM-ModuleScheduler is hiding scheduler_mfm modules MMM-ModuleScheduler has created the global schedule for scheduler_mfm modules MMM-ModuleScheduler will next show scheduler_mfm modules at Tue Nov 01 2016 06:50:00 GMT+0000 (UTC) MMM-ModuleScheduler will next hide scheduler_mfm modules at Tue Nov 01 2016 09:00:00 GMT+0000 (UTC)The second line in the above log example will only appear if the schedule means that the modules affected it should be initially hidden
-
@MichMich said in MMM-ModuleScheduler:
Nice work! LockStrings are not yet implemented, right? Until then I can’t use the module.
LockStrings should now be supported - feel free to test and let me know if it works as expected!
-
Will give it a try! Thanks @ianperrin !
-
Hi,
I am trying to dim my mirror at nighttime - on weekdays between 10PM and 7AM, on weekends between 10Pm and 8AM. However, the below code does not do the trick - where is my mistake?
{ module: 'MMM-ModuleScheduler', config: { global_schedule: [ {from: '0 7 * * 1-5', to: '0 20 * * 1-5', dimLevel: '30'}, {from: '0 8 * * 0,6', to: '0 20 * * 0,6', dimLevel: '30'}, ] } }, -
@anatius The config looks okay, can you check the output of the log
pm2 logs mmonce you have started MM2 and viewed it in a browser then post the results here?It should look something like:
MMM-ModuleScheduler received INITIALISE_SCHEDULER MMM-ModuleScheduler is setting the config MMM-ModuleScheduler is removing all scheduled jobs MMM-ModuleScheduler received CREATE_NOTIFICATION_SCHEDULE MMM-ModuleScheduler received CREATE_GLOBAL_SCHEDULE MMM-ModuleScheduler is creating a global schedule for all modules using "0 7 * * 1-5" and "0 20 * * 1-5" with dim level 30 MMM-ModuleScheduler is dimming all modules MMM-ModuleScheduler has created the global schedule for all modules MMM-ModuleScheduler will next show all modules at Mon Dec 19 2016 07:00:00 GMT+0000 (UTC) MMM-ModuleScheduler will next dim all modules at Mon Dec 19 2016 20:00:00 GMT+0000 (UTC) MMM-ModuleScheduler is creating a global schedule for all modules using "0 8 * * 0,6" and "0 20 * * 0,6" with dim level 30 MMM-ModuleScheduler is dimming all modules MMM-ModuleScheduler has created the global schedule for all modules MMM-ModuleScheduler will next show all modules at Sat Dec 24 2016 08:00:00 GMT+0000 (UTC) MMM-ModuleScheduler will next dim all modules at Sat Dec 24 2016 20:00:00 GMT+0000 (UTC) -
Hi Ian,
Below is the relevant output of the log (error log is empty). Note that now (Monday at 3 PM) all modules are dimmed though they should not be…
MMM-ModuleScheduler received INITIALISE_SCHEDULER MMM-ModuleScheduler is setting the config MMM-ModuleScheduler is removing all scheduled jobs MMM-ModuleScheduler received CREATE_NOTIFICATION_SCHEDULE MMM-ModuleScheduler received CREATE_GLOBAL_SCHEDULE MMM-ModuleScheduler is creating a global schedule for all modules using "0 7 * * 1-5" and "0 20 * * 1-5" with dim level 30 MMM-ModuleScheduler has created the global schedule for all modules MMM-ModuleScheduler will next show all modules at Tue Dec 20 2016 07:00:00 GMT+0100 (CET) MMM-ModuleScheduler will next dim all modules at Mon Dec 19 2016 20:00:00 GMT+0100 (CET) MMM-ModuleScheduler is creating a global schedule for all modules using "0 8 * * 0,6" and "0 20 * * 0,6" with dim level 30 MMM-ModuleScheduler is dimming all modules MMM-ModuleScheduler has created the global schedule for all modules MMM-ModuleScheduler will next show all modules at Sat Dec 24 2016 08:00:00 GMT+0100 (CET) MMM-ModuleScheduler will next dim all modules at Sat Dec 24 2016 20:00:00 GMT+0100 (CET)Many thanks for your support!
Christian -
Hi @anatius (Christian)
Okay, I think I see the problem, and a fix is in the works, its just going to take a little time until I can finish it.
I’ve created an issue on github which contains more details on why this is happening.
Until the fix is in place, you have two (understandably sub-optimal) options
- leave the mirror running and it should self-correct after the next 8pm and/or 7/8am depending on when it is started :(
- temporarily use the same expression for all days of the week, e.g.
global_schedule: [ {from: '0 7 * * *', to: '0 20 * * *', dimLevel: '30'} ] -
Hi Ian,
Thanks for the support. You are right indeed, the error corrects itself the first time the scheduler sets the module to undimmed. It is just that the starting conditions are not correct, but this is no big deal for me. It is just that I was too impatient to wait for the scheduler to change status for the first time…
Many thanks for your support!
Christian -
Firstly, thanks for making such an awesome module!
However, I can get it to work with all of my modules except one… I can’t get it to work with MMM-Instagram. I have it set up just like all of my other modules, but this one just ignores the scheduler script and always runs, never following the code. Here is the module code in config.js:
{ module: 'MMM-Instagram', position: 'top_right', classes: 'scheduler', config: { module_schedule: [ {from: '0 5 * * 1-5', to: '0 9 * * 1-5'}, {from: '0 17 * * 1-5', to: '0 22 * * 1-5'}, {from: '0 6 * * 6-7', to: '0 24 * * 6-7'} ], access_token: '//ACCESS_TOKEN//', count: 200, min_timestamp: 0, animationSpeed: 2500, updateInterval: 12000 } },any thoughts? here’s a picture of what it looks like when the scheduler is active: https://goo.gl/photos/K3S6HA7m61j5iSEe8
-
-
@lucallmon Honestly I’m a bit lost on this one… I’m going to defer to @ianperrin for this one…
-
https://goo.gl/photos/dFMRL8JkvE5XWvaN7This is what I get when I wake up and the monitor was supposed to go off at night and then turns back on in the morning. This happens every morning. Essentially, the monitor signal cuts but it never actually turns off or enters a low power state as it does when I actually shut down the Pi. This only happens when it’s overnight. When I do a trial off for a few minutes, it doesn’t do it. I think it might be the crappy old monitor, but I don’t know. Any thoughts?
-
I have found that this white screen that happens every day essentially freezes the entire Magic Mirror and I have to press CRTL+Q to restart. It doesn’t actually freeze the entire RPi.
-
Hi there!
Thank you for this excellent module! :)
I would like to use the scheduler together with “Profile Switcher”.Scenario:
- Let’s say normally I always show “Clock”, “Monthly calendar” and “Wounderground Weather” (local weather).
- Then on Mondays and Wednesdays at 05:30 to 07:30 I would like to also show “Weather” and “weather forecast” (in my case for another location).
- Then I would like to have a “profile” called “Snille” who (when activated) shows all of the above plus also “System Status” and “Bitcoin” (for example).
I have tried this, but it seams that when a module is scheduled, it get’s “locked” by the scheduler and therefore the “Profile Switcher” can not show it…
Getting this in the console (when selecting the profile):
Will not show currentweather. LockStrings active: module_0_MMM-ModuleScheduler
Will not show weatherforecast. LockStrings active: module_0_MMM-ModuleSchedulerIf I “force” to unlock (using my Modlulebar to show and hide) the module it can be showed with the “Profile Switcher”.
I’m thinking… Do you have to “lock” the modules with the scheduler? :)
-
@ianperrin I have sent a PR to you adding an option to solve the problem. :)
-
Hello all,
@ianperrin Thanks for the great module!
I’ve been using MMM-ModuleScheduler successfully for a couple of weeks, however, after a recent update the module is no longer working as designed. It appears that the correct SHOW & HIDE commands are being send (see logs below), however, the modules do not appear or disappear from the MM itself.
The only command that works well is the HDMI on/off. Any guidance or insight is appreciated.
Thanks!
| MMM-ModuleScheduler will next send SEND_NOTIFICATION to REMOTE_ACTION at Thu Apr 20 2017 23:30:00 GMT-0400 (EDT) based on "30 23 * * *" 0|mm | Powering off HDMI 0|mm | MMM-ModuleScheduler is sending HIDE_MODULE to module_11_MMM-ImagesPhotos 0|mm | MMM-ModuleScheduler will next send HIDE_MODULE to module_11_MMM-ImagesPhotos at Thu Apr 20 2017 23:45:00 GMT-0400 (EDT) based on "45 23 * * *" 0|mm | MMM-ModuleScheduler is sending SEND_NOTIFICATION to REMOTE_ACTION 0|mm | MMM-ModuleScheduler will next send SEND_NOTIFICATION to REMOTE_ACTION at Fri Apr 21 2017 06:00:00 GMT-0400 (EDT) based on "0 6 * * *" 0|mm | MMM-ModuleScheduler is sending SHOW_MODULE to module_4_localtransport 0|mm | MMM-ModuleScheduler will next send SHOW_MODULE to module_4_localtransport at Fri Apr 21 2017 06:00:00 GMT-0400 (EDT) based on "0 6 * * *" 0|mm | MMM-ModuleScheduler is sending SHOW_MODULE to module_6_iFrame 0|mm | MMM-ModuleScheduler will next send SHOW_MODULE to module_6_iFrame at Fri Apr 21 2017 06:00:00 GMT-0400 (EDT) based on "0 6 * * *" 0|mm | Powering on HDMI with preferred settings -
Hi All and thanks to @ianperrin for creating this awesome module.
I’m trying to schedule my screen to turn it on and off in specific times from Monday to Friday, and doing also the same thing in different times on weekend.
Right now this is my configuration, but is not quite working:
{
module: ‘MMM-ModuleScheduler’,
config: {
notification_schedule: [
// TURN THE MONITOR/SCREEN ON AT 08:00 EVERY DAY
{notification: ‘REMOTE_ACTION’, schedule: ‘0 8 * * * 1-5’, payload: {action: “MONITORON”}},
// TURN THE MONITOR/SCREEN OFF AT 09:30 EVERY DAY
{notification: ‘REMOTE_ACTION’, schedule: ‘30 9 * * * 1-5’, payload: {action: “MONITOROFF”}},
// TURN THE MONITOR/SCREEN ON AT 19:00 EVERY DAY
{notification: ‘REMOTE_ACTION’, schedule: ‘0 19 * * * 1-5’, payload: {action: “MONITORON”}},
// TURN THE MONITOR/SCREEN OFF AT 23:00 EVERY DAY
{notification: ‘REMOTE_ACTION’, schedule: ‘0 23 * * * 1-5’, payload: {action: “MONITOROFF”}},
// TURN THE MONITOR/SCREEN ON AT 10:30 WEEKEND
{notification: ‘REMOTE_ACTION’, schedule: ‘30 10 * * * 6-7’, payload: {action: “MONITORON”}},
// TURN THE MONITOR/SCREEN OFF AT 21:00 WEEKEND
{notification: ‘REMOTE_ACTION’, schedule: ‘0 21 * * * 6-7’, payload: {action: “MONITOROFF”}},
// RESTART THE MAGICMIRROR PROCESS AT 2am EVERY SUNDAY
{notification: ‘REMOTE_ACTION’, schedule: ‘0 2 * * SUN’, payload: {action: “RESTART”}}
]
}
},Can somebody tell me if this is the right way to do it or if there is some kind of issue there?
Thanks!
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login