Anonim

In un recente progetto mi è stato chiesto di trovare una soluzione per inviare messaggi di testo come funzionalità premium sul sito di appartenenza di un cliente. Questo non è qualcosa che avevo mai fatto prima, ma ho pensato che avrei compilato tutte le informazioni che ho raccolto in un semplice tutorial per coloro che cercano di fare lo stesso

L'opzione gratuita - E-mail

Se non lo sapevi già, i messaggi di testo possono effettivamente essere inviati via e-mail alla maggior parte dei gestori di telefoni cellulari. Ad esempio, sono un cliente AT&T. Per inviarmi un SMS senza telefono, potrei aprire Gmail e inviare una e-mail a: riceverei il messaggio di testo proprio come farei con qualsiasi altro messaggio.
Applicarlo a PHP è abbastanza facile in termini di codice reale. La funzione di posta farà il trucco abbastanza bene. Se hai il tuo numero a portata di mano e conosci l'operatore telefonico che il numero sta utilizzando, puoi cercare l'operatore telefonico qui. Per inviare un messaggio a me stesso, è stato facile come:

$ number = "999-999-9999"; $ carrier = "@ txt.att.net"; $ message = "Questo è un testo"; $ send = mail ("$ carrier", 'Test', $ message); echo $ inviato? "Posta inviata": "Posta NON inviata"; // posta (indirizzo e-mail, oggetto, ente); // il soggetto non è richiesto e può essere lasciato in bianco se lo si desidera

Ciò può tuttavia creare dilemme. Richiede che tu conosca sia il numero che l'operatore telefonico. Con la portabilità del numero, il gestore di telefonia cellulare può cambiare e, a meno che un utente non ti informi di queste informazioni, non avresti modo di sapere che il loro gestore è cambiato. Questa opzione non era fattibile per noi perché ne avevamo bisogno per funzionare perfettamente, indipendentemente dal fatto che avessero cambiato corriere o qualunque fosse il caso. Se avessimo il numero, ecco tutte le informazioni di cui avremmo bisogno. Chiedere all'utente di mantenere più informazioni di quelle aggiornate era chiedere troppo.
Potrei vedere questo come un modo utile per inviare messaggi di testo se stavo solo cercando di creare una sorta di servizio di notifica per me stesso. cioè se uno dei miei cron script giornalieri falliva, qualcosa del genere. Questa non è una soluzione affidabile scalabile per qualsiasi tipo di soluzione più grande di pochi utenti.

L'opzione a pagamento: gateway SMS

Esistono numerosi gateway SMS là fuori, con diversi punti di prezzo e API. I gateway SMS non sono gratuiti, ma forniscono un modo più sicuro e affidabile per portare a termine il lavoro. Mi sono ricordato di aver fatto delle ricerche su questo argomento circa un anno fa e il nome Twilio è rimasto. Sono quelli che ho finito di usare e un tutorial semplice e veloce è sotto. Costano 1 centesimo per messaggio di testo, non il più economico, ma molto ragionevole per quello che stavamo cercando di realizzare.

Come inviare un messaggio di testo con Twilio

Per prima cosa avrai bisogno di un account, quindi registrati. Ti verranno forniti un ID utente e un token di autenticazione che puoi collegare nelle variabili appropriate di seguito. Quindi, scarica la libreria PHP Twilio ufficiale da qui.

// include la libreria PHP ufficiale di Twilio include 'Services / Twilio.php'; $ accountid = "#######"; $ token = "#######"; // dichiara una nuova istanza della classe di servizi twilio $ client = new Services_Twilio ($ AccountSid, $ AuthToken); $ mynumber = "##########"; $ to = "##########"; $ body = "questo è un messaggio di testo"; $ client-> account-> sms_messages-> create ($ da, $ a, $ body); //Ecco! messaggio inviato

Per qualsiasi quantità di scala, consiglierei di usare un gateway come Twilio. Non devi preoccuparti di tenere traccia del corriere e nella mia esperienza sono stati estremamente affidabili. Eventuali feedback o suggerimenti, fammi sapere nei commenti qui sotto.

Come inviare messaggi di testo con php