Sipgate-Api ntuzen um SMS per PHP-Sript zu versenden

Electron

Neuer User
Mitglied seit
7 Aug 2007
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
Ola Gemeinde!

Ich bin momentan dran ein PHP-Script zu schreiben, mit dem über die Sipgate-Api eine SMS versendet werden soll...

Das Skript läuft problemlos, heißt ich bekomme keine Fehlermeldung von samurai zurück sondern StatusCode 200, ist also alles iO. Allerdings kommt nie eine SMS auf dem Handy an...

Hier ist mein Skript...
PHP:
sendsms('49152****','testsms',true);
function sendsms($number,$text,$time=false){
	$text=utf8_encode($text);
	$time=date(U);
	// Initialisierung
	$SIPGATE_SERVER='samurai.sipgate.net';
	$SIPGATE_PATH='/RPC2';
	$SIPGATE_USER='****';
	$SIPGATE_PASS='****';
	
	// Server Verbindung öffnen, SSL auf Port 443
	if(($f = fsockopen('ssl://'.$SIPGATE_SERVER, 443, $errno, $errstr, 5)) === FALSE){
		//Fehler: Fehlermeldung anzeigen
		echo 'Fehler '.$errno.': '.$errstr;
		return false;
	}else{
		// Verbindung zum Server erfolgreich hergestellt
		// XML-Informatioen zum versenden von SMS:
		$xml_data= '<?xml version ="1.0" encoding="UTF-8"?>
						<methodCall>
       						<methodName>samurai.SessionInitiate</methodName>
       						<params>
                				<param>
                					<value><struct>
                						<member>
                							<name>LocalUri</name>
                							<value><string>
                								sip:49341****@sipgate.net
                							</string></value>
                						</member>
                        				<member>
                                			<name>RemoteUri</name>
											<value><string>
												sip:'.$number.'@sipgate.net
											</string></value>                       
 										</member>
                        				<member>
                                			<name>TOS</name>
                                			<value><string>
                                				text
                                			</string></value>
                       					</member>
                        				<member>
                                			<name>Content</name>
                                			<value><string>
                                				'.$text.'
                                			</string></value>
                        				</member>
                        				<member>
                        					<name>Schedule</name>
                        					<value><string>
                        						'.date("Y-m-d\TH:i:s+01:00",$time).'
                        					</string></value>
                        				</member>
                					</struct></value>
                				</param>
        					</params>
						</methodCall>';
		//Anschließend werden die Informationen an SIPGATE übermittelt.
		//zunächst der Header

		fputs($f,  'POST ' . $SIPGATE_PATH .
                              ' HTTP/1.0' . "\r\n" .'Authorization: Basic ' .
                              base64_encode($SIPGATE_USER . ':' . $SIPGATE_PASS) .
                              "\r\n" .'Host: sipgate.net' . 
                              "\r\n" .'User-Agent: PHPxmlParser' . 
                              "\r\n" .'Content-type: text/xml' . 
                              "\r\n" .'Content-Length: '. strlen($xml_data) . 
                              "\r\n" .'Connection: close' . "\r\n" . "\r\n");


		//anschließend die XML-Informationen
		fputs($f,  $xml_data);
		//Auslesen der Serverantwort
		$ret = '';
		while(!feof($f)){
			$ret .= fread($f, 1024);
		}
		//jetzt trennen wir Header und Body von der Serverantwort
		list($header, $xml_response) = explode("\r\n\r\n", $ret);
		//Und zerlegen den Header so, dass wir die HTTP-Status Message auslesen können
		$status=explode("\n",$header);
		echo $status[0];
		$status=trim($status[0]);
		if($status=="HTTP/1.1 200 OK"){
			return true;
		}else {
			//im Fehlerfalle gibt die Funktion die Fehlermeldung aus, und false zurück.
			echo "unknown error got \"$header\" $xml_response";
			return false;
		}
	}
}

Hat jemand eine Idee, warum die SMS nicht gesendet wird???
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,887
Beiträge
2,303,984
Mitglieder
378,566
Neuestes Mitglied
draco777