wav Datei als Mail verschicken

  • So viel ich weiß ist es direkt mit DoorPi nicht möglich. Du müsstest dir ein script basteln und über das dann per mail die latzte Datei versenden lassen.


    So in der Art:

    Code
    last=`ls -tr | tail -1`
    if [ -z "$last" ]
    then
  • Hast Du mal an das Versenden der Sounddateien per Telegram gedacht? Hier hatte ich mal beiläufig erwähnt, wie das für mp4-Video-Dateien gehen könnte. Sollte für wav- oder mp3-Dateien ähnlich klappen. Zu Beginn des Threads hatte ich mal beschrieben, wie man Telegram einrichtet. Ich bin super zufrieden mit diesem Push-Dienst und seinen Möglichkeiten. Mails verwende ich überhaupt nicht mehr, weil sie früher oder später mit Spams zugemüllt werden. Die Push-Dienste sind davon zumindest im Moment noch weitestgehend unberührt.


    Bis dann,


    Thorsten

  • Danke für die Info.


    Hatte ich auch gelesen; auch deinen Beitrag zu telegram im Homematic Forum (Ich glaube da war es).


    Das Problem dabei ist aber:


    Wie bekommt man raus wie die letzte wav Datei heißt !?


    Wenn ich raus bekommen könnte wie die letzte Datei mit namen heißt, dann würde ich dies auch hinbekommen.



    mfg

  • Brauchst Du denn in dem Fall noch unterschiedliche wav-Dateien? Warum definierst Du nicht einfach einen festen Namen für die wav-Datei in der doorpi.ini? Wenn Du Dir diese Datei eh zusenden lässt, kannst Du ihren Namen ja dann bei Bedarf lokal ändern.


    Ich mache das so z.B. mit dem von der Kamera erzeugten Bild. Und auch die Sounddatei wird bei mir jedes Mal überschrieben, obwohl ich sie mir nicht zusenden lasse.


    Bis dann,


    Thorsten

  • Mein Gedanke war so:


    In dem Verzeichnis "records" werden ja die wav gespeichert.
    Ich wollte nun, nachdem das Gespräch beendet wurde, dieses "letzte" als Mail senden.



    Wenn man nun einen festen Namen für die Datei in "records" vorgeben kann, ist dies natürlich noch besser.


    Nur musst du mir mal sagen, wie das geht.


    mfg
    Dieter



    Nachtrag:
    Habe gerade gesehen, dass es ja einen extra Eintrag in der ini gibt.
    Werde diesen mal ändern und dann berichten.

  • records = !BASEPATH!/records/Haustuerklingel.wav

    Hab den Namen geändert. wav wird nun immer unter diesem Namen gespeichert.


    Jetzt wollte ich die Datei per Mail verschicken.


    Und zwar so:
    15 = take_snapshot:!BASEPATH!/records/Klingel.wav
    20 = mailto:ppc@dbrp-mueller.de,DoorPi; %d.%m.%Y um %H:%M Uhr,wav Datei,True


    Klappt aber so nicht.


    Nimmt der mailto Befehl nur Bilder. Offensichtlich.


    Gebt mir mal einen Tip, wie ich nun diese wav Datei versendet bekomme.



    mfg
    Dieter

  • Stimme zu. Das geht nicht. denn sobald man ein True definiert (True=snapshot beifügen), versucht die Mailto Action das zuletzt geschossene Bild anzuhängen. Siehe Code
    https://github.com/motom001/Do…n/SingleActions/mailto.py

    Python
    #Funktions-Definition
    def fire_action_mail(smtp_to, smtp_subject, smtp_text, smtp_snapshot):
    
    
    #korrespondierende passage
    if smtp_snapshot:
                smtp_snapshot = doorpi.DoorPi().parse_string(smtp_snapshot)
                if not os.path.exists(smtp_snapshot):
    smtp_snapshot = get_last_snapshot()


    Du wirst das also entweder per Telegram machen müssen (ist recht simpel) oder dir ein eigenes Script schreiben, was eine Mail mit deinem wav File als Attachment verschickt.

  • Brauchst Du denn in dem Fall noch unterschiedliche wav-Dateien? Warum definierst Du nicht einfach einen festen Namen für die wav-Datei in der doorpi.ini?

    Guten Morgen,


    habe den Dateinamen geändert, heißt bei mir jetzt: Gespraech_Haustuer.wav


    Dann habe ich telegram auf dem Handy installiert. Mich eingelesen. Und ein Script auf dem raspi geschrieben (1 Zeile ;-))


    curl -s -k "https://api.telegram.org/bot12345/sendaudio" -F audio="@/usr/local/etc/DoorPi/records/Gespraech_Haustuer.wav" -F disable_notification=0 -F chat_id=12345


    Klappt alles so wie es soll.
    Beim Ende eines Gespräches bekomme ich die wav aufs Handy geschickt.



    Nun gibt es aber noch ein Problem.


    Doorpi scheint die wav nach dem Ende eines Gespräches nicht zu löschen. Ein neues Gespräch wird in der Datei hinten angehängt !!!
    Man hat dann in der wav Datei mehrere Gespräche.



    Gebt mir mal einen tipp was ich wo einstellen muss, dass die Datei bei einem neuen Gespräch ersetzt wird und eben nicht das Gespräch hinten angehängt wird !


    Danke.



    mfg
    Dieter

  • Moin Dieter,
    füge mal in Deinem Script noch folgendes ein:


    Hab ich gemacht.


    Es kommt eine Fehlermeldung:


    rm: das Entfernen von ... ist nicht möglich: Datei oder Verzeichnis nicht gefunden.


    Die Datei existiert aber definitiv in dem Verzeichnis.


    mfg


    P.S.
    Wenn ich vermuten darf: Liegt es an irgendwelchen Rechten ?

  • Anbei die Lösung wie es nun funktioniert (Danke Nea):


    curl -s -k "https://api.telegram.org/bot12345/sendaudio" -F audio="@/usr/local/etc/DoorPi/records/Gespraech_Haustuer.wav" -F disable_notification=0 -F chat_id=12345
    sleep 5
    rm -f /usr/local/etc/DoorPi/records/Gespraech_Haustuer.wav



    d.h.
    Datei wird an telegram gesendet.
    5 Sek. gewartet
    und die Datei dann gelöscht.


    Klappt.


    mfg
    Dieter


    P.S.
    Habe bei dem rm noch ein "-f" eingebaut.
    Es kam nämlich eine Fehlermeldung wenn die Datei nicht existiert.
    Und dies wird jetzt einfach ignoriert.