[gelöst] Callmonitor - wie URL [an Snarl (SNP)] senden und mit CR/LF abschließen?

Humfri

Neuer User
Mitglied seit
26 Jun 2006
Beiträge
92
Punkte für Reaktionen
0
Punkte
6
Hallo,

ich hab nun schon einige Zeit probiert und gelesen, komm aber nicht weiter:

In den Listeners beim Callmonitor ist bspw. folgende Zeile eingetragen:

*:* ^ ^ getmsg 192.168.xx.xx:9887 "/type=SNP#?version=1.0#?action=register#?app=Test"

Wie schließe ich die "Zeile" mit einem hier für mein auf dem PC laufendes Programm (Snarl) benötigten CR/LF ab? Mit %0D%0A geht's nicht, da kriege ich nur ein ash: %0D%0A: invalid format zurück.

Dasselbe Problem habe ich entspr. ebenso mit "curl". D. h. es muss nicht getmsg sein.

An sich läuft es, ich bekommen eine (hier auch zu erwartende) Rückgabe / Fehlermeldung, die darauf zurückzuführen ist, dass die übermittelte URL nicht mit CR/LF abschließt.

Vielleicht kennt einer die Lösung, wäre toll!
 
Zuletzt bearbeitet:
Mal
Code:
$LF

versucht? Das zumindest fiel mir nach einer kurzen Boardsuche ins Auge.
 
Danke, aber ja, das habe ich auch versucht. Auch ${LF}.
Es wundert mich etwas.
Es geht z. B., sich per Telnet einzuwählen (in meinen PC:port=9887) und bei HyperTerminal die Funktionfür den ASCII-Versand "gesendete Zeilen enden mit Zeilenvorschub" auszuwählen.
 
Und du vergleichst grad Äpfel mit Birnen. HyperTerminal ist ein Client. Auf diesem stellst du Clientseitige Sachen ein, die aber nicht irgendetwas mit dem Server anstellen, sondern nur Clientseitig sind. Ähnliches Prozedere: Wenn du dein Windows nimmst und den Style änderst, so ändert sich aber auch nicht gleichzeitig was an der Webseite, die du ansurfst....
 
Danke Silent-Tears. Das ist mir schon klar.

Klarstellend hätte ich wohl erwähnen sollen, dass es mich wundert, da es ja offenbar geht, etwas zu senden mit abschließendem LF und es dann auchg funktioniert. Jedenfalls schafft es HyperT. am Ende des gesendeten Strings ein LF ranzuhängen, wenn ich es so einstelle.

Sollte doch dann daher auch irgendwie mit getmsg o. ä. gehen -das meinte ich.
 
Hi,

Wie schließe ich die "Zeile" mit einem hier für mein auf dem PC laufendes Programm (Snarl) benötigten CR/LF ab?
getmsg erzeugt einen HTTP-GET-Request (der an sich schon reichlich CR/LFs enthält). Wo genau brauchst du nun dein CR/LF? Kodiert in die URL?
Mit %0D%0A geht's nicht, da kriege ich nur ein ash: %0D%0A: invalid format zurück.
Dann hast du das in das Muster-Argument von getmsg geschrieben. Das ist ein Muster im printf-Stil; um dort ein literales "%0D" hineinzubekommen, musst du "%%0D" schreiben.

Allerdings verstehe ich immer noch nicht, wo dieses CR/LF landen soll und warum.

Andreas

PS: Habe einen kurzen Blick auf die Snarl-Homepage geworfen: Snarl versteht kein HTTP, sondern hat ein eigenes Protokoll (SNP): http://www.fullphat.net/dev/snp/index.htm

Dementsprechend sind getmsg (und curl) die falschen Werkzeuge. Mit rawmsg (oder von Hand per "nc") könntest du das Protokoll sprechen.

PPS: Für dein Beispiel (ohne Fehlerbehandlung):
Code:
echo -n "type=SNP#?version=1.0#?action=register#?app=Test"$'\r\n' | nc 192.168.xx.xx 9887
 
Zuletzt bearbeitet:
Hi,

aha... ja da habe ich wohl übersehen, dass curl und getmsg nur http "senden". Ich dachte das wär kein Problem.

"NC" hab ich auch mal getestet, werde ich jetzt nochmal probieren.

Erst mal vielen Dank! Ich melde mich, wenn ich's hab (und auch sonst)
 
1000 Dank buehmann!

Das
echo -n "type=SNP#?version=1.0#?action=register#?app=Test"$'\r\n' | nc 192.168.xx.xx 9887
funktioniert nun. Ich hatte zwar früher auch mit nc experimentiert und mich gefreut, dass ich mich wenigstens noch an "|" erinnern konnte, aber dann lag der Fehler bei mir doch wohl darin, dass ich "/type=SNP" benutzt habe, da ich irgendwie davon ausging, dass es eine URL ist, die übertragen wird. Ach ja und Dein "$'\r\n'" fehlten auch.

Ist mir jetzt richtig klar, mit dem eigenen Protokoll.

So, damit wird der Callmonitor nun in Zukunft bei mir über Snarl nur Anrufe melden, die für mich sind. Sobald ich das konfiguriert habe, werde ich es hier posten.

PS: nochmals Danke, ich habe da echt schon ewig lange dran immer wieder mal herumprobiert.
 
Klingt nach einem neuen Abschnit im Trac Wiki auf der Callmonitor Seite?

MfG Oliver
 
Zuletzt bearbeitet:
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.