Изпратете SMS текстово съобщение от командния ред

Anonim

Когато мислите за изпращане на текстови съобщения, вероятно се сещате за iPhone или Android и командният ред не ви минава през ума, но благодарение на винаги полезната команда curl можете да изпратите текстово SMS съобщение до всеки телефон номер направо от терминала.

Да, curl, същият инструмент за команден ред за прехвърляне на данни към и от URL адреси, изтегляне на файлове, получаване на подробности за HTTP заглавка и много други, може да изпраща текстови съобщения.Това става чрез POST заявка, изпратена до услугата TextBelt, безплатен API за изходящ SMS. Разбира се, има ограничения, но те са доста щедри при 75 съобщения на ден (на IP) и не можете да изпратите повече от 3 съобщения за три минути, за да предотвратите злоупотреба. Освен това имайте предвид, че ще бъдете таксувани за входящи текстови съобщения по обичайната тарифа за SMS / текстови съобщения от вашия клетъчен доставчик – това не използва услугата iMessage – така че не прекалявайте с това, ако нямате неограничен традиционен план за текстови съобщения.

Изпращане на текстово съобщение от командния ред с curl

Основният синтаксис, който трябва да използвате, е както следва, не забравяйте да заменитес вашия собствен 10-цифрен телефонен номер (10 цифри=код на областта + телефонен номер), и след това заменете текста message=с вашето собствено съобщение за изпращане:

"

curl http://textbelt.com/text -d номер=-d съобщение=текст отива тук "

Например, за да изпратите текст, който казва „здравей от OSXDaily.com“ на телефонен номер 555-155-1555 (не е реален номер), трябва да използвате следния команден низ:

"

curl http://textbelt.com/text -d номер=5551551555 -d съобщение=здравей от OSXDaily.com "

Да, можете да поставите телефонния номер на друг човек също там, но вероятно не трябва да правите това без тяхното разрешение.

Ако текстът е изпратен успешно, командният ред ще върне съобщение, което гласи '{“success”:true}', ако не успее по някаква причина, ще изглежда по следния начин, което обикновено е показателно за грешка в синтаксиса на вашата команда: '{“success”:false, ”message”: “Необходими са параметри за номер и съобщение.”} curl: (6) Не може да се разреши хост:' Просто прегледайте командния низ и опитай пак.

Текстовото съобщение трябва да пристигне на вашия iPhone или Android много бързо, въпреки че ефективността на услугата вероятно зависи от опашката и колко активност получава TextBelt от другаде. Ще изглежда така:

(Ако се чудите, отговарянето на текстовите съобщения не води до никъде и не прави нищо, това не е двупосочна услуга)

Това работи за изпращане на текстове от Mac OS X, Linux и вероятно всяка друга операционна система или услуга, която има curl достъп. Страната на получателя трябва да работи с всеки мобилен телефон, който приема SMS, независимо дали е iPhone или стара тухла Nokia.

Добавяне на команда за бързо изпращане на текст към Bash

Ако се наслаждавате на удобството да си изпращате текстови съобщения от терминала и планирате да използвате това често, можете да създадете прост bash скрипт, за да съкратите командния низ, като добавите следното към вашия .bash_profile. Не забравяйте да замените номера с вашия 10-цифрен телефонен номер:

"

sendtext () { curl http://textbelt.com/text -d номер=5551113333 -d съобщение=$1;изпратено ехо съобщение; }"

С това във вашия bash_profile можете просто да напишете „sendtext your message goes here“, за да изпратите текст до себе си. Това също позволява малко забавление и полезност с двоен амперсанд &&, като изпращане на SMS известия, когато софтуерният пакет приключи инсталирането или когато изтеглянето на отдалечен файл приключи. Тези с опит в командния ред вероятно могат да се сетят за милион и още една удобна употреба и за това.

Според TextBelt, услугата определено работи в САЩ със следните клетъчни мрежи: Alltel, Ameritech, AT&T Wireless, Boost, CellularOne, Cingular, Sprint PCS, Telus Mobility, T-Mobile, Metro PCS , Nextel, O2, Orange, Qwest, Rogers Wireless, US Cellular, Verizon, Virgin Mobile. Това може да е ограничено до САЩ, но не можем да тестваме мрежи извън региона, уведомете ни, ако опитате другаде.

Изпратете SMS текстово съобщение от командния ред