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.git
To 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_sunny
day_cloudy
cloudy
cloudy_windy
showers
rain
thunderstorm
snow
fog
night_clear
night_cloudy
night_showers
night_rain
night_thunderstorm
night_snow
night_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."
]
}