Skip to content

HomeAssistant Integration for Football/Calcio - SerieA - Champions Langue and more

License

Notifications You must be signed in to change notification settings

Bobsilvio/calcio-live

Repository files navigation

Calcio Live - Home Assistant Integration

Supportami

Se ti piace il mio lavoro e vuoi che continui nello sviluppo delle card, puoi offrirmi un caffè.

PayPal

Non dimenticare di seguirmi sui social:

TikTok

Instagram

YouTube

Video Guida

Guarda il video su YouTube

Descrizione

L'integrazione "Calcio Live" per Home Assistant permette di ottenere informazioni in tempo reale sulle competizioni di calcio, come classifiche, cannonieri e giornate di campionato.

HACS

Installazione manuale tramite HACS

  1. Aggiungi il repository https://github.com/Bobsilvio/calcio-live in HACS come INTEGRAZIONE. INSTALLAZIONE

  2. Cerca "Calcio Live" in HACS e installa l'integrazione. HACS

  3. Vai su Impostazioni > Integrazione > Aggiungi Integrazione e cerca 'Calcio-Live'

  4. Configura l'integrazione tramite l'interfaccia di Home Assistant.

NOTA: !!!! NON DIMENTICARE IL PUNTO 7 - LE CARD VANNO INSTALLATE A PARTE COME PUNTO 1 e 2!!!!

  1. Scegli il campionato da seguire o della tua squadra, è molto intuitivo i nomi sono assegnati automaticamente e la squadra la devi scegliere in base al campionato, ma non ti preoccupare, se non la trovi puoi inserire in fondo ad ogni campionato un id personale o all'inizio della configurazione. Nella versione v2.1.1 è stata introdotta la data, quindi puoi scegliere da che data a che data vedere le partite, puoi selezionare anche tutto il campionato inserendo 1 anno intero.

    HACS HACS HACS HACS

7. Per la card, vai su: https://github.com/Bobsilvio/calcio-live-card e segui le istruzioni

Note

Puoi seguire più campionati o più squadre

Automazioni

Notifica 15 minuti prima dell'inizio della partita

iniziopartita

Notifica l'inizio della partita 15 minuti prima usando il sensore sensor.calciolive_next....
Nota: Cambia anche notify.mobile_app_xxx con il tuo dispositivo.

alias: CalcioLive - Notifica 15 minuti prima della partita Inter
description: Invia una notifica al cellulare 15 minuti prima dell'inizio della partita.
trigger:
  - platform: template
    value_template: >
      {{
      (as_timestamp(strptime(state_attr('sensor.calciolive_next_ita_1_internazionale',
      'matches')[0].date, '%d/%m/%Y %H:%M')) - 900) | timestamp_custom('%Y-%m-%d
      %H:%M') == now().strftime('%Y-%m-%d %H:%M') }}
condition:
  - condition: template
    value_template: >
      {{ state_attr('sensor.calciolive_next_ita_1_internazionale',
      'matches')[0].state == 'pre' }}
action:
  - service: notify.mobile_app_xxx
    data:
      title: CalcioLive - Promemoria Partita
      message: >
        La partita tra {{
        state_attr('sensor.calciolive_next_ita_1_internazionale',
        'matches')[0].home_team }} e {{
        state_attr('sensor.calciolive_next_ita_1_internazionale',
        'matches')[0].away_team }} inizierà tra 15 minuti!
      data:
        image: >
          {{ state_attr('sensor.calciolive_next_ita_1_internazionale', 'team_logo') }}
mode: single

Notifica Goal con dettagli su minuti e giocatore usando il sensore sensor.calciolive_next....
Nota: Cambia anche notify.mobile_app_xxx con il tuo dispositivo.

alias: CalcioLive - Notifica Goal Internazionale con Minuti e Giocatore
description: Invia una notifica quando Internazionale segna un gol, specificando i minuti e il nome del giocatore.
trigger:
  - platform: template
    value_template: >
      {% for event in state_attr('sensor.calciolive_next_ita_1_internazionale', 'matches')[0].match_details %}
        {% if 'Goal' in event or 'penalty' in event %}
          true
        {% endif %}
      {% endfor %}
condition: []
action:
  - service: notify.mobile_app_xxx
    data_template:
      title: >
        CalcioLive - Partita {{
        state_attr('sensor.calciolive_next_ita_1_internazionale', 'matches')[0].home_team
        }} vs {{
        state_attr('sensor.calciolive_next_ita_1_internazionale', 'matches')[0].away_team
        }}
      message: >
        {% for event in state_attr('sensor.calciolive_next_ita_1_internazionale', 'matches')[0].match_details %}
          {% if 'Goal' in event or 'penalty' in event %}
            {% set minuto = event.split("'")[0].split("-")[-1].strip() %}
            {% set giocatore = event.split("': ")[1].strip() %}
            ⚽ {{ 'Rigore segnato da' if 'penalty' in event else 'Gol segnato da' }} {{ giocatore }} al minuto {{ minuto }}!
          {% endif %}
        {% endfor %}
mode: single

Informazioni

Questa è la mia prima card e sicuramente c'è tanto lavoro da fare, se vi piace, potete ricambiare seguendomi nei social:

TikTok: @silviosmartalexa