diff --git a/ioBroker/DEV/NSPanelTs.ts b/ioBroker/DEV/NSPanelTs.ts index ed6d01a0..ec950bf7 100644 --- a/ioBroker/DEV/NSPanelTs.ts +++ b/ioBroker/DEV/NSPanelTs.ts @@ -6321,6 +6321,10 @@ function HandleButtonEvent(words: any): void { alwaysOn = false; SendToPanel({ payload: 'timeout~' + getState(NSPanel_Path + 'Config.Screensaver.timeoutScreensaver').val }); } + + setOrCreate(NSPanel_Path + "Event.Button.Action", buttonAction ?? words[2]); + setOrCreate(NSPanel_Path + "Event.Button.Value", words[4] != undefined ? words[4] : null); + setOrCreate(NSPanel_Path + "Event.Button.Id", id); if (Debug) { log('HandleButtonEvent buttonAction: ' + buttonAction, 'info'); @@ -7368,6 +7372,14 @@ function HandleButtonEvent(words: any): void { } } +function setOrCreate(id : string, value : any, forceCreation: boolean = true, common: Partial = { }, callback?: iobJS.SetStateCallback) { + if (!existsState(id)) { + createState(id, value, forceCreation, common, callback); + } else { + setState(id, value); + } +} + //Determination of page navigation (CustomSend-Payload) function GetNavigationString(pageId: number): string { try {