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

Signal in Gespräch einblenden

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von Mona, 22 Okt. 2006.

  1. Mona

    Mona Neuer User

    Registriert seit:
    14 Aug. 2005
    Beiträge:
    123
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die Frage wurde bestimmt schon oft gestellt, ich weiss nur nicht, nach was ich genau suchen soll. Vielleicht kann mir jemand einen Tipp geben:

    Ich würde gerne bei "teueren" Gesprächen alle 2, 3 Minuten dem Anrufer einen kurzes akkustisches Signal (wie Anklopfen) geben. Gibt es eine solche Funktion?
     
  2. carlofbf

    carlofbf Mitglied

    Registriert seit:
    28 Dez. 2005
    Beiträge:
    251
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    Student
    Ort:
    Aachen
    geht bestimmt mit der while schleife oder sowas dergleiche...alle 2min ein background abspielen
     
  3. onkel_fritz

    onkel_fritz Neuer User

    Registriert seit:
    10 Apr. 2006
    Beiträge:
    110
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    da wäre aber ein beispiel aus einer extension.conf
    interessant;
    vorallem wird ja im dialplan nichts bearbeitet, während ein dial
    aktiv ist
    da müsste man vorher einen fork machen mittels
    LOCAL direktive?!?!

    Code:
    [intern]
    ; geraten, kanns im moment nicht testen
    exten => 300,1,DIAL(LOCAL/210@intern&LOCAL/215@intern)
    
    exten => 210,1,Wait(10)
    exten => 210,n,DIAL(xyz/210)
    
    exten => 215,1,Wait(5)
    exten => 215,n,Background(sehr-teuer)
    exten => 215,n,Goto(215,1)
    
    wie gesagt, ist nur geraten -> mal bitte testen,
    ob das so funktioniert! (Interessiert mich selbst!)
     
  4. Mona

    Mona Neuer User

    Registriert seit:
    14 Aug. 2005
    Beiträge:
    123
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hat bei mir leider nicht funktioniert, ich höre den Background einfach nicht...
     
  5. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Gähn....
    http://www.voip-info.org/tiki-index.php?page=Asterisk+cmd+Dial
    Code:
    [LIST]
    [*] [B]L([/B]x[:y][:z][B])[/B]: Limit the call to 'x' ms, warning when 'y' ms are left, repeated every 'z' ms) Only 'x' is required, 'y' and 'z' are optional. The following special variables are optional for limit calls: (pasted from app_dial.c)[LIST]
    [*] [B]LIMIT_PLAYAUDIO_CALLER[/B] - yes|no (default yes) - Play sounds to the caller.
    [*] [B]LIMIT_PLAYAUDIO_CALLEE[/B] - yes|no - Play sounds to the callee.
    [*] [B]LIMIT_TIMEOUT_FILE[/B] - File to play when time is up.
    [*] [B]LIMIT_CONNECT_FILE[/B] - File to play when call begins.
    [*] [B]LIMIT_WARNING_FILE[/B] - File to play as warning if 'y' is defined. If [B]LIMIT_WARNING_FILE[/B] is not defined, then the default behaviour is to announce ("You have [XX minutes] YY seconds").[/LIST] [/LIST]
    Da könnte man doch was draus machen.
     
  6. HobbyStern

    HobbyStern Aktives Mitglied

    Registriert seit:
    5 Dez. 2005
    Beiträge:
    1,837
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    vorhanden
    Ort:
    Ruhrgebiet
    #6 HobbyStern, 26 Okt. 2006
    Zuletzt bearbeitet: 26 Okt. 2006
    Eine sehr gute Idee...seid wann gibts denn dies ?

    Hier nochmals in voller Länge...
    Grüsse, Stefan
     
  7. Mona

    Mona Neuer User

    Registriert seit:
    14 Aug. 2005
    Beiträge:
    123
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Vielen Dank erst mal, das scheint genau das zu sein, was ich suche!

    Aber jetzt müsste man noch Variablen richtig verstehen und einsetzen können :(

    L(x[:y][:z]): Limit the call to 'x' ms, warning when 'y' ms are left, repeated every 'z' ms)

    "ms" = Millisekunden oder "minuten/sekunden"

    Ich wollte mal testen: 3 Minten Maximallänge, Warnungen ab 2 Minuten bis Ende, alle 10 Sekunden:

    1. Dial(SIP/${EXTEN}@qsc,L(3m[2m][10s]))
    2. Dial(SIP/${EXTEN}@qsc,L(180000[120000][10000]))
    3. Dial(SIP/${EXTEN}@qsc,L(180000[:120000][:10000]))
    4. Dial(SIP/${EXTEN}@qsc,L(180000:120000:10000))

    nichts hat funktioniert.Kann mir jemand sagen, wie
    L(x[:y][:z]) aufzulösen ist? Vielen Dank jetzt schon!
     
  8. HobbyStern

    HobbyStern Aktives Mitglied

    Registriert seit:
    5 Dez. 2005
    Beiträge:
    1,837
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    vorhanden
    Ort:
    Ruhrgebiet
    Dial(type/identifier, timeout, options, URL)

    Du vergisst ein ","

    Dial(SIP/${EXTEN}@qsc,,L(3m[2m][10s]))

    Die Timeoutzeit möchte auch Ihren platz ! :)
     
  9. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich kenne dieses L... aus dem Dialkommando schon seit einiger Zeit, habs aber nie aktiv verwendet.

    Ich hätte aus der Doku die [] als Angabe eines optionalen Parameters interpretiert. Dann könnte es auch so lauten:
    Dial(SIP/${EXTEN}@qsc,,L(3m:2m:10s))
    und das mit der Angabe ms ist auch interpretationsbedürftig. Mein kleines Hirn würde ms it-mäßig erstmal als millisekunden deuten. Aber wie HobbyStern schon sagt, könnte auch Minute/sekunde sein.
    Also: Versuch macht kluch.
     
  10. HobbyStern

    HobbyStern Aktives Mitglied

    Registriert seit:
    5 Dez. 2005
    Beiträge:
    1,837
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    vorhanden
    Ort:
    Ruhrgebiet
    Hey sterkel,

    würde mich generell auch mal freuen was zu hören - ich hab das L bis dato anscheinend auch immer gern übersehen :)

    Grüsse, Stefan
     
  11. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Man könnte testweise diverse Erbauungen einsagen lassen :)
     
  12. Mona

    Mona Neuer User

    Registriert seit:
    14 Aug. 2005
    Beiträge:
    123
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ja, das zweite Komma lässt es funktionieren. Vielen Dank!!

    Wenn jemandem (zur Optimierung) noch einfällt, wie man statt einer Ansage einfach ein Anklopfsignal einblenden kann, bin ich trotzdem ganz Ohr!
     
  13. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Du musst vor dem Dialkommando die Variable LIMIT_WARNING_FILE entsprechend setzen.
    exten => xyz,1,Set(LIMIT_WARNING_FILE=dummdidel)
    exten => yxz,n,Dial....

    ich vermute mal, das Format muss gsm sein. Kannst es ja erstmal mit den gsm-Beispielschnipseln probieren.
     
  14. HobbyStern

    HobbyStern Aktives Mitglied

    Registriert seit:
    5 Dez. 2005
    Beiträge:
    1,837
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Beruf:
    vorhanden
    Ort:
    Ruhrgebiet
    Ich hoffe Du lässt uns am fertigen Objekt mal teilhaben ;) (interessehalber)

    p.s. gilt die ansage nur für eine seite?
     
  15. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Auch hier hilft die Doku weiter:
    • LIMIT_PLAYAUDIO_CALLER - yes|no (default yes) - Play sounds to the caller.
    • LIMIT_PLAYAUDIO_CALLEE - yes|no - Play sounds to the callee
    exten => yxz,1,Set(LIMIT_PLAYAUDIO_CALLER=yes)
    exten => yxz,n,Set(LIMIT_PLAYAUDIO_CALLEE=yes)
    exten => yxz,n,Dial....

    So müssten beide Seiten was hören. Wie immer: Versuch macht kluch :)
     
  16. Mona

    Mona Neuer User

    Registriert seit:
    14 Aug. 2005
    Beiträge:
    123
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Jetzt funktioniert es wie gewünscht

    Die Datei "beep.gsm" in /var/lib/asterisk/sounds/ legen.

    /etc/asterisk/extensions.conf:

    exten => _X.,1,SetCallerID(123456)
    exten => _X.,2,Set(LIMIT_WARNING_FILE=beep)
    exten => _X.,3,Dial(SIP/${EXTEN}@qsc,60,L(180000:150000:10000))

    Zur information: Mit "ms" sind Millisekunden gemeint. Wenn alles richtig angelegt wurde, sieht es dann beim Anrufen so aus:

    Executing Dial("SIP/expresstalk-081a4508", "SIP/<NUMMER>@qsc|60|L(180000:150000:10000)") in new stack
    -- Limit Data for this call:
    -- - timelimit = 180000
    -- - play_warning = 150000
    -- - play_to_caller= yes
    -- - play_to_callee= no
    -- - warning_freq = 10000
    -- - start_sound = UNDEF
    -- - warning_sound = beep
    -- - end_sound = UNDEF

    Vielen Dank für alle Tipps!
     
  17. tjareson

    tjareson Neuer User

    Registriert seit:
    29 Okt. 2005
    Beiträge:
    65
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    habe versucht die gleiche Konfiguration zu verwenden. Werte werden auch auf der Konsole richtig angezeigt.
    Das Problem ist: in dem Moment, wo der erste Timeout abläuft (bei mir testweise nach 15 Sekunden, also noch 45 Sekunden Restzeit) wird die Verbindung beendet.
    Alle Dateien, die abgespielt werden sollen, sind da und auch in den richtigen Verzeichnissen (in diesem Fall einfach nur "beep").
    Man kann ja auch eine Ansage zu Beginn abspielen lassen - dass funktioniert noch. Nur bei der zweiten wird eben sofort beendet.
    Anbei mal auszugsweise meine Konfiguration:
    [...]
    exten => 102#,1,Set(LIMIT_WARNING_FILE=beep)
    exten => 102#,2,Set(LIMIT_CONNECT_FILE=beep)
    exten => 102#,3,Dial(SIP/000xxxxxx/030xxxxxxxx,,rL(60000:45000:5000))
    exten => 102#,4,Hangup

    Hat jemand eine Idee, warum da immer aufgelegt wird?
    Ich nutzer Asterisk Version 1.2.13 auf debian, Verbindungen alle über SIP.

    Beste Grüße.
    Tjareson.
     
  18. sterkel

    sterkel Mitglied

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    477
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Wollte dir grade den Tipp geben, die Prioritäten nochmal richtig zu setzen. Seltsamerweise sind die hier im Quote richtig, auf dem Schirm aber durcheinander. Hab ich nen Knick in der Pupille?
    Screenshot hängt dran. :noidea:

     

    Anhänge:

  19. tjareson

    tjareson Neuer User

    Registriert seit:
    29 Okt. 2005
    Beiträge:
    65
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Nein, keinen Knick... ;-)
    Das war beim Kopieren hierein durcheinandergeraten, habe ich aber erst nach dem Speichern gemerkt und dann nochmal korrigiert. In der extensions.conf ist die Reihenfolge schon richtig - nur funktionierts eben nicht...
     
  20. clan

    clan Mitglied

    Registriert seit:
    21 Apr. 2005
    Beiträge:
    266
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Nur aus der extensions.conf wird es schwierig zu erraten, was da eigentlich schiefläuft. Es gibt doch bestimmt irgendwelche Meldungen im CLI? Oder im Asterisk-Log? Warnungen, Fehler, Infos?