38 lines
1.2 KiB
Go
Executable File
38 lines
1.2 KiB
Go
Executable File
package participanthandler
|
|
|
|
import "time"
|
|
|
|
// ChangeAbcProtection ändert den ABC-Schutzstatus eines Geräts.
|
|
// equipmentNumber: Die Nummer des Geräts, dessen ABC-Schutzstatus geändert werden soll.
|
|
// abcProtection: Der neue Status des ABC-Schutzes (true für aktiv, false für inaktiv).
|
|
// Rückgabewert: Gibt einen Fehler zurück, falls die Änderung fehlschlägt.
|
|
func (c *ParticipantHandler) ChangeAbcProtection(equipmentNumber int, abcProtection bool) error {
|
|
// Erstellen einer Anfrage zur Änderung des ABC-Schutzstatus
|
|
req := AbcProtectionChangeRequest{
|
|
Data: struct {
|
|
Header struct {
|
|
EquipmentNumber int `json:"equipmentNumber"`
|
|
TimeStamp int `json:"timeStamp"`
|
|
} `json:"header"`
|
|
NbcProtectionActive bool `json:"nbcProtectionActive"`
|
|
}{
|
|
Header: struct {
|
|
EquipmentNumber int `json:"equipmentNumber"`
|
|
TimeStamp int `json:"timeStamp"`
|
|
}{
|
|
EquipmentNumber: equipmentNumber,
|
|
TimeStamp: int(time.Now().UnixMilli()),
|
|
},
|
|
NbcProtectionActive: abcProtection,
|
|
},
|
|
TypeID: 7,
|
|
}
|
|
|
|
// Senden der Anfrage über den MariusSocket
|
|
if err := c.MariusSocket.WriteJSON(req); err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|