The MMM-Compliments module is a fork of the original default module of the MagicMirror.
It adds the option to disable randomization. If the option is set to false, it just cycles through the array given.
cd ~/MagicMirror/modules
git clone https://github.com/yawnsde/MMM-Compliments.gitTo use this module, add it to the modules array in the config/config.js file:
modules: [
{
module: 'MMM-Compliments',
position: 'lower_third', // This can be any of the regions.
// Best results in one of the middle regions like: lower_third
config: {
// The config property is optional.
}
}
]The following properties can be configured:
<tr>
<td><code>updateInterval</code></td>
<td>How often does the compliment have to change? (Milliseconds)<br>
<br><b>Possible values:</b> <code>1000</code> - <code>86400000</code>
<br><b>Default value:</b> <code>30000</code> (30 seconds)
</td>
</tr>
<tr>
<td><code>fadeSpeed</code></td>
<td>Speed of the update animation. (Milliseconds)<br>
<br><b>Possible values:</b><code>0</code> - <code>5000</code>
<br><b>Default value:</b> <code>4000</code> (4 seconds)
</td>
</tr>
<tr>
<td><code>compliments</code></td>
<td>The list of compliments.<br>
<br><b>Possible values:</b> An object with three arrays: <code>morning</code>, <code>afternoon</code> and<code>evening</code>. See <i>compliment configuration</i> below.
<br><b>Default value:</b> See <i>compliment configuration</i> below.
</td>
</tr>
<tr>
<td><code>remoteFile</code></td>
<td>External file from which to load the compliments<br>
<br><b>Possible values:</b>Path to a JSON file containing compliments, configured
as per the value of the <i>compliments configuration</i> (see below). An object with three arrays:
morning, afternoon and evening. - <code>compliments.json</code>
<br><b>Default value:</b> <code>null</code> (Do not load from file)
</td>
</tr>
<tr>
<td><code>randomizeEntries</code></td>
<td>Enable or disable the random function<br>
<br><b>Possible values:</b><code>true</code> or <code>false</code>
<br><b>Default value:</b> <code>true</code>
</td>
</tr>
</tbody>
| Option | Description |
|---|
The compliments property contains an object with three arrays: morning, afternoon andevening. Based on the time of the day, the compliments will be picked out of one of these arrays. The arrays contain one or multiple compliments.
If use the currentweather is possible use a actual weather for set compliments. The availables properties are:
day_sunnyday_cloudycloudycloudy_windyshowersrainthunderstormsnowfognight_clearnight_cloudynight_showersnight_rainnight_thunderstormnight_snownight_alt_cloudy_windy
config: {
compliments: {
day_sunny: [
'Today is a sunny day',
'It\'s a beautiful day'
],
snow: [
'Snowball battle!'
],
rain: [
'Don\'t forget your umbrella'
]
}
}config: {
compliments: {
morning: [
'Good morning, handsome!',
'Enjoy your day!',
'How was your sleep?'
],
afternoon: [
'Hello, beauty!',
'You look sexy!',
'Looking good today!'
],
evening: [
'Wow, you look hot!',
'You look nice!',
'Hi, sexy!'
]
}
}You may specify an external file that contains the three compliment arrays. This is particularly useful if you have a
large number of compliments and do not wish to crowd your config.js file with a large array of compliments.
Adding the remoteFile variable will override an array you specify in the configuration file.
This file must be straight JSON. Note that the array names need quotes around them ("morning", "afternoon", "evening", "snow", "rain", etc.).
{
"morning" : [
"Good morning, sunshine!",
"Who needs coffee when you have your smile?",
"Go get 'em, Tiger!"
],
"afternoon" : [
"Hitting your stride!",
"You are making a difference!",
"You're more fun than bubble wrap!"
],
"evening" : [
"You made someone smile today, I know it.",
"You are making a difference.",
"The day was better for your efforts."
]
}