2015-12-16 20 views
6

Ho creato account di prova su Twilio, ed installato Twilio utilizzandoPython-Twilio non sta inviando sms con credenziali di test.

pip install twilio 

su Ubuntu 14.04 LTS.

sotto è il mio codice python per inviare gli sms

from twilio.rest import TwilioRestClient 

account_sid = "MY TEST ACCOUNT SID" 
auth_token = "MY TEST ACCOUNT TOKEN" 
client = TwilioRestClient(account_sid, auth_token) 
print "running!!" 

sms = client.sms.messages.create(body="All in the game, yo", 
    to="+91MYNUMBER", 
    from_="+1MY_TWILIO_NUMBER") 
print sms.sid 
print sms.status 

Durante l'esecuzione di questo file python sto ottenendo sotto l'errore di registro da Twilio.

Traceback (chiamata più recente scorso): file "/home/software/ws/extra/scripts/test.py", linea 40, in da _ = "+ 1MY_TWILIO_NUMBER") file "/ usr/local /lib/python2.7/dist-packages/twilio/rest/resources/sms_messages.py ", riga 167, in create return self.create_instance (kwargs) File" /usr/local/lib/python2.7/dist -packages/twilio/rest/resources/base.py ", riga 365, in create_instance data = transform_params (body)) File" /usr/local/lib/python2.7/dist-packages/twilio/rest/resources /base.py ", riga 200, nella richiesta risp = make_twilio_request (metodo, uri, auth = self.auth, ** kwargs) File"/usr/local/lib/py thon2.7/dist-packages/twilio/rest/resources/base.py ", riga 164, in make_twilio_request uri = resp.url, msg = messaggio, codice = codice) twilio.rest.exceptions.TwilioRestException: HTTP 400 errore: il numero di telefono Da + 1MY_TWILIO_NUMBER non è un numero di telefono in entrata valido per SMS o un codice funzione per il tuo account.

Ho controllato che il mio numero ha funzionalità per Voice, SMS & MMS.

Ho verificato questo errore su here. poi ho provato con il numero +15005550006, È in esecuzione ma non ricevo mai gli sms sul mio cellulare. Il messaggio è andato in coda che non viene mai elaborato.

runnnign!! 
SM3f51b1c3e5ad43d38bd548cfada14175 
queued 

Cosa mi manca? perché non ricevo l'sms?

+0

Stai usando un VOIP #? –

+0

No ora sto solo usando sms. –

+0

Nexmo, dove lavoro, ha un'API SMS che consente di inviare SMS "a oltre 200 paesi/territori con una semplice chiamata HTTP.Sei autorizzato a inserire nella whitelist fino a 10 numeri per testare l'API e puoi ricaricare il tuo account una volta che hai completamente testato la nostra piattaforma. Puoi provarlo qui: https://dashboard.nexmo.com/sign-up Solo per riferimento qui c'è un collegamento ai documenti API SMS: https://docs.nexmo.com/api-ref/sms -api –

risposta

3

Evangelista di sviluppatori Twilio qui.

Le credenziali dell'account di test non inviano effettivamente messaggi SMS, sono endpoint di test che consentono di sapere che le chiamate HTTP funzionano come previsto. Ecco perché devi usare un numero specifico.

Per verificare con il numero acquistato sul proprio account, è necessario utilizzare le credenziali dell'account reale. Il tuo account di prova Twilio viene fornito con un credito gratuito per testare questi messaggi prima che sia necessario eseguire l'aggiornamento, quindi ti consiglio di cambiare per utilizzare quelle credenziali reali e il numero che hai acquistato e dovresti iniziare a vedere i messaggi SMS che arrivano sul tuo telefono.

Come nota a margine, la chiamata a client.sms.messages.create utilizza effettivamente un'API obsoleta. È possibile aggiornarlo a client.messages.create e utilizzerà il più moderno Messages endpoint. (A parte questo, però, le credenziali di test non funzioneranno affatto con quell'endpoint, consiglio comunque di utilizzare le credenziali reali e il credito di prova da testare.)

+0

ok, quindi prima devo acquistare un numero da https://www.twilio.com/user/account/phone-numbers/search/buy/results. quindi aggiungere crediti nel mio account, dopo di che posso inviare gli sms usando l'API python giusto? –

+0

Non posso comprare il numero indiano lì! –

+0

Non abbiamo numeri in India in questo momento. Tuttavia è possibile acquistare un numero da altrove e utilizzarlo per inviare messaggi SMS a numeri indiani. Per testare questo, non è necessario aggiungere crediti al tuo account, c'è un credito di prova gratuito che puoi usare. – philnash