2013-08-19 4 views
0

Я работал с Twilio для отправки SMS-сообщений потенциальным пользователям приложения. Я выяснил, как отправлять сообщения на номера в США, но отправка SMS другому пользователю мобильной связи оказывается более сложной. Я здесь, чтобы узнать, может ли кто-нибудь помочь мне понять, что я делаю неправильно, и услышать какие-либо предложения о способах решения проблемы. Я создал простую веб-страницу с выпадающим меню для международных кодов и форму ввода для мобильного номера и кнопку для отправки информации на сервер Twilio. Код, который выглядит следующим образом:Не удается отправить Twilio для отправки SMS на международные номера #

<html> 
<head><title>Text Me The Link!</title> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script type="text/javascript"> 
//Javascript 
$(function(){ 
$("#frm").submit(function(e){ 
e.preventDefault(); 
$.post("textMeLink.php", $("#frm").serialize(), 
function(data){ 
if(data.sms_sent == 'OK'){ 
alert("Message Sent"); 
} else { 
alert("Message Not Sent"); 
} 
}, "json"); 
document.getElementById('frm').reset(); 
}); 
    }); 
    </script> 
    </head> 
    <body> 

<form id="frm" name="frm" method = "POST"> 
    <input type="reset" name="ajax" style="display:none"/> 
     <h4>Text your phone a download link for our iPhone and Android apps</h4> 
        <select name="code"> 
        <?php 
        include "callingCodesV0.php"; 
        $countryAndCodes = getCountryDialCodes(); 
        foreach($countryAndCodes as $key=>$value){ 
         echo "<option value='$value'>$key($value)</option>\n"; 
        } 

        ?> 
       </select> 
    <input type="phone" name="phone" placeholder="Enter Your Mobile Number"/> 
    <button type="submit">Get Link</button> 
    <div style="display: none; " class="error"/> 
</form> 

PHP файл включается, внутри формы в организме, это простой скрипт, который принимает JSON-файл, который содержит все коды телефонных, и создает простой массив из кода страны в качестве ключа и кода набора номера в качестве элемента, так как это выглядит:

файл
CO(Colombia)=>"+57" 

другой PHP (textMeLink.php) является то, что обрабатывает телефонные номера и взаимодействие с сервером Twilio. textMeLink.php выглядит следующим образом:

<?php 

require_once "C:\Users\Kevin\Marco Polo\\twilio-php-master\Services\Twilio.php"; 
$AccountSid = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; 
$AuthToken = "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"; 

$client = new Services_Twilio($AccountSid, $AuthToken); 

$phone=$_POST['phone']; 
$code=$_POST['code']; 
$phoneAndCode = $code+$phone; 
echo "phoneAndCode"; 
$sms = $client->account->sms_messages->create(
    "+17327047999", 

    $phoneAndCode, 

    "Get our app now for iPhone: appstore.com/marcopolo\nGet our app now for Android: ....." 
); 
$sms_check="OK"; 
$return_json = '{"sms_sent":"' .$sms_check . '"}'; 

echo $return_json; 
?> 

я хочу обратить внимание на линию, где я определяю переменные $ телефона и $ кода. Как вы можете видеть, я пытаюсь объединить две переменные, чтобы у меня был номер телефона с соответствующим кодом области, который я могу отправить с помощью SMS. По какой-то причине, однако, конкатенация не работает, и когда я пытаюсь отправить SMS-номер международного номера, ничего не происходит. Даже журнал Twilio не показывает международный номер, на который я пытался отправить SMS. Я не уверен, является ли ошибка в файле php, в котором есть html-код, или если ошибка во втором файле php, который обрабатывает номера телефонов и имеет дело с Twilio. Как я уже сказал выше, любая помощь, предложения или указание ошибок приветствуется. Заранее благодарю всех. :)

+0

Вы связались с Twilio, чтобы иметь возможность получать международные SMS-сообщения? – xmjw

+0

как я могу проверить, включено ли это? – engineerKev

+0

проверено, и большинство стран включено для глобальных смс. Таким образом, проблема может быть не с Twilio – engineerKev

ответ

1

В PHP вы объединяетесь с оператором ., а не с оператором +. Вы добавляете два числа.

$phoneAndCode = $code+$phone; 

Вместо конкатенации:

$phoneAndCode = $code . $phone; 
0

Я ищу что-то подобное, реальный ответ Twilio не поддерживает телефонные звонки в Колумбии, и только поддержка смс 2 носителей ("TIGO, Claro ") ... Я отправлю электронное письмо с поддержкой, если я что-то знаю, я обновлю свой ответ