Hello again (still bugs with PlaySMS and Kannel) In PlaySMS version 0.9.4 when I try to send a SMS using "Send text SMS" I am getting this error displayed in red on the php page:
Failed to send SMS to `+XXXXXXX` But the SMS is successfully sent to Kannel and fakesmsc receive it: *2009-10-21 11:29:19 [9778] [0] DEBUG: Got message 7: <+XXXXXX +XXXXXX text test - playSMS>* So after checking the code of PlaySMS in fn.php around line 30 below the code that should process the return status of the delivery: * $URL = "http://localhost:13013/var/www/kannel/sendsms?username= ".urlencode($kannel_param['username'])."&password=".urlencode($kannel_param['password']); $URL .= "&from=".urlencode($sms_from)."&to=".urlencode($sms_to)."&text=".urlencode($sms_msg); $URL .= "&dlr-mask=31&dlr-url=".urlencode($dlr_url); $URL .= "&mclass=".$msg_type; if ($rv = **trim(file_get_contents("$URL"))**) { // old kannel responsed with Sent. // new kannel with the other 2 if (($rv == "Sent.") || ($rv == "0: Accepted for delivery") || ($rv == "3: Queued for later delivery")) { $ok = true; // set pending $p_status = 0; setsmsdeliverystatus($smslog_id, $uid, $p_status); } }* I find that it is this function that is nok: $rv = trim(file_get_contents("$URL")); $rv does not contain anything but the file_get_contents is executed since the SMS is sent $URL I catched contains: http://localhost:13013/var/www/kannel/sendsms?username=playsms&password=playsms&from=%2B687850850&to=%2B687783548&text=smstest+-+playSMS&dlr-mask=31&dlr-url=http%3A%2F%2F61.5.221.52%2Fplaysms%2Fplugin%2Fgateway%2Fkannel%2Fdlr.php%3Ftype%3D%25d%26slid%3D126%26uid%3D1&mclass=1 but the return value of file_get_contains is 0 equal to false right? I have also errors in apache: [Wed Oct 21 10:11:03 2009] [error] [client 114.69.193.66] PHP Warning: file_get_contents( http://localhost:13013/var/www/kannel/sendsms?username=playsms&password=playsms&from=%2B687850850&to=%2B687783548&text=smstest+-+playSMS&dlr-mask=31&dlr-url=http%3A%2F%2F61.5.221.52%2Fplaysms%2Fplugin%2Fgateway%2Fkannel%2Fdlr.php%3Ftype%3D%25d%26slid%3D132%26uid%3D1&mclass=1<http://localhost:13013/var/www/kannel/sendsms?username=playsms&password=playsms&from=%2B687850850&to=%2B687783548&text=smstest+-+playSMS&dlr-mask=31&dlr-url=http%3A%2F%2F61.5.221.52%2Fplaysms%2Fplugin%2Fgateway%2Fkannel%2Fdlr.php%3Ftype%3D%25d%26slid%3D132%26uid%3D1&mclass=1>) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: HTTP request failed! HTTP/1.0 202 Accepted\r\n in /var/www/playsms/plugin/gateway/kannel/fn.php on line 45, referer: http://61.5.221.52/playsms/menu.php?inc=send_sms&op=sendsmstopv&message=smstest&err=Failed+to+send+SMS+to+%60%2B687783548%60%3Cbr%3E Something is wrong with file_get_contains... Although this work using the same URL: # lynx -dump " http://localhost:13013/var/www/kannel/sendsms?username=playsms&password=playsms&from=%2B687850850&to=%2B687783548&text=smstest+-+playSMS&dlr-mask=31&dlr-url=http%3A%2F%2F61.5.221.52%2Fplaysms%2Fplugin%2Fgateway%2Fkannel%2Fdlr.php%3Ftype%3D%25d%26slid%3D141%26uid%3D1&mclass=1 " 0: Accepted for delivery Also what do you think of this in the error log? failed to open stream: *HTTP request failed*! *HTTP/1.0 202 Accepte*d\r\n i Strange ? If this is solved then PlaySMS version 0.9.4 will allow to display the right status of the SMS delivered or queued or not... Regards, -- Emmanuel CHANSON Emmanuel Mobile Nouvelle-Calédonie: +687 850.850 Mobile France: +33 (0) 6.68.03.89.56 @email : [email protected]
