Seite 1 von 1

Telnet Asterisk

Verfasst: 19.01.2012 20:47
von Velz
Hallo Leute,

ich versuche gerade mit meinem Asteriskserver eine Verbindung (wie Telnet) aufzubauen um über ein PB Programm direkt zu wählen.

Der Verbindungsaufbau funktioniert und ich empfange eine Antwort. Sobald ich aber befehle senden bekomme ich nur Fehlermeldungen. irgendwas kommt da nicht richtig an! Anbei auch ein Beispiel in PHP das korrekt sein sollte.

Hat mir jemand einen Tipp???

Code: Alles auswählen

If InitNetwork() = 0
  MessageRequester("Error", "Can't initialize the network !", 0)
  End
EndIf

Port = 5038
;CallDebugger
ConnectionID = OpenNetworkConnection("192.168.124.195", Port)
If ConnectionID
  ;MessageRequester("PureBasic - Client", "Client connected to server...", 0)

; >>>Liefert "Asterisk Call Manager/1.1"
  DatenBuffer.s = Space(100)
  ReceiveNetworkData(ConnectionID, @DatenBuffer, Len(DatenBuffer))
  A$= DatenBuffer ; mal sehen was zurückkommt
  Debug A$

SendNetworkString(ConnectionID, "Action: login "+ #CRLF$)
SendNetworkString(ConnectionID, "Username: name "+ #CRLF$)
SendNetworkString(ConnectionID, "Secret: pass "+ #CRLF$)
SendNetworkString(ConnectionID, #CRLF$)


; >>> Sollte eigentlich eine positive Rückmeldung bringen, tut er aber nicht!!!
  DatenBuffer.s = Space(200)
  Debug ReceiveNetworkData(ConnectionID, @DatenBuffer, Len(DatenBuffer))
  A$= DatenBuffer ; mal sehen was zurückkommt
  Debug A$
  
  ;MessageRequester("PureBasic - Client", "A string has been sent to the server, please check it before quit...", 0)
  
  CloseNetworkConnection(ConnectionID)
Else
  MessageRequester("PureBasic - Client", "Can't find the server (Is it launched ?).", 0)
EndIf
  
End   
Ich habe hier auch ein Beispiel in PHP.... Wo ist der Unterschied

Code: Alles auswählen

                $socket = fsockopen($asterisk_ip,"5038", $errno, $errstr, $timeout);
                fputs($socket, "Action: Login\r\n");
                fputs($socket, "UserName: manager\r\n");
                fputs($socket, "Secret: gandalf\r\n\r\n");

                $wrets=fgets($socket,128);

                echo $wrets;

Re: Telnet Asterisk

Verfasst: 19.01.2012 20:58
von Velz
Wie das Leben so spielt...

Nach unzähligen Versuchen stellt man eine Anfrage ins Forum.... und 2 Minuten später läuft es einfach so!!!

Für alle die das mal finden:

Code: Alles auswählen

SendNetworkString(ConnectionID, "Action: login"+#CRLF$+"Username: admin"+#CRLF$+"Secret: amp111"+#CRLF$+#CRLF$)
Alles in eine Zeile und es geht!