Anonim

I ett nyligen projekt blev jag ombedd att komma med en lösning för att skicka textmeddelanden som en premiumfunktion på en klients medlemssida. Detta är inte något jag någonsin gjort tidigare, men jag tänkte att jag skulle sammanställa all information jag samlade in i en enkel handledning för dem som vill göra samma sak

Det fria alternativet - E-post

Om du inte redan visste det, kan textmeddelanden faktiskt skickas via e-post till de flesta mobiloperatörer. Till exempel är jag en AT&T-kund. För att skicka mig ett textmeddelande utan telefon, kunde jag öppna upp gmail och skicka ett e-postmeddelande till: Jag skulle få textmeddelandet precis som om jag skulle göra något annat meddelande.
Att tillämpa detta på PHP är tillräckligt enkelt när det gäller faktisk kod. Mailfunktionen kommer att göra tricket ganska snyggt. Om du har ditt nummer till hands och känner till operatören som numret använder kan du leta upp mobiltelefonoperatören här. För att skicka ett meddelande till mig själv var det lika enkelt som:

$ nummer = "999-999-9999"; $ carrier = "@ txt.att.net"; $ message = "Detta är en text"; $ sent = mail ("$ carrier", 'Test', $ meddelande); echo $ skickat? "E-post skickat": "E-post skickas INTE"; // mail (e-postadress, ämne, organ); // ämnet krävs inte och kan lämnas tomt om så önskas

Detta kan dock skapa dilemnor. Det kräver att du vet både nummer och mobiltelefonoperatör. Med nummerportabilitet kan mobiltelefonoperatören ändras, och såvida inte en användare meddelar dig denna information, skulle du inte ha något sätt att veta att deras operatör har ändrats. Det här alternativet var bara inte genomförbart för oss eftersom vi behövde det för att fungera felfri oavsett om de bytte bärare eller vad som än har varit. Om vi ​​hade numret är det all den information som vi borde behöva. Att fråga användaren att hålla mer information än den aktuella frågade för mycket.
Jag kunde se att detta var ett användbart sätt att skicka textmeddelanden om jag bara ville bygga en slags meddelandetjänst för mig själv. dvs om ett av mina dagliga cron-skript misslyckades, något längs dessa linjer. Detta är inte en skalbar pålitlig lösning för någon större lösning än bara några användare.

Det betalda alternativet - SMS Gateways

Det finns många SMS-gateways där ute, med olika prissättningspunkter och API: er. SMS-gateways är inte gratis, men de ger ett säkrare och pålitligt sätt att få jobbet gjort. Jag kom ihåg att göra en del forskning om detta ämne för ungefär ett år sedan och namnet Twilio fastnade. De är som jag slutade använda och en snabb och enkel handledning finns nedan. De kostar 1 cent per textmeddelande, inte det billigaste, men mycket rimliga för vad vi försökte åstadkomma.

Hur man skickar ett textmeddelande med Twilio

Du behöver först ett konto med dem, så gå med. Du kommer att ha ett användar-ID och verifieringstoken som du kan ansluta till lämpliga variabler nedan. Ladda ner det officiella Twilio PHP-biblioteket härifrån.

// inkludera det officiella Twilio PHP-biblioteket inkludera 'Services / Twilio.php'; $ accountid = "#######"; $ token = "#######"; // förklara en ny instans av twilio services class $ client = new Services_Twilio ($ AccountSid, $ AuthToken); $ mynumber = "##########"; $ till = "##########"; $ body = "detta är ett textmeddelande"; $ client-> account-> sms_messages-> create ($ från, $ till, $ body); // voila! meddelande skickat

För någon mängd skala skulle jag rekommendera att du använder en gateway som Twilio. Du behöver inte oroa dig för att hålla reda på transportören och enligt min erfarenhet har de varit extremt pålitliga. All feedback eller förslag, låt mig veta i kommentarerna nedan.

Hur man skickar textmeddelanden med php