mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-21 06:54:24 +01:00
v3.7.3.1 - Hotfix - Dateformat us-p
Hotfix - us-p - DateString - Use long/short Weekday and long/short Month
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*-----------------------------------------------------------------------
|
||||
TypeScript v3.7.3.0 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar/@Sternmiere/@Britzelpuf
|
||||
TypeScript v3.7.3.1 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar/@Sternmiere/@Britzelpuf
|
||||
- abgestimmt auf TFT 46 / v3.7.3 / BerryDriver 8 / Tasmota 12.3.1
|
||||
@joBr99 Projekt: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
|
||||
NsPanelTs.ts (dieses TypeScript in ioBroker) Stable: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
|
||||
@@ -101,10 +101,11 @@ ReleaseNotes:
|
||||
- 20.12.2022 - v3.7.0 Add popUpTimer / New ALIAS Type level.timer
|
||||
- 21.12.2022 - v3.7.0 Add Fan / New ALIAS Type level.mode.fan
|
||||
- 22.12.2022 - v3.7.0 Add InSel - InputSelector with Alias Type buttonSensor (DP .VALUE)
|
||||
- 23.10.2022 - v3.7.0 Upgrade TFT 46
|
||||
- 23.10.2022 - v3.7.0 Upgrade TFT 46
|
||||
- 28.12.2022 - v3.7.3.0 Hotfix - bUp case
|
||||
- 28.12.2022 - v3.7.3.0 Update Berry Version 8
|
||||
|
||||
- 28.12.2022 - v3.7.3.0 Update Berry Version 8
|
||||
- 29.12.2022 - v3.7.3.1 Hotfix - us-p - DateString - Use long/short Weekday and long/short Month
|
||||
|
||||
*****************************************************************************************************************
|
||||
* Falls Aliase durch das Skript erstellt werden sollen, muss in der JavaScript Instanz "setObect" gesetzt sein! *
|
||||
*****************************************************************************************************************
|
||||
@@ -115,7 +116,7 @@ Tasmota Konsole:
|
||||
Rule2 on Button1#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button1"} endon on Button2#state do Publish %topic%/%prefix%/RESULT {"CustomRecv":"event,button2"} endon
|
||||
Rule2 1 (Rule aktivieren)
|
||||
Rule2 0 (Rule deaktivieren)
|
||||
|
||||
|
||||
Mögliche Seiten-Ansichten:
|
||||
screensaver Page - wird nach definiertem Zeitraum (config) mit Dimm-Modus aktiv (Uhrzeit, Datum, Aktuelle Temperatur mit Symbol)
|
||||
(die 4 kleineren Icons können als Wetter-Vorschau + 4Tage (Symbol + Höchsttemperatur) oder zur Anzeige definierter Infos konfiguriert werden)
|
||||
@@ -125,13 +126,13 @@ Mögliche Seiten-Ansichten:
|
||||
cardMedia Page - Mediaplayer - Ausnahme: Alias sollte mit Alias-Manager automatisch über Alexa-Verzeichnis Player angelegt werden
|
||||
cardAlarm Page - Alarmseite mit Zustand und Tastenfeld
|
||||
cardPower Page - Energiefluss
|
||||
|
||||
|
||||
Popup-Pages:
|
||||
popupLight Page - in Abhängigkeit zum gewählten Alias werden "Helligkeit", "Farbtemperatur" und "Farbauswahl" bereitgestellt
|
||||
popupShutter Page - die Shutter-Position (Rollo, Jalousie, Markise, Leinwand, etc.) kann über einen Slider verändert werden.
|
||||
popupNotify Page - Info - Seite mit Headline Text und Buttons - Intern für manuelle Updates / Extern zur Befüllung von Datenpunkten unter 0_userdata
|
||||
screensaver Notify - Über zwei externe Datenpunkte in 0_userdata können "Headline" und "Text" an den Screensaver zur Info gesendet werden
|
||||
|
||||
|
||||
Mögliche Aliase: (Vorzugsweise mit ioBroker-Adapter "Geräte verwalten" konfigurieren, da SET, GET, ACTUAL, etc. verwendet werden)
|
||||
Info - Werte aus Datenpunkt
|
||||
Schieberegler - Slider numerische Werte (SET/ACTUAL)
|
||||
@@ -156,25 +157,25 @@ Mögliche Aliase: (Vorzugsweise mit ioBroker-Adapter "Geräte verwalten" konfigu
|
||||
Feuchtigkeit - Anzeige von Humidity - Datenpunkten, analog Info
|
||||
Medien - Steuerung von Alexa - Über Alias-Manager im Verzeichnis Player automatisch anlegen (Geräte-Manager funktioniert nicht)
|
||||
Wettervorhersage - Aktuelle Außen-Temperatur (Temp) und aktuelles AccuWeather-Icon (Icon) für Screensaver
|
||||
|
||||
|
||||
Interne Sonoff-Sensoren (über Tasmota):
|
||||
ESP-Temperatur - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden --> SetOption146 1
|
||||
Temperatur - Raumtemperatur - wird in 0_userdata.0. abgelegt, kann als Alias importiert werden
|
||||
(!!! Achtung: der interne Sonoff-Sensor liefert keine exakten Daten, da das NSPanel-Board und der ESP selbst Hitze produzieren !!!
|
||||
ggf. Offset einplanen oder besser einen externen Sensor über Zigbee etc. verwenden)
|
||||
Timestamp - wird in 0_userdata.0. Zeitpunkt der letzten Sensorübertragung
|
||||
|
||||
Tasmota-Status0 - (zyklische Ausführung)
|
||||
liefert relevanten Tasmota-Informationen und kann bei Bedarf in "function get_tasmota_status0()" erweitert werden. Daten werden in 0_userdata.0. abgelegt
|
||||
|
||||
|
||||
Erforderliche Adapter:
|
||||
|
||||
AccuWeather: - Bei Nutzung der Wetterfunktionen (und zur Icon-Konvertierung) im Screensaver
|
||||
Alexa2: - Bei Nutzung der dynamischen SpeakerList in der cardMedia
|
||||
Geräte verwalten - Für Erstellung der Aliase
|
||||
Alias-Manager - !!! ausschließlich für MEDIA-Alias
|
||||
MQTT-Adapter - Für Kommunikation zwischen Skript und Tasmota
|
||||
JavaScript-Adapter
|
||||
|
||||
|
||||
Upgrades in Konsole:
|
||||
Tasmota BerryDriver : Backlog UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be; Restart 1
|
||||
TFT EU STABLE Version : FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.7.3.tft
|
||||
@@ -503,6 +504,16 @@ async function InitAlternateMRIconsSize() {
|
||||
}
|
||||
InitAlternateMRIconsSize();
|
||||
|
||||
//DateString short/long
|
||||
async function InitDateformat() {
|
||||
if (existsState(NSPanel_Path + 'Config.Dateformat.weekday') == false ||
|
||||
existsState(NSPanel_Path + 'Config.Dateformat.month') == false) {
|
||||
await createStateAsync(NSPanel_Path + 'Config.Dateformat.weekday', 'long', { type: 'string' });
|
||||
await createStateAsync(NSPanel_Path + 'Config.Dateformat.month', 'long', { type: 'string' });
|
||||
}
|
||||
}
|
||||
InitDateformat();
|
||||
|
||||
on({id: [].concat(String(NSPanel_Path) + 'Relay.1').concat(String(NSPanel_Path) + 'Relay.2'), change: "ne"}, async function (obj) {
|
||||
try {
|
||||
let Button = obj.id.split('.');
|
||||
@@ -1617,8 +1628,11 @@ function HandleStartupProcess(): void {
|
||||
|
||||
function SendDate(): void {
|
||||
try {
|
||||
let dpWeekday = existsObject(NSPanel_Path + 'Config.Dateformat.weekday') ? getState(NSPanel_Path + 'Config.Dateformat.weekday').val : 'short'
|
||||
let dpMonth = existsObject(NSPanel_Path + 'Config.Dateformat.month') ? getState(NSPanel_Path + 'Config.Dateformat.month').val : 'short'
|
||||
|
||||
const date = new Date();
|
||||
const options: any = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
|
||||
const options: any = { weekday: dpWeekday, year: 'numeric', month: dpMonth, day: 'numeric' };
|
||||
const _SendDate = date.toLocaleDateString(config.locale, options);
|
||||
|
||||
SendToPanel(<Payload>{ payload: 'date~' + _SendDate });
|
||||
|
||||
Reference in New Issue
Block a user