Gyengus™ weblapja

Árfolyamok megjelenítése

Szeretném, ha a Home Assistant nem csak egy felület lenne amin keresztül vezérelhetem az okos otthonom, hanem egyfajta központ is. Legyenek rajta fontos és hasznos információk is, például időjárás előrejelzés, árfolyamok. Ebben a cikkben az árfolyamok megjelenítésére mutatok három módszert.

Bitcoin árfolyam lekérése

A népszerű Bitcoint támogatja a Home Assistant. Csak be kell kapcsolni a komponensét, ehhez a következő sorokat kell a configuration.yaml fájlba írni:

    sensors:
      - platform: bitcoin
        display_options:
          - exchangerate

Amerikai dollár, euró, angol font

Találtam egy ingyenesen használható API-t ami JSON-ben megadja a kért árfolyamokat. Ez a Fixer. Például a https://api.fixer.io/latest?base=USD&symbols=HUF címre a következő választ kaptam a cikk írásának pillanatában:

    {
        base: "USD",
        date: "2018-01-19",
        rates: {
            HUF: 252.31
        }
    }

Ezt nagyon könnyen fel lehet dolgoztatni a Home Assistant REST sensor komponensével. A következőket kell beírni a configuration.yaml fájlba:

      - platform: rest
        resource: https://api.fixer.io/latest?base=USD&symbols=HUF
        method: GET
        name: exchange_rate_usd
        value_template: "{{ value_json.rates.HUF }}"
        unit_of_measurement: HUF

      - platform: rest
        resource: https://api.fixer.io/latest?base=EUR&symbols=HUF
        method: GET
        name: exchange_rate_eur
        value_template: "{{ value_json.rates.HUF }}"
        unit_of_measurement: HUF

      - platform: rest
        resource: https://api.fixer.io/latest?base=GBP&symbols=HUF
        method: GET
        name: exchange_rate_gbp
        value_template: "{{ value_json.rates.HUF }}"
        unit_of_measurement: HUF

Más kriptovaluta árfolyamok

A Bitcoinon kívül még érdekel más kriptovaluta árfolyama is. A Coinmarketcap is rendelkezik ingyenesen használható API-val és rengeteg valuta árfolyamát kísérhetjük figyelemmel a segítségével. Ehhez viszont írtam egy Go programot. Már csak a gyakorlás miatt is. Ez a program indulás után lekéri az árfolyamokat, majd publikálja őket egy MQTT témába, végül kilép. Ezt a programot cron segítségével 15 percenként lefuttatom. A program konfigurációja így néz ki:

    {
        "mqtt": {
            "server": "192.168.XXX.XXX",
            "port": 1883,
            "topic": "exchange_rates",
            "clientID": "altcoin_exchange_rates"
        },
        "url": "https://api.coinmarketcap.com/v1/ticker/",
        "request_timeout": 20,
        "coins": [
            "ethereum",
            "monero",
            "ripple",
            "zcash",
            "bytecoin-bcn"
        ],
        "logfile": "altcoin_exchange_rates.log"
    }

Így, pedig a Home Assistanté:

      - platform: mqtt
        state_topic: "exchange_rates"
        name: "Bytecoin"
        unit_of_measurement: "USD"
        value_template: "{{ value_json['bytecoin-bcn'].price_usd }}"

      - platform: mqtt
        state_topic: "exchange_rates"
        name: "Ethereum"
        unit_of_measurement: "USD"
        value_template: "{{ value_json.ethereum.price_usd }}"

      - platform: mqtt
        state_topic: "exchange_rates"
        name: "Monero"
        unit_of_measurement: "USD"
        value_template: "{{ value_json.monero.price_usd }}"

      - platform: mqtt
        state_topic: "exchange_rates"
        name: "Ripple"
        unit_of_measurement: "USD"
        value_template: "{{ value_json.ripple.price_usd }}"

      - platform: mqtt
        state_topic: "exchange_rates"
        name: "Zcash"
        unit_of_measurement: "USD"
        value_template: "{{ value_json.zcash.price_usd }}"

A program forráskódja megtalálható GitHubon.

Grafikonok, képek

A Home Assistant elmenti a kapott árfolyam adatokat és automatikusan grafikonokat rajzol belőlük. Mutatok képet arról, hogy nálam hogy jelennek meg az árfolyamok és a grafikonok.

Kategóriák: IT, Programozás
Dátum: 2018. január. 21.
Ha tetszett a cikk, oszd meg barátaiddal:
« »