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&amp;password=playsms&amp;from=%2B687850850&amp;to=%2B687783548&amp;text=smstest+-+playSMS&amp;dlr-mask=31&amp;dlr-url=http%3A%2F%2F61.5.221.52%2Fplaysms%2Fplugin%2Fgateway%2Fkannel%2Fdlr.php%3Ftype%3D%25d%26slid%3D132%26uid%3D1&amp;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]

Reply via email to