[Diskussion] [HOWTO] Asterisk mit dem Snom-Pickup-Patch patchen

Ist doch klar wie die Nummern bestimmt werden - rand()

Bis jetzt konnte ich noch nichts falsches feststellen. Auch die Problematik mit dem 302 Redirect funktioniert zumindest bei mir. In den nächsten Tagen kümmere ich mich noch um ein paar Ausgaben zum Debuggen und die korrekte Ausgabe beim Anschauen der SIP Parameter. Dann noch an 1.6 anpassen, kurz testen und vielleicht mal im Bug-Tracker von Digium einstellen!?


Genau rand() ^^
Also bei Anruf an 13 macht die Nummer 12 eine "11" draus bei Druck auf OK, ich versteh es nicht ;).
Das 302 tut hier auch mit deinem Patch, zumindest mit der 1.4.21 getestet grad, geht auch.
 
Hallo Leute,

habe heute mal etwas weiter gemacht. Ziel war die Umstellung von "Remote Target URI" auf "Replaces- Header" um auf die App zum Pickup (wie bei mgernoth) verzichten zu können. Bei etwas stöbern im Code durfte ich feststellen, dass schon alles(!?) an Code im SIP Channel-Driver vorhanden ist, um den Replaces-Header bei einem späteren Invite auszuwerten, um den Anruf zu übernehmen. Ansonsten ist eigentlich (fast) alles beim Alten.

Neue Version des Patches:
http://www.net-performer.de/asterisk/asterisk-1.4.21-pickup-by-call-id.patch

Wie gesagt, die Application im Dialplan ist nicht mehr nötig um den Anruf zu übernehmen! Viel Spaß damit...
 
Ich wollte nur mal sagen das der patch seit einer Woche auch prima bei mir funktioniert.
Ich nutze das hier mit 1.4.21.1

Saubere Arbeit. Wieder mal vielen Dank !

Gruss,

Jörg
 
Der Patch funktioniert ganz wunderbar. Allerdings nicht mit Aastra Telefonen. Ich hab eins zum Testen hier. Das Lämpchen blinkt brav, aber beim Drücken darauf macht er keinen Pickup, sondern wählt die Nebenstelle an. Laut Aastra Forum vertragen die Telefone den remote und local Tag nicht. Gibts ne Möglichkeit diese Tags entweder nur bei den Snoms mitzuschicken oder die bei den Aastra's rauszulassen?
 
Hallo Speedy,

ich habe bzw. hatte noch nie ein Aastra Telefon in der Nähe um dieses auf Funktion zu testen. Daher meine erste Frage: Mit welchem Typ "subscriben" die Telefone? dialog-info+xml? Bekommt man über "sip show subscriptions" raus.

Funktionierte bei einem 1.2er Asterisk der Pickup mit dem mgernoth Patch?

Zum Schluss könnte ich noch ein SIP-Trace des Invites um ein Telefonat zu übernehmen gebrauchen und auch ein Notify wäre nicht schlecht.

Es gibt momentan keine Möglichkeit diese Tags pro Peer wegzulassen bzw. hinzuzufügen. Entweder alles bleibt beim Alten (sendcallinfo=no) oder die Call-ID inkl. Tags werden mitgesendet.
 
... Daher meine erste Frage: Mit welchem Typ "subscriben" die Telefone? dialog-info+xml?...
Genau das tun sie. Sie landen an der gleichen Quellcodestelle in chan_sip wie die Snoms. Wie oben bereits geschrieben vertragen die Aastra Telefone aber die <local> und <remote> Tags nicht (mit einem vanilla Asterisk geht der Pickup mit den Aastra). Könnte man da vielleicht nach dem User-Agent filtern?

Zum Schluss könnte ich noch ein SIP-Trace des Invites um ein Telefonat zu übernehmen gebrauchen und auch ein Notify wäre nicht schlecht.
...
Kann ich gerne nachliefern wenn Du den haben willst. Wie gesagt es funktioniert alles wie bei den Snoms. Nur kommen die Aastra Telefone eben durcheinander, wenn ein gepatchter Asterisk (also mit Pickup Patch von Dir) die remote und local-Tags mitsendet. Dann bekommt das Aastra kein Pickup mehr hin. Siehe dazu auch:
http://www.trixbox.org/forums/vendor-moderated-forums/aastra-endpoints/aastra-57i-direct-pickup-blf
http://forum.aastra-detewe.de/viewtopic.php?f=9&p=165
 
Hab mir mal die Posts durchgelesen. Zum einen finde ich es doch etwas... mysteriös, dass sich die Aastras dadurch aus dem Tritt bringen lassen. Wenn Aastra schlau wäre, würden die, die Tags dazu benutzen Infos anzuzeigen ;-)

Davon abgesehen, schaue ich mir mal am Wochenende an, ob ich den Useragent auswerten kann. Wenn das nicht klappt, fallen mir noch 2-3 andere Sachen ein. Aber da kann es sein, dass es August wird.
 
Ich bin nicht der Profi-Programmier, aber ich habe einen quick&dirty Hack:
Code:
if (strstr(p->useragent, "snom")) {
	ast_build_string(&t, &maxbytes, "<local><identity display=\"%s\">%s</identity><target uri=\"%s\"/></local>\n", p->exten, p->exten, mfrom);
	ast_build_string(&t, &maxbytes, "<remote><identity display=\"%s\">sip:%s@%s</identity><target uri=\"sip:%s@%s\"/></remote>\n", np->fromname, np->fromuser, p->fromdomain, p->exten, p->fromdomain);
}

Es wird also geprüft, ob der User-Agent das Wort "snom" enthält. Nur dann wird der local und der remote-Tag im Notify gesendet. Ich bitte um Verbesserungen wenn was falsch ist. Wie gesagt ich bin kein Profi-Programmierer. Habs kurz getestet und es geht so. Jetzt kann ich mit Snom und Aastra Pickups machen.
 
Das dürfte so passen. Ich war mir nicht ganz sicher, ob in dem Notify zum überwachenden Telefon tatsächlich der Agent gefüllt ist. Aber das scheint zu passen. Ich übernehme es auch mal bei mir... da kommt demnächst nochmal ne neue Version auch für Asterisk 1.6! Aber momentan bin ich "leicht" im Lernstress und hab daher keine Zeit dafür.
 
Hallo,

erst einmal danke für den aktuellen Patch. Bei mir funktioniert er unter Version unter 1.4.21.1 auch einwandfrei. Ein paar Fragen hätte ich aber.

1. Ich habe folgendene Einträge in der extensions.conf bzw. sip.conf (beispielhaft):

Code:
[hints]
exten => 10,hint,SIP/11
exten => 20,hint,SIP/21

exten => _*8.,1,SET(GLOBAL(PICKUPMARK)=${EXTEN:2})
exten => _*8.,n,Pickup(${EXTEN:2}@PICKUPMARK)
exten => _*8.,n,Hangup()

Code:
[general]
bindport=5060
bindaddr=0.0.0.0
srvlookup=yes
disallow=all
allow=g722
allow=alaw
dtmfmode=info
language=de 
context=default
nat=no

[11]
type=friend
secret=1576
host=dynamic
canreinvite=yes
call-limit=5

Das funktioniert soweit auch. Was nicht funktioniert ist folgendes:

exten => 10,hint,SIP/11&SIP/12&SIP/13

In irgendeiner Doku habe ich gelesen, dass das gehen müsste. Es wird leider immer nur das erste Device überwacht. Ist es überhaupt möglich, mehrere Devices mit einer Extention zu überwachen?

2. Ob eine Extention gerade benutzt wird, sieht man nur bei eingehenden Anrufen. Bei ausgehenden bleibt die LED am überwachenden Gerät aus. Ist es überhaupt möglich, ausgehende Anrufe zu sehen?

Gruß
Werner
 
Hallo Cava,

zumindest bei mir hat das Überwachen mehrerer Nebenstellen über einen Hint noch nie geklappt.

Hast du einen Patch laufen?

Um zu sehen ob ein Telefon klingelt bzw. auch ausgehende Anrufe auf den anderen Telefonen signalisiert zu bekommen sollten folgende Optionen zusätzlich gesetzt werden:
notifyringing=yes
useclientcode=yes
limitonpeers=yes
 
Call Pickup mit * 1.4.21.1

Hallo allerseits,
nachdem ich bisher mit * 1.4.16 und dem mgernoth-Patch erfolgreich Call Pickup am laufen habe, wollte ich heute auf meinem Testserver die Version 1.4.21.1 zunaechst ohne Patch ausprobieren. Es klappt auch soweit fast alles: die Zustandsaenderungen (idle, ringing, inuse) werden auf * ordentlich angezeigt, die LEDs auf den Snoms blinken, nur ein Druecken der blinkenden Funktionstaste zeigt keinerlei Wirkung, obwohl natuerlich |*8 mit eingetragen ist. Eine Rufuebernahme durch manuelle Eingabe von *81234 bei blinkender, mit der Nebenstelle 1234 belegten Taste dagegen fuehrt den Pickup wie erwartet aus. Was laeuft dort falsch? Muss ich zunaechst noch einen Patch wie z.B. den von Tweety anwenden, damit das funktioniert?

Besten Dank!
Capello
 
@Tweety: Danke für den Tipp, ich bin zwischenzeitlich selbst darauf gekommen. Es funktioniert nun einwandfrei.
 
Nach Installation des Patches von Tweety funktioniert das Pickup auch ueber das Druecken der blinkenden Taste.
Capello

Edit Guard-X: Vollzitat gelöscht, bitte Forumregeln beachten!
 
Hallo Capello,

hast du vielleicht mit dem Update deines Asterisk auch ein Update der Firmware der SNOM Telefone vorgenommen? Seit 7.1.33 müssen die Funktionstasten für einen Pickup mit "|" anders konfiguriert werden. Das würde den Effekt bei dir erklären.
 
@Tweety
Hallo Tweety,
danke für Deinen Hinweis. Tatsächlich hatte ich mein Snom360 auf die Firmware 7.1.33 mit aufgerüstet. Nach den ausführlichen Hinweisen auf den Snom-Seiten funktioniert ein Call-Pickup mit ungepatchtem Asterisk bei 7.1.33 erst dann, wenn man die Funktionstaste statt mit "Nebenstelle" mit "BLF" belegt und dann den Pickup-Code wie bisher mit der überwachten Extension einträgt.

Capello

Edit Guard-X: 2. Vollzitat entfernt!
 
@Tweety
wenn man die Funktionstaste statt mit "Nebenstelle" mit "BLF" belegt und dann den Pickup-Code wie bisher mit der überwachten Extension einträgt.

BLF ?? Habe ich bei mir nich. Kann es sein das du "Leitung" etc. meinst ? Oder gibts das bei 7.1.30 noch nich ?


Gruss,

Jörg
 
Hallo Joerg,
das gibt es erst ab Firmware 7.1.33. Deshalb bin ich mit der Einstellung "Nebenstelle" bei ungepatchtem Asterisk mit dem Call Pickup ueber die blinkende Taste ohne Erfolg geblieben.

Gruss,
Capello

Edit Guard-X: 3. Vollzitat entfernt!
 
@capello

was meinst Du mit BLF? Ich kann das an meinem Snom360 (FW 7.133) nicht auswählen. :confused:

Es wäre sehr freundlich von Dir, wenn Du den Link zur Snom Dokumentation hier mal posten könntest.

Danke und schöne Grüße

appleactive
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.