async function configuration (): Promise<void> {
const overrideConfig: Partial<ScriptConfig.Config> = {
weatherEntity: 'brightsky.0.',
defaultOffColor: Off,
defaultOnColor: On,
"weatherAddDefaultItems": true
}
const Hauptseite: ScriptConfig.PageGrid = {
type: 'cardGrid',
uniqueName: 'main',
heading: 'Bueros',
items: []
};
const powerGrid: ScriptConfig.PagePower = {
uniqueName: 'powereg', // muss mit dem Namen im Admin übereinstimmen
type: 'cardPower'
};
const abfall: any = {
heading: 'Abfallkalender',
prev: 'main',
home: 'main',
subPage: true,
native: {
card: 'cardEntities',
dpInit: '0_userdata.0.vis.Abfallkalender',
uniqueID: 'abfall',
template: 'entities.waste-calendar',
},
};
const config: ScriptConfig.Config = {
panelTopic: 'NSPanel2',
weatherEntity: 'brightsky.0.',
defaultOffColor: Off,
defaultOnColor: On,
defaultBackgroundColor: HMIDark,
weatherAddDefaultItems: true,
pages: [
Hauptseite,
powerGrid,
abfall,
//irgendeinName,
//grid1,
//qrCode,
//chartHeizung,
],
// Unterseiten / Subpages
subPages: [
//fahrplan
],
/***********************************************************************
** **
** Screensaver Configuration **
** **
***********************************************************************/
favoritScreensaverEntity: [
{
type: 'template',
template: 'text.brightsky.favorit',
dpInit: `/^brightsky\\.0\\.current\\./`,
modeScr: 'favorit',
}
],
alternateScreensaverEntity: [
// only used with alternate Screensaver
],
indicatorScreensaverEntity: [
// indicatorScreensaverEntity 1 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_offene_Fenster.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'window-open-variant',
ScreensaverEntityIconOff: 'window-closed-variant',
ScreensaverEntityText: 'Fenster',
ScreensaverEntityUnitText: '%',
ScreensaverEntityIconColor: {val_min: 0, val_max: 1},
},
// indicatorScreensaverEntity 2 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_offene_Tuer.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'door-open',
ScreensaverEntityIconOff: 'door-closed',
ScreensaverEntityText: 'Tür',
ScreensaverEntityUnitText: '',
ScreensaverEntityIconColor: {val_min: 0, val_max: 1},
},
// indicatorScreensaverEntity 3 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.NSPanel.allgemein.Status_Licht_An.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'lightbulb',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Licht',
ScreensaverEntityUnitText: '',
ScreensaverEntityIconColor: {val_min: 0, val_max: 1},
},
// indicatorScreensaverEntity 4 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.Türschloss.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'lock',
ScreensaverEntityIconOff: 'lock-open',
ScreensaverEntityText: 'Türschloss',
ScreensaverEntityUnitText: '',
ScreensaverEntityIconColor: {val_min: 0, val_max: 1, val_best: 1},
},
// indicatorScreensaverEntity 5 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.NSPanel.allgemein.Auto.Safety.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'car-key',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Auto',
ScreensaverEntityUnitText: '',
ScreensaverEntityIconColor: {val_min: 0, val_max: 1, val_best: 1},
},
],
bottomScreensaverEntity: [
// bottomScreensaverEntity 1
{
type: 'template',
template: 'text.brightsky.sunriseset',
dpInit: `/^brightsky\\.0\\.daily\\.00.+/`,
modeScr: 'bottom',
},
// bottomScreensaverEntity 2
/*{
type: 'template',
template: 'text.hmip.windcombo',
dpInit: 'hmip.0.devices.3014G71HA0001XXXXXXXXXX',
modeScr: 'bottom',
//readOptions: {directionOfPanel: 81}
},*/
{
type: 'script',
ScreensaverEntity: 'brightsky.0.current.wind_speed_10'/*Wind Speed 10 min*/,
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 1,
ScreensaverEntityIconOn: 'weather-windy',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: "Wind",
ScreensaverEntityUnitText: 'm/s',
ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
},
// bottomScreensaverEntity 3
{
type: 'script',
ScreensaverEntity: 'brightsky.0.current.wind_gust_speed_10'/*Wind Gust Speed 10 min*/,
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 1,
ScreensaverEntityIconOn: 'weather-tornado',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Böen',
ScreensaverEntityUnitText: 'm/s',
ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 120}
},
// bottomScreensaverEntity 4
{
type: 'template',
template: 'text.brightsky.winddirection',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
},
// bottomScreensaverEntity 5 (Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'brightsky.0.current.relative_humidity'/*Relative Humidity*/,
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityIconOn: 'water-percent',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Feuchte',
ScreensaverEntityUnitText: '%',
ScreensaverEntityIconColor: {'val_min': 0, 'val_max': 100, 'val_best': 60}
},
// bottomScreensaverEntity 6 (for Advanced Screensaver)
{
type: 'template',
template: 'text.brightsky.uvindex',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
}
// Examples for Advanced-Screensaver: https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Config-Screensaver#entity-status-icons-ab-v400
// Some templates for the screensaver uncomment the lines to use them
// If u use an other instance for the weather data, change the instance in the following lines
// If you want to have them all, set weatherAddDefaultItems=true in the config and leave the following lines as they are!
// zum nutzen der Vorlagen für den Bildschirmschoner die Zeilen auskommentieren, um sie zu verwenden
// Wenn du eine andere Instanz für die Wetterdaten verwendest, ändere die Instanz in den folgenden Zeilen
// Wenn du sie alle haben willst, setze weatherAddDefaultItems=true in der Konfiguration ganz oben und lass die folgenden Zeilen so wie sie sind!
/*
Bright Sky*/,
{
type: 'template',
template: 'text.brightsky.sunriseset',
dpInit: `/^brightsky\\.0\\.daily\\.00.+/`,
modeScr: 'bottom',
},
//Bottom 2 - brightsky.0. Forecast Day 1
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.01/`,
modeScr: 'bottom',
},
// Bottom 3 - brightsky.0. Forecast Day 2
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.02/`,
modeScr: 'bottom',
},
//Bottom 4 - brightsky.0. Forecast Day 3
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.03/`,
modeScr: 'bottom',
},
// Bottom 5 - brightsky.0. Forecast Day 4
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.04/`,
modeScr: 'bottom',
},
// Bottom 6 - brightsky.0. Forecast Day 5
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.05/`,
modeScr: 'bottom',
},
// Bottom 7 - brightsky.0. Forecast Day 6
{
type: 'template',
template: 'text.brightsky.bot2values',
dpInit: `/^brightsky\\.0\\.daily\\.06/`,
modeScr: 'bottom',
},
// Bottom 8 - Windgeschwindigkeit
{
type: 'template',
template: 'text.brightsky.windspeed',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
},
// Bottom 9 - Boen
{
type: 'template',
template: 'text.brightsky.windgust',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
},
// Bottom 10 - Windrichtung
{
type: 'template',
template: 'text.brightsky.winddirection',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
},
// Bottom 10 - Solar
{
type: 'template',
template: 'text.brightsky.solar',
dpInit: `/^brightsky\\.0\\.current./`,
modeScr: 'bottom',
},
],
leftScreensaverEntity: [
// leftScreensaverEntity 1 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.NSPanel.Flur.Sensor.ANALOG.Temperature.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 1,
ScreensaverEntityIconOn: 'thermometer',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Temperatur',
ScreensaverEntityUnitText: '°C',
ScreensaverEntityIconColor: {val_min: 0, val_max: 35, val_best: 22},
},
// leftScreensaverEntity 2 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.Heizung.WärmeTagesVerbrauch.ACTUAL',
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 1,
ScreensaverEntityIconOn: 'counter',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Wärme',
ScreensaverEntityUnitText: ' kWh',
ScreensaverEntityIconColor: MSYellow, //{'val_min': 0, 'val_max': 5000}
},
// leftScreensaverEntity 3 (only Advanced Screensaver)
{
type: 'script',
ScreensaverEntity: 'alias.0.Haus.Abfall.event1.INFO'/*Info*/,
ScreensaverEntityFactor: 1,
ScreensaverEntityDecimalPlaces: 0,
ScreensaverEntityDateFormat: {year: 'numeric', month: '2-digit', day: '2-digit'},
ScreensaverEntityIconOn: 'trash-can',
ScreensaverEntityIconOff: null,
ScreensaverEntityText: 'Abfall',
ScreensaverEntityUnitText: '',
ScreensaverEntityIconColor: '0_userdata.0.vis.Abfallkalender.1.color',
},
],
// Status Icon
mrIcon1ScreensaverEntity: {
type: 'script',
ScreensaverEntity: 'Relay.1',
ScreensaverEntityIconOn: 'lightbulb',
ScreensaverEntityIconOff: null,
ScreensaverEntityValue: null,
ScreensaverEntityValueDecimalPlace: 0,
ScreensaverEntityValueUnit: null,
ScreensaverEntityOnColor: On,
ScreensaverEntityOffColor: HMIOff
},
mrIcon2ScreensaverEntity: {
type: 'script',
ScreensaverEntity: 'Relay.2',
ScreensaverEntityIconOn: 'lightbulb',
ScreensaverEntityIconOff: null,
ScreensaverEntityValue: null,
ScreensaverEntityValueDecimalPlace: 0,
ScreensaverEntityValueUnit: null,
ScreensaverEntityOnColor: On,
ScreensaverEntityOffColor: HMIOff
},
// ------ DE: Ende der Screensaver Einstellungen --------------------
// ------ EN: End of screensaver settings ---------------------------
//-------DE: Anfang Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
//-------EN: Start Settings for Hardware Button, if used in software (Rule2) --------------------------------------
// DE: Konfiguration des linken Schalters des NSPanels
// EN: Configuration of the left switch of the NSPanel
buttonLeft: {
// DE: Mögliche Werte wenn Rule2 definiert: 'page', 'switch', 'set' - Wenn nicht definiert --> mode: null
// EN: Possible values if Rule2 defined: 'page', 'switch', 'set' - If not defined --> mode: null
mode: 'switch',
// DE: Zielpage - Verwendet wenn mode = page
// EN: Target page - Used if mode = page
state: '0_userdata.0.Schalter.AstronautOGB',
},
// DE: Konfiguration des rechten Schalters des NSPanels
// EN: Configuration of the right switch of the NSPanel
buttonRight: {
mode: 'switch',
state:'0_userdata.0.Schalter.Essenfertig'/*Essenfertig*/,
},
//--------- DE: Ende - Einstellungen für Hardware Button, wenn Sie softwareseitig genutzt werden (Rule2) -------------
//--------- EN: End - settings for hardware button if they are used in software (Rule2) ------------------------------