Naar inhoud springen

openHAB Integratie

Het volgende beschrijft de integratie in openHAB zodat u afvalinformatie eenvoudig kunt verwerken in uw smart home.

Afhankelijkheden installeren

Voor de verbinding zijn twee dingen nodig! Ten eerste de HTTP Binding en ten tweede (voor gegevensverwerking) de JSONPATH Data Transformation Service. HTTP Binding (opent in nieuw tabblad) / JSONPATH Data Transformation (opent in nieuw tabblad).

openHAB HTTP Binding
HTTP Binding installeren in openHAB

Thing aanmaken

Maak een HTTP Thing aan en configureer het als volgt (code) – Let op dat er geen umlauten/speciale tekens in headers mogen worden verzonden.

UID: http:url:xxxxxxx
label: Müll.io
thingTypeUID: http:url
configuration:
  authMode: BASIC
  ignoreSSLErrors: false
  baseURL: https://müll.io/api/fetch
  delay: 0
  stateMethod: POST
  refresh: 21600
  commandMethod: POST
  contentType: text/plain
  timeout: 6000
  bufferSize: 2048
  headers:
    - "X-Address-Street=XXX"
    - "X-Address-HouseNumber=XXX"
    - "X-Address-Zip=XXX"
    - "X-Address-City=XXXX"
    - "X-Address-Country=DE"
channels:
  - id: residual_waste_last
    channelTypeUID: http:datetime
    label: Restmüll (letzte)
    description: ""
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.residualWaste.last
  - id: residual_waste_next
    channelTypeUID: http:datetime
    label: Restmüll (nächste)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.residualWaste.next
  - id: residual_waste_next_days
    channelTypeUID: http:number
    label: Restmüll (nächste) relative
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.residualWaste.nextDays
  - id: paper_last
    channelTypeUID: http:datetime
    label: Papier (letzte)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.paper.last
  - id: paper_next
    channelTypeUID: http:datetime
    label: Papier (nächste)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.paper.next
  - id: paper_next_days
    channelTypeUID: http:number
    label: Papier (nächste) relative
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.paper.nextDays
  - id: reusable_materials_last
    channelTypeUID: http:datetime
    label: Wertstoffe (letzte)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.reusableMaterials.last
  - id: reusable_materials_next
    channelTypeUID: http:datetime
    label: Wertstoffe (nächste)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.reusableMaterials.next
  - id: reusable_materials_next_days
    channelTypeUID: http:number
    label: Wertstoffe (nächste) relative
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.reusableMaterials.nextDays
  - id: bio_last
    channelTypeUID: http:datetime
    label: Bio (letzte)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.bio.last
  - id: bio_next
    channelTypeUID: http:datetime
    label: Bio (nächste)
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.bio.next
  - id: bio_next_days
    channelTypeUID: http:number
    label: Bio (nächste) relative
    description: null
    configuration:
      mode: READONLY
      stateTransformation: JSONPATH:$.bio.nextDays
#  - id: christmas_tree_last
#    channelTypeUID: http:datetime
#    label: Weihnachtsbaum (letzte)
#    description: null
#    configuration:
#      mode: READONLY
#      stateTransformation: JSONPATH:$.christmasTree.last
#  - id: christmas_tree_next
#    channelTypeUID: http:datetime
#    label: Weihnachtsbaum (nächste)
#    description: null
#    configuration:
#      mode: READONLY
#      stateTransformation: JSONPATH:$.christmasTree.next
#  - id: christmas_tree_next_days
#    channelTypeUID: http:number
#    label: Weihnachtsbaum (nächste) relative
#    description: null
#    configuration:
#      mode: READONLY
#      stateTransformation: JSONPATH:$.christmasTree.nextDays
Thing-configuratie inclusief kanaal

Opmerking: Momenteel zijn de volgende afvalsoorten beschikbaar (label / sleutel): Papierafval (paper), gft-afval (bio), restafval (residualWaste), herbruikbare materialen (reusableMaterials), kerstbomen (christmasTree), gevaarlijk afval (toxic), luiers (diaper) en haagsnoeien (hedgeTreeTrimming)

Items

Maak items aan op basis van de overeenkomstige kanalen.

Optioneel: Datumformaat

U kunt de datum correct opmaken door een State Description aan te maken, bijv. in de vorm "%1$td.%1$tm.%1$tY". Voor relatieve dagen kan deze State Description ook worden gebruikt: "%.0f dag(en)".

Klaar!

Dat is alles. Verlaag de "delay" niet, want frequente verzoeken zijn niet nodig.

← Overzicht integraties