Come inviare un SMS da terminale con Linux

Condividi questo articolo:


Ho appena perso il mio telefono. So che è qui in casa mia perché l’ho usato ieri sera e i miei altoparlanti bluetooth si connettono ad esso questa mattina.

Come posso mandare un messaggio sms al mio telefono usando il terminale di linux? Poi la notifica del telefono suonerà e potrò trovare il mio telefono.

Nota: ho chiesto una soluzione bash perché è più semplice che installare e configurare una GUI. Inoltre sono più a mio agio a lavorare in bash che in python, HTML, o java, ecc. Infine una soluzione bash funziona in Windows 10 quando si usa il Windows Subsystem for Linux (WSL).

Nota 2: rispondere ai commenti:

Non ho un telefono fisso quindi non posso semplicemente chiamare il mio smartphone.
Erano le 6 del mattino di domenica quando ho perso il mio telefono. Le persone che potevo mandare via e-mail per chiamare il mio telefono stavano dormendo. Non ero sicuro del livello di carica della batteria e se fosse morto, non avrei mai potuto mandare un messaggio.
Qualche settimana prima avevo disattivato le notifiche sonore delle e-mail sul mio smartphone, così non potevo mandarmi le e-mail.
Non ho skype o nessun fornitore di servizi VOIP
Dopo 30 minuti ho trovato lo smartphone mandandogli un messaggio usando la risposta che ho postato qui sotto. Era nascosto sotto uno scaffale di mobili alto 4″ dal pavimento nel soggiorno…

SMS da terminale / Shell / Bash

Per i seguenti passi aprite un prompt di terminale noto come “Command Line Interface” o “CLI”. Nella maggior parte delle distribuzioni Linux farlo utilizzando Ctrl+Alt+T

textbelt.com per inviare testo da bash:

Ho trovato un articolo su reddit: Invia un messaggio di testo SMS dalla riga di comando con questo comando Bash / Terminal che puoi usare:

                    

curl -X POST https://textbelt.com/text \
--data-urlencode phone='7801234567' \
--data-urlencode message='Trova il tuo telefono! \
-d key=textbelt
                
Sostituisci 7801234567 con il tuo numero di telefono. Se stai scrivendo un numero di telefono internazionale (fuori dal Canada / USA) segui queste istruzioni. Nota: Il software sostituisce "Trova il tuo telefono!" con un messaggio che è necessario acquistare una chiave per utilizzare un messaggio personalizzato. Ma il software insiste ancora che devi fornire un messaggio che viene sovrascritto.

Altri motivi per inviare SMS da Bash

Trovare il mio smartphone è stato un bisogno insolito di inviare un messaggio di testo SMS da Bash. Potresti avere alcune persone che dovrebbero essere avvisate quando: L’utilizzo dello spazio su disco supera la soglia, per esempio il 90% La RAM è piena e lo swap viene usato pesantemente Il server web sta subendo attacchi esterni Un utente ha avuto troppi accessi non validi e l’account è stato disattivato È stato eseguito un lavoro specifico che ha effetti sui processi chiave Un lettore di badge controlla che una certa porta venga sbloccata

textbelt.com è gratuito per un messaggio al giorno

Un solo SMS gratuito al giorno può essere inviato da un dato mittente. Ecco un esempio del primo e del secondo tentativo in un giorno:

$ find-phone # script bash con il comando precedente
{"success":true,"textId":"168141545572031481","quotaRemaining":0}

$ find-phone
{"success":false, "error": "Only one test text message is allowed per day.", "quotaRemaining":0}


Nota: Forse puoi resettare l'indirizzo IP del tuo router per più di un testo al giorno, ma non l'ho ancora testato.

È possibile utilizzare testi prepagati illimitati. Ci sono molti servizi di gateway SMS disponibili. I prezzi al link del fornitore di cui sopra variano da 0.15 per testo. Questo è per riferimento e non è un’approvazione o una raccomandazione. Per favore fai i tuoi compiti a casa e cerca fornitori di servizi a pagamento rispettabili ai prezzi migliori.

Creare uno script Bash per inviare SMS da riga di comando

Potreste creare uno script bash chiamato sms contenente:

                    

#!/bin/bash curl -X POST https://textbelt.com/text –data-urlencode phone=’$1′ –data-urlencode message=’$2′ -d key=textbelt Invia un messaggio SMS usando sms 7801234567 “Hello World”

Grazie Fabby per aver testato questo dall’UE e aver confermato che funziona lì.
Inviare e-mail al vettore dello smartphone con un messaggio SMS
Per quanto segue tutto ciò che serve è un browser web come FireFox, Internet Explorer o Chrome. Non c’è bisogno di immergersi nelle “viscere del bash” o limitarsi a un solo testo gratuito al giorno.

Molti operatori ti permettono di inviare SMS a uno smartphone indirizzando un’email a phone_number@mobile_provider_name.com.

Cercare il numero di telefono per ottenere l’indirizzo web dell’operatore di telefonia mobile

Per ottenere l’indirizzo del sito web del gestore utilizzando il numero di telefono vai a: https://freecarrierlookup.com/. Immaginiamo di aver inserito il numero di telefono: 7801234567:

Ci viene detto che l’indirizzo email da usare è 7801234567@pcs.rogers.com. Ora invia un’email a questo indirizzo e il tuo telefono suonerà con una notifica.

Naturalmente, se avete il vostro smartphone configurato per suonare con una notifica quando arriva un’email, potete semplicemente inviare un’email al vostro telefono!

Interfaccia CLI per l’invio dell’indirizzo email

In Ask Ubuntu ci sono molte domande e risposte su come inviare email usando bash. Sto usando ssmtp (Secure Simple Mail Transport Protocol) per i miei backup giornalieri cron: Backup della configurazione di Linux, script e documenti su Gmail

Anche se questa configurazione è per un utente, è possibile creare un file con più utenti a cui inviare messaggi di testo:

Nome Indirizzo email
Tiny Tim 5551234567@att.com
Mrs. Clause 5552223333@sprint.com
Bad Elf 5551114444@telus.net
Poi nel tuo codice bash qualcosa come questo

ssmtp 5551234567@att.com < mail.txt
Dove mail.txt assomiglia a questo:

Cc: admin@our_company.com
Subject: Aggiornamento notturno del database FALLITO
Da: root@our_company.com
Content-Type: text/html; charset="utf8"


<html>
<body>
<div style="
background-color:
#abcdef; width: 300px;
height: 300px;
">
</div>
Nightly database update failed at procedure: AP005.
</body>
</html>

Ci sono molti modi per inviare email da bash. Questo è solo un esempio. L’importante è che l’indirizzo email contenga il numero dello smartphone seguito dall’indirizzo web del provider dello smartphone

Andrea Piani Administrator
Mi chiamo Andrea Piani, sono un programmatore specializzato nello sviluppo di App iOS e Android. Appassionato di elettronica e blockchain. Divulgatore tecnologico. Creatore della web agency Immaginet Srl (Udine) e di PrestaExpert Srl (Milano), aziende specializzate in Digital Marketing ed e-commerce.
follow me

Vuoi una consulenza a pagamento? Vuoi sviluppare un software per la tua attività? Hai bisogno di informazioni? Compila il modulo per contattarmi. Ti risponderò entro 24 ore.

Fill out my online form.

Iscriviti alla newsletter. Scegli la categoria che preferisci. Solo articoli esclusivi e di alta qualità che non trovi sul blog. Niente SPAM. Promesso!


Condividi questo articolo: