66 votes

Comment puis-je envoyer un message texte mobile à partir du terminal ?

Je viens de perdre mon téléphone. Je sais qu'il est chez moi car je l'ai utilisé hier soir et mes enceintes bluetooth s'y connectent ce matin.

Comment puis-je envoyer des SMS à mon téléphone en utilisant bash ? Ensuite, la notification du téléphone retentit et je peux trouver mon téléphone.

Nota: J'ai demandé une solution bash parce que c'est plus simple que d'installer et de configurer une interface graphique. De plus, je suis plus à l'aise pour travailler en bash qu'en Python, HTML, ou java, etc. Enfin, une solution bash fonctionne sous Windows 10 lorsque vous utilisez la fonction Sous-système Windows pour Linux ( WSL ).

Note 2 : Répondre aux commentaires :

  • Je n'ai pas de ligne fixe et je ne peux donc pas simplement appeler mon smartphone.
  • Il était 6 heures du matin, dimanche, quand j'ai perdu mon téléphone. Les personnes à qui je pouvais envoyer un courriel pour appeler mon téléphone dormaient. Je n'étais pas sûr du niveau de charge de la batterie et s'il était mort, je ne pourrais jamais envoyer de SMS.
  • Quelques semaines auparavant, j'avais désactivé les notifications sonores des e-mails sur mon smartphone afin de ne pas pouvoir m'envoyer d'e-mails.
  • Je n'ai pas skype ou tout VOIP prestataires de services

Après 30 minutes, j'ai trouvé le smartphone en lui envoyant un SMS avec la réponse que j'ai postée ci-dessous. Il était caché sous une étagère de meuble de 4" de haut dans le salon...

60voto

WinEunuuchs2Unix Points 91128

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

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.

24voto

Terrance Points 35422

Cette réponse n'est pas pour la ligne de commande car je ne trouve pas de solution en ligne de commande pour Google.

Si vous avez un téléphone Android et que vous ne voulez pas utiliser la ligne de commande, vous pouvez vous rendre à l'adresse suivante https://www.google.com/Android/find dans un navigateur Web et faire sonner votre téléphone à partir de là, indépendamment de la mise en sourdine, du vibreur ou de la connexion à une oreillette Bluetooth. Aucun logiciel supplémentaire n'est requis sur votre téléphone. Vous pouvez également le faire autant de fois que vous le souhaitez dans une journée.

4voto

Nonny Moose Points 2011

Appel téléphonique depuis le navigateur, en utilisant Google Hangouts

Vous pouvez également localiser votre téléphone en l'appelant, même si vous n'avez pas de ligne fixe.

Prérequis : un compte Google

Remarque : seuls la plupart des appels vers les États-Unis et le Canada sont gratuits. Voir https://www.google.com/voice/b/0/rates?p=hangout pour les tarifs.

  1. Aller à hangouts.google.com
  2. Cliquez sur le bouton "Appel téléphonique" :
    button screenshot
  3. Cliquez sur "Nouvelle conversation" :
    button screenshot
  4. Entrez votre numéro de téléphone :
    number entry box screenshot
  5. Cliquez sur "Appeler" :
    call button screenshot

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X