Class IoKontaktService

java.lang.Object
com.hildeio.services.IoKontaktService

@Service public class IoKontaktService extends Object
Service zur Zustands-Aktualisierung der Tuer- und Fensterkontakte
  • Field Details

    • COLLECTION

      static final String COLLECTION
      KONSTANTE fuer Firestore Collections ioKontakte
      See Also:
    • COLLECTION_VARIABLEN

      static final String COLLECTION_VARIABLEN
      KONSTANTE fuer Firestore Collections ioKontakte
      See Also:
    • log4Hilde

      @Autowired Log4Hilde log4Hilde
      Dependency Injection auf Log4Hilde
    • fcmNotificationService

      @Autowired FbNotificationService fcmNotificationService
      Dependency Injection auf FCM NotificationService
  • Constructor Details

    • IoKontaktService

      public IoKontaktService()
  • Method Details

    • createKontakt

      public String createKontakt(IoKontaktModel ioKontakteModel, String eventId)
      Neuen Tuer- bzw. Fensterkontakt anlegen.
      Parameters:
      ioKontakteModel - Aktuelle Werte des Kontakts von der HomeMatic CCU.
      eventId - Aktuelle WorkflowId
      Returns:
      Aenderungsdatum (String) des Kontakt-Dokuments in ioKontakte.
    • getKontakt

      public IoKontaktModel getKontakt(String iseId, String eventId)
      Rueckgabe der Werte des Tuer- bzw. Fensterkontakts.
      Parameters:
      iseId - Channel-ID Kontakts
      eventId - Aktuelle WorkflowId
      Returns:
      ioKontaktModel Werte des Tuer- bzw. Fensterkontakts
    • updateKontakt

      public String updateKontakt(IoKontaktModel ioKontakteModel, String eventId)
      Tuer- bzw. Fensterkontakt aktualisieren.
      Parameters:
      ioKontakteModel - Werte des Kontakts.
      eventId - Aktuelle WorkflowId
      Returns:
      Aenderungsdatum (String) des Kontakt-Dokuments in ioKontakte.
    • updateModel

      private IoKontaktModel updateModel(IoKontaktModel ioKontakteModel, String eventId)
      Ermitteln der aktuellen Werte des zu aenderden Dokuments. Bestimmte Felder werden in dem ioKontakteModel wieder gesetzt.
      Parameters:
      ioKontakteModel - Werte des KontaktAktors.
      eventId - Aktuelle WorkflowId
      Returns:
      aktualisiertes ioKontaktModel.
    • deleteKontakt

      public String deleteKontakt(String iseId, String eventId)
      Rueckgabe der Werte des Tuer- bzw. Fensterkontakts.
      Parameters:
      iseId - Channel-ID Kontakts
      eventId - Aktuelle WorkflowId
      Returns:
      Loeschdatum (String) des Kontakt-Dokuments in ioKontakte.
    • checkKontakteOffen

      public void checkKontakteOffen(String eventId)
      Senden einer FCM PushNotification bei Abwesenheit und offenen Tueren/Fenstern.
      Parameters:
      eventId - Aktuelle WorkflowId