SMS à partir du terminal / Shell / Bash
Pour les étapes suivantes, ouvrez une invite de terminal, aussi appelée "interface de ligne de commande" ou "CLI". Dans la plupart des distributions Linux, vous pouvez le faire en utilisant Ctrl + Alt + T
textbelt.com
pour envoyer du texte depuis bash
J'ai trouvé un article sur Reddit : Envoyer un message texte SMS à partir de la ligne de commande avec cette commande Bash / Terminal que vous pouvez utiliser :
curl -X POST https://textbelt.com/text \
--data-urlencode phone='7801234567' \
--data-urlencode message='Find Your Phone!' \
-d key=textbelt
Remplacer 7801234567
avec votre numéro de téléphone. Si vous envoyez un SMS à un numéro de téléphone international (hors du Canada et des États-Unis), suivez les instructions suivantes instructions .
Nota: Le logiciel remplace le message "Trouvez votre téléphone !" par un message indiquant que vous devez acheter une clé pour utiliser un message personnalisé. Mais le logiciel insiste toujours sur le fait que vous devez fournir un message qui sera écrasé.
Autres raisons d'envoyer un message texte SMS à partir de Bash
Trouver mon smartphone était un besoin inhabituel pour envoyer un SMS depuis Bash. Vous avez peut-être quelques personnes à qui il faut envoyer un SMS quand :
- Les disques sont sur le point de tomber en panne (ou d'autres erreurs matérielles se sont produites).
- L'utilisation de l'espace disque dépasse le seuil fixé, par exemple 90 %.
- La RAM est pleine et le swap est fortement utilisé.
- Le serveur Web subit des attaques externes
- Un utilisateur a eu trop de connexions invalides et son compte est désactivé.
- Une tâche spécifique a été exécutée qui affecte les processus clés.
- Un lecteur de badges de porte surveille le déverrouillage d'une certaine porte.
textbelt.com
est gratuit pour un texte par jour
Un seul gratuit SMS par jour peuvent être envoyés par un expéditeur donné. Voici un exemple de la première et de la deuxième tentative sur une journée :
$ find-phone # bash script with above command
{"success":true,"textId":"168141545572031481","quotaRemaining":0}
$ find-phone
{"success":false,"error":"Only one test text message is allowed per day.","quotaRemaining":0}
Nota: Vous pouvez peut-être réinitialiser l'adresse IP de votre routeur pour plus d'un texte par jour, mais je ne l'ai pas encore testé.
Vous pouvez utiliser des textos illimités en prépayé. Il existe de nombreux services de passerelle SMS. Les prix indiqués sur le lien du fournisseur ci-dessus varient de 0,03 à 0,15 $ par texte. Ceci est une référence et non une approbation ou une recommandation. Veuillez faire vos devoirs et rechercher des fournisseurs de services payants réputés aux meilleurs prix.
Créer un script de Bash
Vous pourriez créer un script bash appelé sms
contenant :
#!/bin/bash
curl -X POST https://textbelt.com/text --data-urlencode phone='$1' --data-urlencode message='$2' -d key=textbelt
- Envoyer un message SMS en utilisant
sms 7801234567 "Hello World"
- Merci à Fabby d'avoir testé ce système depuis l'UE et d'avoir confirmé qu'il fonctionne dans ce pays.
Envoyer un e-mail au porteur du smartphone avec un SMS
Pour la suite, tout ce dont vous avez besoin est un navigateur web comme FireFox, Internet Explorer ou Chrome. Pas besoin de plonger dans les "entrailles de bash" ou de vous limiter à un texte libre par jour.
De nombreux opérateurs vous permettent d'envoyer un SMS à un smartphone en adressant un courriel à phone_number@mobile_provider_name.com
.
Recherche d'un numéro de téléphone pour obtenir l'adresse du site web de l'opérateur
Pour obtenir l'adresse du site web du fournisseur en utilisant le numéro de téléphone, allez sur le site : https://freecarrierlookup.com/ . Imaginez que nous ayons saisi le numéro de téléphone : 7801234567
:
![Fee Carrier Lookup.png]()
On nous dit que l'adresse e-mail à utiliser est 7801234567@pcs.rogers.com
. Envoyez maintenant un courriel à cette adresse et votre téléphone émettra une notification.
Bien sûr, si vous avez configuré votre smartphone pour qu'il émette une notification à l'arrivée d'un courriel, vous pouvez simplement envoyer un courriel à votre téléphone en premier lieu !
Interface CLI pour l'envoi d'une adresse e-mail
Sur Demandez à Ubuntu il y a beaucoup de questions et de réponses sur la façon d'envoyer un courriel en utilisant bash. J'utilise ssmtp
(Secure Simple Mail Transport Protocol) pour mon cron
sauvegardes quotidiennes : Sauvegarde de la configuration de Linux, scripts et documents vers Gmail
Bien que cette configuration ne concerne qu'un seul utilisateur, vous pouvez créer un fichier avec plusieurs utilisateurs à qui envoyer des messages texte :
Name Email Address
Tiny Tim 5551234567@att.com
Mrs. Clause 5552223333@sprint.com
Bad Elf 5551114444@telus.net
Ensuite, dans votre code bash quelque chose comme ceci :
ssmtp 5551234567@att.com < mail.txt
Où mail.txt
ressemble à ça :
Cc: admin@our_company.com
Subject: Nightly Database Update FAILED
From: 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>
Il existe de nombreuses façons d'envoyer des e-mails à partir de bash. Ceci n'est qu'un exemple. L'important est que l'adresse électronique contienne le numéro du smartphone suivi de l'adresse web de l'opérateur du smartphone.