Здравствуйте. У меня есть приложение на андройде, которое умеет подключаться к серверу и методом POST отправлять на него данные о входящих смс
[cсылка удалена как потенциально рекламная // Karan]. Сервер - apache, настроил port forwarding для подключение через интернет. На сервере имеется простенький PHP скрипт, который записывает данные из смс в текстовый файл, вот его код.
<?php
// Метод получающий смс.
function get_message()
{
$error = NULL;
$success = false;
// Номер отправителя.
if (isset($_POST['from']))
{
$from = $_POST['from'];
}
else
{
$error = 'The from variable was not set';
}
// Тело смс.
if (isset($_POST['message']))
{
$message = $_POST['message'];
}
else
{
$error = 'The message variable was not set';
}
// Секретный ключ
if (isset($_POST['secret']))
{
$secret = $_POST['secret'];
}
// Время отправки
if(isset($_POST['sent_timestamp']))
{
$sent_timestamp = $_POST['sent_timestamp'];
}
// Номер телефона девайса отправителя
if (isset($_POST['sent_to']))
{
$sent_to = $_POST['sent_to'];
}
// id сообщения
if (isset($_POST['message_id']))
{
$message_id = $_POST['message_id'];
}
// id девайса
if (isset($_POST['device_id']))
{
$device_id = $_POST['device_id'];
}
if ((strlen($from) > 0) AND (strlen($message) > 0) AND
(strlen($sent_timestamp) > 0 )
AND (strlen($message_id) > 0))
{
if ( ( $secret == '123456'))
{
$success = true;
}
else
{
$error = "The secret value sent from the device does not match the one on the server";
}
// Запись данных в файл
$string = "From: ".$from."\n";
$string .= "Message: ".$message."\n";
$string .= "Timestamp: ".$sent_timestamp."\n";
$string .= "Messages Id:" .$message_id."\n";
$string .= "Sent to: ".$sent_to."\n";
$string .= "Device ID: ".$device_id."\n\n\n";
write_message_to_file($string);
}
}
function write_message_to_file($message)
{
$myFile = "test.txt";
$fh = fopen($myFile, 'a') or die("can't open file");
@fwrite($fh, $message);
@fclose($fh);
}
if($_SERVER['REQUEST_METHOD'] === 'POST')
{
get_message();
}
echo "done";
?>
Создавал форму, которая использовала этот скрипт, при ее отправке с удаленного компьютера все работало нормально - создавался текстовый файл с данными из формы, но андроид приложение почему-то не хочет конектится к серверу и не выполняет этот скрипт. Подскажите, что делаю не так?