Appeler un service d'une intégration

Bonjour.

J’ai installé l’intégration Marstek

Pour piloter ma batterie Marstek Venus E 3

Mais je ne comprends pas où déclarer les services pour définir mes plages horaires de charge (Point 6 sur le Git)

J’ai un bouton pour changer d’état :

Mais quand je passe ne Manual, il ne va pas activer les plannings qui ont été définis par l’application Marstek et stockés dans la batterie, je dois les fournir via un service :

service: marstek_local_api.set_manual_schedules
data:
  device_id: "1234567890abcdef1234567890abcdef"
  schedules:
    - time_num: 0
      start_time: "08:00"
      end_time: "16:00"
      days: [mon, tue, wed, thu, fri]
      power: -2000  # Charge at max 2000W
      enabled: true
    - time_num: 1
      start_time: "18:00"
      end_time: "22:00"
      days: [mon, tue, wed, thu, fri]
      power: 800  # Discharge at max 800W
      enabled: true

Mais je ne sais pas où stocker ce code et comment l’appeler.

J’ai essayé de mettre ça dans le configuration.yaml mais quand je valide ma configuration, j’ai une erreur.

Sur la page Git, le développeur dit qu’on peut passer par Developper’s tools → Services

Mais je n’ai pas ça.

Et comment mettre le code dans une automatisation ?

J’ai aussi tenté de mettre un include dans le configuration.yaml :

service: !include services.yaml

et créer un services.yaml avec ce code :

marstek_local_api.set_manual_schedules:
  data:
    device_id: "c90fb17c5ff099cea0c441077eb1a864"
    schedules:
      - time_num: 0
        start_time: "22:00"
        end_time: "23:59"
        days: [mon, tue, wed, thu, fri, sat, sun]
        power: -800  # Charge at max 800
        enabled: true
      - time_num: 1
        start_time: "00:00"
        end_time: "06:00"
        days: [mon, tue, wed, thu, fri, sat, sun]
        power: -800  # Charge at max 800
        enabled: true

Mais quand je valide la configuration YAML, j’ai cette erreur :
Configuration warnings
Integration error: service - Integration ‘service’ not found.

Je patauge avec cette histoire de service !

Et dans l’éditeur de Studio Code Server, si je commance à taper marstek_local, il ne me propose qu’un service :

Salut

Si, si. En français, tu vas dans Outils de Dévelopement → Actions.
Et tu pourras tester les services.

Non, ça ne marche pas comme ça. Supprime ça, tu n’as rien besoin d’ajouter dans le fichier configuration.

Tu n’as pas besoin de déclarer les services, ils existent déjà dans l’intégration.
T’as juste besoin de les utiliser dans des automatisations.

Commence par tester les via ‹ Outils de Dévelopement → Actions › et ensuite tu pourras copier le code dans une automatisation.

Mais le truc, c’est que quand je vais dans les Actions, je ne vois qu’un seul service pour l’intégration Marstek Local API:

Donc j’ai accès qu’au service pour la synchronisation :

Mais pas les autres services.

J’ai installé une autre intégration, d’où la présente d’une 2ème ligne

EDIT : Je suis passé en 1.2.0RC7 car j’ai vu sur un des tickets github du projet que cela corrigeait un problème de planning et maintenant, j’ai bien les services qui m’intéressent dans Actions

Ce sujet a été automatiquement fermé après 2 jours. Aucune réponse n’est permise dorénavant.