Ankündigung

Einklappen
Keine Ankündigung bisher.

Befehl an raspberry senden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Befehl an raspberry senden

    hallo Openhab Freunde
    ich habe ein kleines Problem

    wenn ich im putty das Script ausführe /scripts/tts.sh "willkommen im Wohnzimmer" 100

    dann spricht der raspberry

    wenn ich aber dann im Openhab
    den Befehl
    Code:
    { exec="ON:/scripts/tts.sh" }
    sende passiert nichts. Kann bitte jemand helfen? Danke im Voraus

    #2
    darf der openhab-User das Script ausführen?

    Kommentar


      #3
      Das ist eine gute Frage. Was mich wundert ist das der raspberry exec Befehle an meinen wifi Controller oder an meine dreambox von Openhab aus schickt.

      Kommentar


        #4
        Warum probierst du es nicht aus?
        Code:
        su - <dein openhab user>
        /scripts/tts.sh
        Gruß

        Kommentar


          #5
          So wie ich das sehe, übergibst Du dem Script beim Aufruf 2 Variablen, im Beispiel "willkommen im Wohnzimmer" und die Zahl 100. Im Binding sehe ich davon jedoch nichts. Wenn ich das richtig interpretiere, ist die 100 die Lautstärke, in der der Text ausgegeben werden soll. Und welchen Text soll exec an das Script schicken?
          Zuletzt geändert von udo1toni; 29.12.2015, 20:12.

          Kommentar


            #6
            Ich poste nachher mal die genauen scripte und die Inhalte. Im putty gebe ich wie erwähnt
            Code:
            /scripts/tts.sh "willkommen im Wohnzimmer" 100
            um es in Openhab auszuführen, habe ich ein Script mit dem Namen vorlesen.sh erstellt mit dem Inhalt
            Code:
             #!/bin/bash
            /scripts/tts.sh "Wilkommen im Wohnzimmer" 100" &> /dev/null
            wenn ich dann vorlesen.sh im putty eingebe, kommt die Sprachausgabe.

            das Item in Openhab heißt Switch test { exec="ON:/scripts/vorlesen.sh" }
            Zuletzt geändert von Pedro85; 29.12.2015, 20:39.

            Kommentar


              #7
              Liegt vorlesen.sh denn auch in /scripts/ ?
              Ansonsten könntest Du auch einfach { exec="ON:/scripts/tts.sh willkommen\ im\ Wohnzimmer 100" } versuchen - der Backslash sollte in diesem Fall dafür sorgen, dass die Leerzeichen im Text als Teil des Strings betrachtet werden.

              Kommentar


                #8
                ja das vorlesen.sh ist auch in /scripts
                leider funktioniert dein beispiel leider auch nicht :-(

                Kommentar


                  #9
                  Die zentrale Frage, ob der OpenHAB-User das Skript überhaupt ausführen kann, hast du noch immer nicht beantwortet. Wie du es testen kannst, hab ich ja oben geschrieben.

                  Kommentar


                    #10
                    Unbenannt.png


                    sorry fürs nicht gleich testen

                    EDIT: da kommt bei su - pedro/scripts/tts.sh
                    kein passworteintrag für benutzer
                    Zuletzt geändert von Pedro85; 30.12.2015, 22:10.

                    Kommentar


                      #11


                      Ich habe nicht geschrieben, du sollst

                      Code:
                      su - pedro/scripts/tts.sh

                      eintippen, sondern

                      Code:
                      su - <dein openhab user>
                      /scripts/tts.sh
                      Das sind mindestens zwei Zeilen .
                      Wobei das zwischen den Klammern <...> mit dem Benutzernamen des Openhab-users zu befüllen ist. Die Klammern dann aber wegglassen!
                      Am besten du machst einen Screenshot mit den Zeilen die du eintippst und der zugehörigen Ausgabe...

                      PS: Falls du den Benutzernamen des Openhab-users nicht kennen solltest, kannst du ihn mit dem folgenden Kommando anzeigen lassen:

                      Code:
                      ps -ef | grep openhab | grep -v grep | awk '{print $1}'
                      Zuletzt geändert von thoern; 30.12.2015, 23:50.

                      Kommentar


                        #12
                        Unbenannt1.png

                        sorry das ich keine ahnung habe :-(

                        Kommentar


                          #13
                          Gut. Jetzt wissen wir, der Name des OpenHAB-Users ist "openhab"
                          Jetzt bitte folgendes eintippen - exakt so abschreiben (zwei Zeilen):

                          Code:
                          su - openhab
                          /scripts/tts.sh
                          Screenshot posten. Danke

                          Kommentar


                            #14
                            Unbenannt3.png
                            scheint zu gehen oder?

                            Kommentar


                              #15
                              Hm, komisch. du machst zwar einen "su - openhab", aber dein Prompt zeigt immer noch "root@pedros-smarthome". da müsste eigentlich dann eigentlich "openhab@pedros-smarthome" stehen. Probier bitte nochmal folgendes (alle fenster schließen und neu als root einloggen). Dann:
                              Code:
                              su - openhab
                              id
                              da müsste jetzt auch "openhab" ausgegeben werden. Wenn "root" ausgegeben wird, funktioniert der su nicht!?

                              Gruß,

                              Kommentar

                              Lädt...
                              X