@@ -9537,11 +9537,13 @@ class FastSearchCard extends HTMLElement {
95379537 case 'turn_off':
95389538 return { service: 'light.turn_off', serviceData: {} };
95399539 case 'dim_30':
9540- return { service: 'light.turn_on', serviceData: { brightness_pct: 30 } };
9540+ // 30% mit scale_factor 2.55: 30 * 2.55 = 76.5 ≈ 77
9541+ return { service: 'light.turn_on', serviceData: { brightness: 77 } };
95419542 case 'dim_50':
9542- return { service: 'light.turn_on', serviceData: { brightness_pct: 50 } };
9543+ // 50% mit scale_factor 2.55: 50 * 2.55 = 127.5 ≈ 128
9544+ return { service: 'light.turn_on', serviceData: { brightness: 128 } };
95439545 default:
9544- return { service: 'light.turn_off ', serviceData: {} };
9546+ return { service: 'light.turn_on ', serviceData: {} };
95459547 }
95469548 }
95479549
@@ -14271,9 +14273,23 @@ class FastSearchCard extends HTMLElement {
1427114273
1427214274 getActionNameFromService(service, service_data) {
1427314275 const serviceAction = service.split('.')[1];
14274- if (serviceAction === 'turn_on' && service_data && service_data.brightness_pct) {
14275- return `dim_${service_data.brightness_pct}`;
14276+
14277+ if (serviceAction === 'turn_on' && service_data && service_data.brightness) {
14278+ // Konvertiere brightness zurück zu Prozent
14279+ const brightness = service_data.brightness;
14280+ const percentage = Math.round(brightness / 2.55);
14281+
14282+ // Erkenne bekannte Dimm-Level
14283+ if (percentage >= 28 && percentage <= 32) {
14284+ return 'dim_30';
14285+ } else if (percentage >= 48 && percentage <= 52) {
14286+ return 'dim_50';
14287+ }
14288+
14289+ // Fallback für andere Helligkeiten
14290+ return `dim_${percentage}`;
1427614291 }
14292+
1427714293 return serviceAction;
1427814294 }
1427914295
0 commit comments