.titleBar { margin-bottom: 5px!important; }

Wie alle alten Nachrichten in der Mailbox per Telefon löschen?

Dieses Thema im Forum "Asterisk Rufnummernplan" wurde erstellt von ploieel, 21 Dez. 2008.

  1. ploieel

    ploieel Aktives Mitglied

    Registriert seit:
    13 März 2005
    Beiträge:
    1,727
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ort:
    Vogtland
    #1 ploieel, 21 Dez. 2008
    Zuletzt bearbeitet: 21 Dez. 2008
    Hallo;
    ich bekomme es nicht hin, per Telefon alle alten Nachrichten auf der Mailbox zu löschen. Könnt ihr mir bitte einen Rat geben, wie das hinzukriegen ist?

    Auszug aus meiner extensions.conf:

    Code:
    :
    
    [mailbox_loeschen]
    exten => 555,1,System(find /asterisk/spool/voicemail/default/111/Old/ -name "msg????.*" -a -path "*" -exec rm "{}" \\;)
    exten => 555,n,VoiceMailMain(s${CALLERID(num)})
    exten => 555,n,Hangup
    
    
    Fehlermeldung des Asterisk:

    Code:
    
     -- Executing [555@default:1] System("Zap/2-1", "find /asterisk/spool/voicemail/default/111/Old/ -name "msg????.*" -a -path "*" -exec rm "{}" \;") in new stack
    [Dec 13 17:53:32] WARNING[7401]: app_system.c:107 system_exec_helper: Unable to execute 'find /asterisk/spool/voicemail/default/111/Old/ -name "msg????.*" -a -path "*" -exec rm "{}" \;'
      == Spawn extension (default, 555, 1) exited non-zero on 'Zap/2-1'
        -- Hungup 'Zap/2-1'
    
    
    Ich bitte um Hilfe.

    Danke und Grüße
     
  2. laureen

    laureen Mitglied

    Registriert seit:
    17 Okt. 2004
    Beiträge:
    369
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo!

    Kann mir vorstellen, dass es den System-Aufruf aufwirft, weil da irgendwo ein Problem mit den Anführungszeichen entsteht, versuch mal diese zu escapen.

    Ich persönlich würde da ein Shell-Script für schreiben und dieses dann über
    Code:
    ...
    exten = 555,1,TrySystem(/bin/bash -c /usr/local/bin/script.php)
    ...
    aufrufen.

    Hoffe, das hilft!

    LG, Laureen
     
  3. ploieel

    ploieel Aktives Mitglied

    Registriert seit:
    13 März 2005
    Beiträge:
    1,727
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ort:
    Vogtland
    Hallo laureen;

    das was Du schreibst, mag ja genau Die Lösung meines Problems sein, aber es ist mir zu esotherisch geschrieben. "Escapen"; ein php-script, das an den richtigen Ort zu schieben ist, damit es auch wirksam wird; geht es bitte nicht auch drei Stufen simpler? Ich bin ganz einfach überfordert mit dem was Du schreibst...

    Dann lösche ich lieber von Zeit zu Zeit per Hand mit WinSCP die entsprechenden Files; eleganter wäre es aber auf jeden Fall gewesen, die alten Nachrichten auf der Mailbox auch per Telefon löschen zu können.

    Vielen Dank, vielleicht gibt es doch noch andere (einfacher zu realisierende) Vorschläge.

    Herzliche Grüße
     
  4. doxon

    doxon Mitglied

    Registriert seit:
    11 Juni 2006
    Beiträge:
    781
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    IT-Systemelektroniker
    Ort:
    Aurich
    "Escapen" kannst du das Anführungszeichen indem du ein Backslash \ davorsetzt.

    Oder versuch mal das so zu machen:

    Code:
    System('find /asterisk/spool/voicemail/default/111/Old/ -name "msg????.*" -a -path "*" -exec rm "{}" \\;')
    
     
  5. ploieel

    ploieel Aktives Mitglied

    Registriert seit:
    13 März 2005
    Beiträge:
    1,727
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ort:
    Vogtland
    #5 ploieel, 26 Dez. 2008
    Zuletzt bearbeitet: 27 Dez. 2008
    Hallo,
    ich habe nunmehr herausgefunden, dass es den "find"-Befehl auf meinem System nicht gibt. :-(

    Grüße

    EDIT:
    habe den find-Befehl in mein System integriert. Jetzt funktioniert alles.