(Gelöst) PERL WARNING: Argument "ok" isn't numeric in numeric gt (>) at ..line

Begonnen von is2late, 18 Januar 2023, 17:46:01

Vorheriges Thema - Nächstes Thema

betateilchen

Zitat von: JoWiemann am 20 Januar 2023, 13:33:26
Und, warum funktioniert das nicht? Wg. älterer Version oder wg. Handling?

Weil das nur unter Windows funktioniert.
Unter macOS gibt es den Link "Copy for forum" in den devices überhaupt nicht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

is2late

@JoWiemann: Dankeschön, hat funktioniert
@betateilchen: Merci, merke ich mir

Wobei da unterschiedliche Ergebnisse herauszukommen scheinen....
list -r Fitness_Thermostat (oder ist die Readingsgroup anders benannt als das Device?)

define Fitness_Thermostat HMCCUCHN 00201D89A7F7D9:1
attr Fitness_Thermostat cmdIcon auto:sani_heating_automatic manu:sani_heating_manual boost:sani_heating_boost on:general_an off:general_aus
attr Fitness_Thermostat room Geräte,Homematic
attr Fitness_Thermostat substexcl desired-temp
attr Fitness_Thermostat webCmd desired-temp:auto:manu:boost:on:off
attr Fitness_Thermostat widgetOverride desired-temp:slider,4.5,0.5,30.5,1

setstate Fitness_Thermostat 14.1
setstate Fitness_Thermostat 2023-01-20 14:22:29 ACTIVE_PROFILE 2
setstate Fitness_Thermostat 2023-01-20 14:22:29 ACTUAL_TEMPERATURE 14.1
setstate Fitness_Thermostat 2023-01-20 14:22:29 ACTUAL_TEMPERATURE_STATUS NORMAL
setstate Fitness_Thermostat 2023-01-20 14:22:29 BOOST_MODE false
setstate Fitness_Thermostat 2023-01-20 14:22:29 BOOST_TIME 0
setstate Fitness_Thermostat 2023-01-20 14:22:29 FROST_PROTECTION false
setstate Fitness_Thermostat 2023-01-19 17:39:34 IODev d_ccu
setstate Fitness_Thermostat 2023-01-20 14:22:29 LEVEL 0
setstate Fitness_Thermostat 2023-01-20 14:22:29 LEVEL_STATUS NORMAL
setstate Fitness_Thermostat 2023-01-20 14:22:29 PARTY_MODE false
setstate Fitness_Thermostat 2023-01-19 17:40:00 PARTY_SET_POINT_TEMPERATURE 0.0
setstate Fitness_Thermostat 2023-01-19 17:40:00 PARTY_TIME_END
setstate Fitness_Thermostat 2023-01-19 17:40:00 PARTY_TIME_START
setstate Fitness_Thermostat 2023-01-20 14:22:29 QUICK_VETO_TIME 0
setstate Fitness_Thermostat 2023-01-20 14:22:29 SET_POINT_MODE manual
setstate Fitness_Thermostat 2023-01-20 14:22:29 SET_POINT_TEMPERATURE 5.0
setstate Fitness_Thermostat 2023-01-20 14:22:29 SWITCH_POINT_OCCURED false
setstate Fitness_Thermostat 2023-01-19 17:40:00 VALVE_ADAPTION false
setstate Fitness_Thermostat 2023-01-20 14:22:29 VALVE_STATE ADAPTION_DONE
setstate Fitness_Thermostat 2023-01-20 14:22:29 WINDOW_STATE closed
setstate Fitness_Thermostat 2023-01-20 15:34:38 activity alive
setstate Fitness_Thermostat 2023-01-20 14:22:29 battery ok
setstate Fitness_Thermostat 2023-01-20 14:22:29 control 5.0
setstate Fitness_Thermostat 2023-01-20 14:22:29 desired-temp 5.0
setstate Fitness_Thermostat 2023-01-20 15:34:38 devstate ok
setstate Fitness_Thermostat 2023-01-20 15:34:38 hmstate 14.1
setstate Fitness_Thermostat 2023-01-20 14:22:29 measured-temp 14.1
setstate Fitness_Thermostat 2023-01-20 15:34:38 rssidevice -81
setstate Fitness_Thermostat 2023-01-20 12:49:55 rssipeer -79
setstate Fitness_Thermostat 2023-01-20 14:22:29 state 14.1
setstate Fitness_Thermostat 2023-01-20 14:22:29 voltage 2.8


Copy for forum:

define Fitness_Thermostat HMCCUCHN 00201D89A7F7D9:1
attr Fitness_Thermostat cmdIcon auto:sani_heating_automatic manu:sani_heating_manual boost:sani_heating_boost on:general_an off:general_aus
attr Fitness_Thermostat room Geräte,Homematic
attr Fitness_Thermostat substexcl desired-temp
attr Fitness_Thermostat webCmd desired-temp:auto:manu:boost:on:off
attr Fitness_Thermostat widgetOverride desired-temp:slider,4.5,0.5,30.5,1
#   DEF        00201D89A7F7D9:1
#   FUUID      63209701-f33f-a080-be2f-0be40214a02e98d1
#   IODev      d_ccu
#   NAME       Fitness_Thermostat
#   NR         463
#   STATE      14.1
#   TYPE       HMCCUCHN
#   ccuaddr    00201D89A7F7D9:1
#   ccudevstate active
#   ccuif      HmIP-RF
#   ccuname    Fitness Thermostat
#   ccurolectrl HEATING_CLIMATECONTROL_TRANSCEIVER
#   ccurolestate HEATING_CLIMATECONTROL_TRANSCEIVER
#   ccusubtype TRV-B
#   ccutype    HmIP-eTRV-B
#   eventCount 90
#   firmware   1.0.20
#   readonly   no
#   READINGS:
#     2023-01-20 14:22:29   ACTIVE_PROFILE  2
#     2023-01-20 14:22:29   ACTUAL_TEMPERATURE 14.1
#     2023-01-20 14:22:29   ACTUAL_TEMPERATURE_STATUS NORMAL
#     2023-01-20 14:22:29   BOOST_MODE      false
#     2023-01-20 14:22:29   BOOST_TIME      0
#     2023-01-20 14:22:29   FROST_PROTECTION false
#     2023-01-19 17:39:34   IODev           d_ccu
#     2023-01-20 14:22:29   LEVEL           0
#     2023-01-20 14:22:29   LEVEL_STATUS    NORMAL
#     2023-01-20 14:22:29   PARTY_MODE      false
#     2023-01-19 17:40:00   PARTY_SET_POINT_TEMPERATURE 0.0
#     2023-01-19 17:40:00   PARTY_TIME_END 
#     2023-01-19 17:40:00   PARTY_TIME_START
#     2023-01-20 14:22:29   QUICK_VETO_TIME 0
#     2023-01-20 14:22:29   SET_POINT_MODE  manual
#     2023-01-20 14:22:29   SET_POINT_TEMPERATURE 5.0
#     2023-01-20 14:22:29   SWITCH_POINT_OCCURED false
#     2023-01-19 17:40:00   VALVE_ADAPTION  false
#     2023-01-20 14:22:29   VALVE_STATE     ADAPTION_DONE
#     2023-01-20 14:22:29   WINDOW_STATE    closed
#     2023-01-20 15:34:38   activity        alive
#     2023-01-20 14:22:29   battery         ok
#     2023-01-20 14:22:29   control         5.0
#     2023-01-20 14:22:29   desired-temp    5.0
#     2023-01-20 15:34:38   devstate        ok
#     2023-01-20 15:34:38   hmstate         14.1
#     2023-01-20 14:22:29   measured-temp   14.1
#     2023-01-20 15:34:38   rssidevice      -81
#     2023-01-20 12:49:55   rssipeer        -79
#     2023-01-20 14:22:29   state           14.1
#     2023-01-20 14:22:29   voltage         2.8
#   hmccu:
#     channels   1
#     detect     1
#     devspec    00201D89A7F7D9:1
#     nodefaults 1
#     role       1:HEATING_CLIMATECONTROL_TRANSCEIVER
#     setDefaults 0
#     cmdlist:
#       get       
#       set        holiday:noArg on:noArg desired-temp manu:noArg auto:noArg boost:noArg off:noArg toggle:noArg
#     control:
#       chn        1
#       dpt        SET_POINT_TEMPERATURE
#     dp:
#       0.APPLICATION_VERSION:
#         SERVICE:
#           NVAL       1.0.20
#           ONVAL      1.0.20
#           OSVAL      1.0.20
#           OVAL       1.0.20
#           SVAL       1.0.20
#           VAL        1.0.20
#         VALUES:
#       0.ARR_TIMEOUT:
#         MASTER:
#           NVAL       10
#           ONVAL      10
#           OSVAL      10
#           OVAL       10
#           SVAL       10
#           VAL        10
#         VALUES:
#       0.BOOTLOADER_VERSION:
#         SERVICE:
#           NVAL       1.14.0
#           ONVAL      1.14.0
#           OSVAL      1.14.0
#           OVAL       1.14.0
#           SVAL       1.14.0
#           VAL        1.14.0
#         VALUES:
#       0.CONFIG_PENDING:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      false
#           OVAL       0
#           SVAL       false
#           VAL        0
#       0.CYCLIC_INFO_MSG:
#         MASTER:
#           NVAL       1
#           ONVAL      1
#           OSVAL      1
#           OVAL       1
#           SVAL       1
#           VAL        1
#         VALUES:
#       0.CYCLIC_INFO_MSG_DIS:
#         MASTER:
#           NVAL       1
#           ONVAL      1
#           OSVAL      1
#           OVAL       1
#           SVAL       1
#           VAL        1
#         VALUES:
#       0.CYCLIC_INFO_MSG_DIS_UNCHANGED:
#         MASTER:
#           NVAL       20
#           ONVAL      20
#           OSVAL      20
#           OVAL       20
#           SVAL       20
#           VAL        20
#         VALUES:
#       0.CYCLIC_INFO_MSG_OVERDUE_THRESHOLD:
#         MASTER:
#           NVAL       2
#           ONVAL      2
#           OSVAL      2
#           OVAL       2
#           SVAL       2
#           VAL        2
#         VALUES:
#       0.DAYLIGHT_SAVINGS_TIME:
#         MASTER:
#           NVAL       1
#           ONVAL      1
#           OSVAL      1
#           OVAL       1
#           SVAL       1
#           VAL        1
#         VALUES:
#       0.DISABLE_MSG_TO_AC:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.DST_END_DAY_OF_WEEK:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.DST_END_MONTH:
#         MASTER:
#           NVAL       10
#           ONVAL      10
#           OSVAL      10
#           OVAL       10
#           SVAL       10
#           VAL        10
#         VALUES:
#       0.DST_END_TIME:
#         MASTER:
#           NVAL       180
#           ONVAL      180
#           OSVAL      180
#           OVAL       180
#           SVAL       180
#           VAL        180
#         VALUES:
#       0.DST_END_WEEK_OF_MONTH:
#         MASTER:
#           NVAL       5
#           ONVAL      5
#           OSVAL      5
#           OVAL       5
#           SVAL       5
#           VAL        5
#         VALUES:
#       0.DST_START_DAY_OF_WEEK:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.DST_START_MONTH:
#         MASTER:
#           NVAL       3
#           ONVAL      3
#           OSVAL      3
#           OVAL       3
#           SVAL       3
#           VAL        3
#         VALUES:
#       0.DST_START_TIME:
#         MASTER:
#           NVAL       120
#           ONVAL      120
#           OSVAL      120
#           OVAL       120
#           SVAL       120
#           VAL        120
#         VALUES:
#       0.DST_START_WEEK_OF_MONTH:
#         MASTER:
#           NVAL       5
#           ONVAL      5
#           OSVAL      5
#           OVAL       5
#           SVAL       5
#           VAL        5
#         VALUES:
#       0.DUTYCYCLE_LIMIT:
#         MASTER:
#           NVAL       180
#           ONVAL      180
#           OSVAL      180
#           OVAL       180
#           SVAL       180
#           VAL        180
#         VALUES:
#       0.DUTY_CYCLE:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      false
#           OVAL       0
#           SVAL       false
#           VAL        0
#       0.ENABLE_ROUTING:
#         MASTER:
#           NVAL       1
#           ONVAL      1
#           OSVAL      1
#           OVAL       1
#           SVAL       1
#           VAL        1
#         VALUES:
#       0.GLOBAL_BUTTON_LOCK:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.HARDWARE_VERSION:
#         SERVICE:
#           NVAL       3
#           ONVAL      3
#           OSVAL      3
#           OVAL       3
#           SVAL       3
#           VAL        3
#         VALUES:
#       0.INSTALL_TEST:
#         VALUES:
#           NVAL       true
#           ONVAL      true
#           OSVAL      true
#           OVAL       true
#           SVAL       true
#           VAL        true
#       0.LOCAL_RESET_DISABLED:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.LOW_BAT:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      ok
#           OVAL       0
#           SVAL       ok
#           VAL        0
#       0.LOW_BAT_LIMIT:
#         MASTER:
#           NVAL       2.2
#           ONVAL      2.2
#           OSVAL      2.2
#           OVAL       2.2
#           SVAL       2.2
#           VAL        2.2
#         VALUES:
#       0.OPERATING_VOLTAGE:
#         VALUES:
#           NVAL       2.8
#           ONVAL      2.8
#           OSVAL      2.8
#           OVAL       2.8
#           SVAL       2.8
#           VAL        2.8
#       0.OPERATING_VOLTAGE_STATUS:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      NORMAL
#           OVAL       0
#           SVAL       NORMAL
#           VAL        0
#       0.OS_VERSION:
#         SERVICE:
#           NVAL       1.30.1
#           ONVAL      1.30.1
#           OSVAL      1.30.1
#           OVAL       1.30.1
#           SVAL       1.30.1
#           VAL        1.30.1
#         VALUES:
#       0.RSSI_DEVICE:
#         VALUES:
#           NVAL       -81
#           ONVAL      -82
#           OSVAL      -82
#           OVAL       -82
#           SVAL       -81
#           VAL        -81
#       0.RSSI_PEER:
#         VALUES:
#           NVAL       -79
#           ONVAL      -79
#           OSVAL      -79
#           OVAL       -79
#           SVAL       -79
#           VAL        -79
#       0.TEST_STATUS:
#         SERVICE:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       0.UNREACH:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      alive
#           OVAL       0
#           SVAL       alive
#           VAL        0
#       0.UPDATE_PENDING:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#       0.UTC_DST_OFFSET:
#         MASTER:
#           NVAL       120
#           ONVAL      120
#           OSVAL      120
#           OVAL       120
#           SVAL       120
#           VAL        120
#         VALUES:
#       0.UTC_OFFSET:
#         MASTER:
#           NVAL       60
#           ONVAL      60
#           OSVAL      60
#           OVAL       60
#           SVAL       60
#           VAL        60
#         VALUES:
#       1.ACTIVE_PROFILE:
#         VALUES:
#           NVAL       2
#           ONVAL      2
#           OSVAL      2
#           OVAL       2
#           SVAL       2
#           VAL        2
#       1.ACTUAL_TEMPERATURE:
#         VALUES:
#           NVAL       14.1
#           ONVAL      14.2
#           OSVAL      14.2
#           OVAL       14.2
#           SVAL       14.1
#           VAL        14.1
#       1.ACTUAL_TEMPERATURE_STATUS:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      NORMAL
#           OVAL       0
#           SVAL       NORMAL
#           VAL        0
#       1.ADAPTIVE_REGULATION:
#         MASTER:
#           NVAL       2
#           ONVAL      2
#           OSVAL      2
#           OVAL       2
#           SVAL       2
#           VAL        2
#         VALUES:
#       1.APPLICATION_VERSION:
#         SERVICE:
#           NVAL       1.0.20
#           ONVAL      1.0.20
#           OSVAL      1.0.20
#           OVAL       1.0.20
#           SVAL       1.0.20
#           VAL        1.0.20
#         VALUES:
#       1.BOOST_AFTER_WINDOW_OPEN:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       1.BOOST_MODE:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      false
#           OVAL       0
#           SVAL       false
#           VAL        0
#       1.BOOST_POSITION:
#         MASTER:
#           NVAL       80
#           ONVAL      80
#           OSVAL      80
#           OVAL       80
#           SVAL       80
#           VAL        80
#         VALUES:
#       1.BOOST_TIME:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#       1.BOOST_TIME_PERIOD:
#         MASTER:
#           NVAL       5
#           ONVAL      5
#           OSVAL      5
#           OVAL       5
#           SVAL       5
#           VAL        5
#         VALUES:
#       1.BOOTLOADER_VERSION:
#         SERVICE:
#           NVAL       1.14.0
#           ONVAL      1.14.0
#           OSVAL      1.14.0
#           OVAL       1.14.0
#           SVAL       1.14.0
#           VAL        1.14.0
#         VALUES:
#       1.DECALCIFICATION_TIME:
#         MASTER:
#           NVAL       22
#           ONVAL      22
#           OSVAL      22
#           OVAL       22
#           SVAL       22
#           VAL        22
#         VALUES:
#       1.DECALCIFICATION_WEEKDAY:
#         MASTER:
#           NVAL       6
#           ONVAL      6
#           OSVAL      6
#           OVAL       6
#           SVAL       6
#           VAL        6
#         VALUES:
#       1.DURATION_5MIN:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       1.FROST_PROTECTION:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      false
#           OVAL       0
#           SVAL       false
#           VAL        0
#       1.HARDWARE_VERSION:
#         SERVICE:
#           NVAL       3
#           ONVAL      3
#           OSVAL      3
#           OVAL       3
#           SVAL       3
#           VAL        3
#         VALUES:
#       1.LEVEL:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0.0
#           SVAL       0
#           VAL        0.0
#       1.LEVEL_STATUS:
#         VALUES:
#           NVAL       0
#           ONVAL      0
#           OSVAL      NORMAL
#           OVAL       0
#           SVAL       NORMAL
#           VAL        0
#       1.MANU_MODE_PRIORITIZATION:
#         MASTER:
#           NVAL       1
#           ONVAL      1
#           OSVAL      1
#           OVAL       1
#           SVAL       1
#           VAL        1
#         VALUES:
#       1.MIN_MAX_VALUE_NOT_RELEVANT_FOR_MANU_MODE:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       1.OPTIMUM_START_STOP:
#         MASTER:
#           NVAL       0
#           ONVAL      0
#           OSVAL      0
#           OVAL       0
#           SVAL       0
#           VAL        0
#         VALUES:
#       1.OS_VERSION:
#         SERVICE:
#           NVAL       1.30.1
#           ONVAL      1.30.1
#           OSVAL      1.30.1
#           OVAL       1.30.1
#           SVAL       1.30.1
#           VAL        1.30.1
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_1:
#         MASTER:
#           NVAL       420
#           ONVAL      420
#           OSVAL      420
#           OVAL       420
#           SVAL       420
#           VAL        420
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_10:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_11:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_12:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_13:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_2:
#         MASTER:
#           NVAL       600
#           ONVAL      600
#           OSVAL      600
#           OVAL       600
#           SVAL       600
#           VAL        600
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_3:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_4:
#         MASTER:
#           NVAL       1320
#           ONVAL      1320
#           OSVAL      1320
#           OVAL       1320
#           SVAL       1320
#           VAL        1320
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_5:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_6:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_7:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_8:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_FRIDAY_9:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_1:
#         MASTER:
#           NVAL       420
#           ONVAL      420
#           OSVAL      420
#           OVAL       420
#           SVAL       420
#           VAL        420
#         VALUES:
#       1.P1_ENDTIME_MONDAY_10:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_11:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_12:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_13:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_2:
#         MASTER:
#           NVAL       600
#           ONVAL      600
#           OSVAL      600
#           OVAL       600
#           SVAL       600
#           VAL        600
#         VALUES:
#       1.P1_ENDTIME_MONDAY_3:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_4:
#         MASTER:
#           NVAL       1320
#           ONVAL      1320
#           OSVAL      1320
#           OVAL       1320
#           SVAL       1320
#           VAL        1320
#         VALUES:
#       1.P1_ENDTIME_MONDAY_5:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_6:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_7:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_8:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_MONDAY_9:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_1:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_10:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_11:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_12:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_13:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_2:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_3:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_4:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_5:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_6:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_7:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_8:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SATURDAY_9:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SUNDAY_1:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SUNDAY_10:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SUNDAY_11:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SUNDAY_12:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
#           OSVAL      1440
#           OVAL       1440
#           SVAL       1440
#           VAL        1440
#         VALUES:
#       1.P1_ENDTIME_SUNDAY_13:
#         MASTER:
#           NVAL       1440
#           ONVAL      1440
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

OdfFhem


is2late

Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

OdfFhem

So bekommst Du eine Liste:
list TYPE=readingsGroup

Dann müsstest Du wissen, welche davon fürs Zeigen in Frage kommen könnte ...

is2late

Super, danke OdfFhem!

Da gibt es nur wenige ReadingsGroups, nämlich acht von/für Sonos und eine einzige für battery. Dessen List sieht so aus:

define ui_battery readingsGroup .*:[Bb]attery
attr ui_battery alias Batteriestatus
attr ui_battery mapping %ALIAS
attr ui_battery notime 1
attr ui_battery room Geräte
attr ui_battery style text-align:left;;
attr ui_battery valueFormat {return "0" if ($VALUE > 3.2 and $VALUE < 26);;\
return "25" if ($VALUE > 25 and $VALUE < 51);;\
return "50" if ($VALUE > 50 and $VALUE < 76);;\
return "75" if ($VALUE > 75 and $VALUE < 100);;\
return "100"}
attr ui_battery valueIcon {'battery.0' => '10px-kreis-rot',\
'battery.25' => '10px-kreis-rot',\
'battery.50' => '10px-kreis-gelb',\
'battery.75' => '10px-kreis-gelb',\
'battery.100' => '10px-kreis-gruen',\
}
attr ui_battery verbose 0


In dieser Gruppe sind verschiedene Geräte zusammengefasst:
- Thermostate   (Reading "battery" mit Wert ok)
- Bewegungssensoren (Reading myBatteryStatus mit Wert OK, Reading battery mit nummerischem Wert) ->Klein-/Großschreibung wurde beachtet
- Hue ambient light sensoren OHNE Wert ok oder OK -> Reading "battery" und "batteryPercent" ist dort nummerisch angegeben.
- Helligkeitssensoren, Dimmer, Temperatursensoren (wie Hue ambient. )

Scheint so, als ob die Thermostate verantwortlich sind, oder? Obwohl im List ja auch kein ok erscheint..

Könnte man das Problem beseitigen, indem das Reading "battery" bei den Thermostaten entweder entfernt oder aber mit einem nummerischen Wert auf Basis des Readings "voltage" oder mit einem beliebigen nummerischen Wert - zB 100 - gefüllt wird? Dieses Reading wird bei den Thermostaten nicht wirklich benötigt.

LG
-
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

OdfFhem

Das Attribut "valueFormat" geht schon mal davon aus, dass $VALUE einen numerischen Wert enthält ... "ok" würde hier nicht passen ...

betateilchen

Eben darauf wollte ich ja mit meinen Fragen hinaus: das Problem ist vom Anwender hausgemacht und hat nichts mit irgendwelchen Modulen (insbesondere nicht HMCCU) zu tun, worum sich ein Modulautor kümmern müsste.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Das Problem dürfte schlichweg sein, dass Dein HMCCU device überhaupt keine Spannungswert als reading "battery" liefert

setstate Fitness_Thermostat 2023-01-20 14:22:29 battery ok

Die Batteriespannung steht im reading "voltage"

setstate Fitness_Thermostat 2023-01-20 14:22:29 voltage 2.8

Aber warum Du die Zuordnungen in Deinem valueFormat zwischen 3,2 und 26 machen (und mit anderen Wertebereichen, die nach Prozente aussehen!) möchtest, erschließt sich mir nicht.

Wenn das reading "battery" einen text "ok" liefert, kannst Du den jedenfalls nicht gegen numerische Wertebereiche vergleichen und brauchst Dich über perl Warnungen, dass das nicht geht, nicht zu wundern.


---
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

is2late

ZitatAber warum Du die Zuordnungen in Deinem valueFormat zwischen 3,2 und 26 machen (und mit anderen Wertebereichen, die nach Prozente aussehen!) möchtest, erschließt sich mir nicht.

Ich kann so etwas garnicht. Hab es von einer Vorlage übernommen und es hat - bis die Thermostate hinzugekommen sind - auch prima funktioniert. Frage ist doch, wie man das lösen kann.
Würde es denn funktionieren, wenn man "ok" als Zahl - zB 100 - interpretierte, etwa so:

return "100" if ($VALUE = okay);;\ 

Oder kennt Ihr eine Möglichkeit, das Reading "battery" beim Device anders zu füllen, nämlich grundsätzlich mit einer Zahl, die durchaus bezugslos sein kann, etwa "100"?


Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

betateilchen

Verstehst Du überhaupt, was Du da tust und was das Ergebnis sein soll?
Mit "Vorlage übernehmen" ohne zu verstehen, was die Vorlage tut, kommt man selten weiter.

Zitat von: is2late am 20 Januar 2023, 17:52:29
Oder kennt Ihr eine Möglichkeit, das Reading "battery" beim Device anders zu füllen,

Brauchst Du doch gar nicht. Du musst einfach nur in Deinem valueFormat dafür sorgen, dass der Wert "ok" mit berücksichtigt wird.


attr ui_battery valueFormat {return "100" if ($VALUE eq "ok");;\
return "0" if ($VALUE > 3.2 and $VALUE < 26);;\
return "25" if ($VALUE > 25 and $VALUE < 51);;\
return "50" if ($VALUE > 50 and $VALUE < 76);;\
return "75" if ($VALUE > 75 and $VALUE < 100);;\
return "100"}


Genau nach diesem Schema musst Du natürlich auch noch eine Abfrage für den Fall einbauen, dass ein Text zurückgeliefert wird, der "nicht ok" bedeutet - diesen musst Du dann auf "0" mappen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

is2late

ZitatVerstehst Du überhaupt, was Du da tust

Leute, seid nicht so streng mit mir. Nein, ich verstehe maximal in Teilen, was da vor sich geht. Behaupte aber auch nicht anderes. Bin Anfänger und werde es als unbedarfter Rentner bleiben. Habe trotzdem dank der Hilfe aus dem Forum und -ja! - Copy and Paste eine funktionierende Homeautomation zusamengebracht. Wenn es im Betrieb durch neue Geräte oä hakt und ich nicht weiterkomme, muss ich halt mal fragen. Ich will aber niemanden belästigen. Wer sich also durch meine Unwissenheit belästigt fühlt, mag sich frei fühlen, meine Anfragen zu ignorieren.

@betateilchen: Danke für den Code!
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

betateilchen

Weder bin ich streng, noch fühle ich mich belästigt.

Eigentlich bin ich nur sehr irritiert, dass Du eine readingsGroup verwendest, ohne zu wissen, wie das funktioniert.
Das ist halt der Fluch von copy & paste.

Und in dem Zusammenhang finde ich es halt manchmal fragwürdig, sich auf die Hilfe aus dem Forum zu verlassen, anstatt sich selbst ein paar Grundlagen anzueignen.

Versteh mich bitte nicht falsch: Du sollst nicht professioneller Programmierer werden. Aber eine Fehlermeldung (oder eine perl Warnung) zumindest inhaltlich einordnen zu können, ist m.E. von einem Anwender nicht zuviel verlangt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!