Kodi Popup Fenster via Bashscript erzeugen, anzeigen und ausblenden

  • Hallo zusammen

    Wie ich es in der Überschrift schon erwähnt habe, würde ich gern aus einem
    Linux Bashscript heraus ein Popup-Fenster in Kodi erzeugen.
    Möglich wäre es auch zum Beispiel über den Konsolenbefehl "python" script.py

    Hat da jemand einen Ansatz dies umzusetzen?

    Vielen dank im voraus für eure Hilfe

  • Hab das Problem gelöst!
    Der Code ist unten. Vielleicht hilft es ja noch sonst jemanden :rolleyes:

    Entweder auf diese Art:
    xbmc-send -a "Notification(Information, Verbindung unterbrochen, 10000)"

    oder:

    #! /bin/bash
    LOCAL_HOST=$(ip addr show | awk '/inet / {print $2}' | cut -d/ -f1 | awk 'NR==2{print $1}')
    KODI_HOSTS=("127.0.0.1")
    KODI_PORT="8080"
    KODI_IMAGE="warning"
    KODI_DISPLAYTIME=10000
    for KODI_HOST in "${KODI_HOSTS[@]}"
    do
    KODI_TITLE="Information"
    KODI_MESSAGE="Verbindung unterbrochen"
    if [ "$KODI_HOST" == "$LOCAL_HOST" ] ||
    [ "$KODI_HOST" == "127.0.0.1" ] ||
    [ "$KODI_HOST" == "localhost" ]
    then
    KODI_TITLE="$KODI_TITLE"
    else
    KODI_TITLE="$KODI_TITLE on $LOCAL_HOST!"
    fi

    curl -fs -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"GUI.ShowNotification","params":{"title":"'"$KODI_TITLE"'","message":"'"$KODI_MESSAGE"'","image":"'"$KODI_IMAGE"'","displaytime":'"$KODI_DISPLAYTIME"'},"id":1}' http://$KODI_HOST:$KODI_PORT/jsonrpc

    sleep $(( KODI_DISPLAYTIME / 1000 ) / 5)
    done

  • Es geht auch anders, wenn du es nicht so kompliziert mit dem curl machen möchtest. Es gibt das Kodi paket "kodi-send". Das musst du unter Ubuntu noch installieren...ist im Kodi ppa. Damit kannst du vordefinierte eingebaute Python Funktionen in Kodi aufrufen. Dafür musst du in Kodi aber das hier aktiviert haben:

    Eine Liste der Befehle, die du mit kodi-send ausführen kannst ist hier:

    http://kodi.wiki/view/List_of_built-in_functions

    Es gibt folgende Funktion: "Notification(header,message[,time,image])"


    Ein Befehl via Bash könnte also dann wie folgt aussehen:


    Bash
    #!/bin/bash
    kodi-send --host=127.0.0.1 --action="Notification(Titel,Text,5000,DefaultIconError.png)"


    --host ist nat+rlich optional, wenn du den Befehl auf der gleichen Maschine ausführst, auf dem auch Kodi installiert ist. Wenn nicht, dann ist es klar, wie du es benutzen musst, denke ich ;)

    5000=millisekunden
    Du kannst anstatt DefaulIconError.png auch DefaultIconWarning.png oder DefaultIconInfo.png nehmen. Nur "error", "warning" oder "info" hat bei mir kein Icon gezeigt.

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Hi,

    das ist genau das was ich suche nur leider will es sich auf meinem Raspberry mit Raspbian nicht installieren. Habe das ganze auf meinen NAS getestet und da geht es wunderbar. Leider bin ich voll der Linux Depp aber vielleicht weis ja jemand weiter.

    Wenn ich dieses eingebe:

    Code
    sudo apt-get install kodi-eventclients-kodi-send

    kommt diese Fehlermeldung:

    Hab schon folgendes versucht:

    sudo apt-get update && sudo apt-get upgradesudo apt-get -f installsudo apt-get -f removesudo apt-get autoremovesudo apt-get autoclean


    Lg Kayfun


    *Edit*

    Wenn ich erst die "kodi-eventclients-common" installiere und danach "kodi-eventclients-kodi-send" kommt auch nen Fehler:


  • Code
    apt-cache policy kodi
    kodi:
      Installiert:           (keine)
      Installationskandidat: 2:17.3-1~jessie
      Versionstabelle:
         2:17.3-1~jessie 0
            500 http://archive.raspberrypi.org/debian/ jessie/main armhf Packages
         16.1+dfsg1-2~bpo8+2 0
            100 http://http.debian.net/debian/ jessie-backports/main armhf Packages

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!