Index: leahi_dialin/ui/td_messaging_alarms.py =================================================================== diff -u -rcb7e73519ab21230d8b2c4f24f58ff7d8cf22dd5 -r287c39e4bb0d8f8d66a4f556f18ffc4e51f1e977 --- leahi_dialin/ui/td_messaging_alarms.py (.../td_messaging_alarms.py) (revision cb7e73519ab21230d8b2c4f24f58ff7d8cf22dd5) +++ leahi_dialin/ui/td_messaging_alarms.py (.../td_messaging_alarms.py) (revision 287c39e4bb0d8f8d66a4f556f18ffc4e51f1e977) @@ -31,30 +31,26 @@ self.can_enabled = True - def cmd_activate_alarm_id(self, state: int = AlarmPriority.ALARM_HIGH, - alarm: int = 0, - escalates_in: int = 0, - silence_expires: int = 0, - flags: int = 0): + def cmd_activate_alarm_id(self, + state: int = AlarmPriority.ALARM_HIGH, + alarm: int = 0, + silence_expires: int = 0, + flags: int = 0): """ Activates the specified alarm @param state: (int) Alarm priority @param alarm: (int) the alarm id - @param escalates_in: (int) how long until the alarm escalates @param silence_expires: (int) seconds until silence expires @param flags: (int) See 'cmd_make_alarm_flags' @return: None """ - state = conversions.integer_to_bytearray(state) - top = conversions.integer_to_bytearray(alarm) - escalates_in = conversions.integer_to_bytearray(escalates_in) - silence_expires = conversions.integer_to_bytearray(silence_expires) - flags = conversions.integer_to_bytearray(flags) + payload = conversions.integer_to_bytearray (state ) + payload += conversions.integer_to_bytearray (alarm ) + payload += conversions.integer_to_bytearray (silence_expires) + payload += conversions.short_to_bytearray (flags ) - payload = state + top + escalates_in + silence_expires + flags - message = CAN.DenaliMessage.build_message( channel_id=CAN.DenaliChannels.td_alarm_broadcast_ch_id, message_id=CAN.MsgIds.MSG_ID_ALARM_STATUS_DATA.value, @@ -63,35 +59,42 @@ self.can_interface.send(message, 0) - def cmd_send_general_response(self, message_id: int, accepted: int, reason: int, - is_pure_data: bool = False, - has_parameters: bool = False, - parameters_payload: any = 0x00, - channel_id=CAN.DenaliChannels.td_to_ui_ch_id) -> None: + def cmd_send_active_list_response(self, accept: bool, reason: int = 0, + a0: int = 0, a1: int = 0, a2: int = 0, a3: int = 0, a4: int = 0, + a5: int = 0, a6: int = 0, a7: int = 0, a8: int = 0, a9: int = 0) -> None: """ - a general method to send any standard response message, by it's id and list of parameters. - @param message_id: the id of the message - @param accepted: the standard accepted parameter of any response message - @param reason: the standard rejection reason parameter of any response message - @param is_pure_data: The message only has data - @param has_parameters: if the message has parameter this needs to be true. - @param parameters_payload: the list of parameters pre-converted and ready to be concatenated to the payload. - @param channel_id: (int) indicates the channel + send the list of active alarms + @param accept: boolean value true if the request accepted + @param reason: the rejection reason + @param a0: alarm id 0 in the list - First + @param a1: alarm id 1 in the list + @param a2: alarm id 2 in the list + @param a3: alarm id 3 in the list + @param a4: alarm id 4 in the list + @param a5: alarm id 5 in the list + @param a6: alarm id 6 in the list + @param a7: alarm id 7 in the list + @param a8: alarm id 8 in the list + @param a9: alarm id 9 in the list - Last @return: None """ + payload = conversions.integer_to_bytearray(accept) + payload += conversions.integer_to_bytearray(reason) + payload += conversions.integer_to_bytearray(a0) + payload += conversions.integer_to_bytearray(a1) + payload += conversions.integer_to_bytearray(a2) + payload += conversions.integer_to_bytearray(a3) + payload += conversions.integer_to_bytearray(a4) + payload += conversions.integer_to_bytearray(a5) + payload += conversions.integer_to_bytearray(a6) + payload += conversions.integer_to_bytearray(a7) + payload += conversions.integer_to_bytearray(a8) + payload += conversions.integer_to_bytearray(a9) - payload = "" - if not is_pure_data: - payload = conversions.integer_to_bytearray(accepted) - payload += conversions.integer_to_bytearray(reason ) - - if has_parameters: - payload = parameters_payload - message = CAN.DenaliMessage.build_message( - channel_id, - message_id, - payload - ) + channel_id=CAN.DenaliChannels.td_to_ui_ch_id, + message_id=CAN.MsgIds.MSG_ID_TD_ACTIVE_ALARMS_LIST_REQUEST_RESPONSE.value, + payload=payload) self.can_interface.send(message, 0) +