web-dev-qa-db-fra.com

Comment puis-je envoyer un message texte mobile depuis un terminal?

Je viens de perdre mon téléphone. Je sais que c'est ici chez moi car je l'ai utilisé hier soir et mes haut-parleurs Bluetooth vont s'y connecter ce matin.

Comment puis-je envoyer un SMS à mon téléphone en utilisant bash? La notification téléphonique retentit et je peux trouver mon téléphone.

Note: J'ai demandé une solution bash car c'est plus simple que d'installer et de configurer une interface graphique. De plus, je suis plus à l'aise avec bash qu'avec python, HTML ou Java, etc. Enfin, une solution bash fonctionne sous Windows 10 lorsque vous utilisez le sous-système Windows pour Linux (WSL).

Note 2: Répondre aux commentaires:

  • Je n'ai pas de téléphone fixe, je ne peux donc pas appeler simplement mon smartphone.
  • Il était 6 heures du matin dimanche matin lorsque j'ai perdu mon téléphone. Les personnes que je pouvais contacter pour appeler mon téléphone étaient en train de dormir. Je n'étais pas sûr du niveau de charge de la batterie et si elle mourait, je ne pourrais jamais l'envoyer par SMS.
  • Quelques semaines auparavant, j'avais désactivé les notifications sonores par courrier électronique sur mon smartphone afin que je ne puisse plus m'envoyer de courrier électronique.
  • Je n'ai pas skype ni aucun fournisseur de services VOIP

Au bout de 30 minutes, j'ai trouvé le smartphone en l'envoyant par SMS à l'aide de la réponse ci-dessous. Il était caché sous une étagère de meubles de 4 "de hauteur dans le salon ...

43
WinEunuuchs2Unix

SMS par SMS depuis Terminal/Shell/Bash

Pour les étapes suivantes, ouvrez une invite de terminal appelée "Interface de ligne de commande" ou "CLI". Dans la plupart des distributions Linux, faites ceci en utilisant Ctrl+Alt+T

textbelt.com pour envoyer du texte depuis bash

J'ai trouvé un article reddit: Envoyer un SMS un message texte à partir de la ligne de commande avec cette commande Bash/Terminal, vous pouvez utiliser:

curl -X POST https://textbelt.com/text \
   --data-urlencode phone='7801234567' \
   --data-urlencode message='Find Your Phone!' \
   -d key=textbelt

Remplacez 7801234567 par votre numéro de téléphone. Si vous envoyez un SMS à un numéro de téléphone international (hors Canada/États-Unis), suivez ces instructions .

Remarque: Le logiciel remplace "Trouvez votre téléphone!" avec un message indiquant que vous devez acheter une clé pour utiliser un message personnalisé. Mais le logiciel insiste toujours pour que vous deviez fournir un message qui sera écrasé.


Autres raisons pour l'envoi de SMS Message texte de Bash

La recherche de mon smartphone était un besoin inhabituel d’envoyer un message texte SMS de Bash. Vous pouvez avoir quelques personnes qui devraient recevoir 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, par exemple 90%
  • La RAM est pleine et le swap est fortement utilisé
  • Le serveur Web subit des attaques externes
  • Un utilisateur avait trop de connexions non valides et son compte est désactivé
  • Un travail spécifique a été exécuté qui affecte les processus clés
  • Un lecteur de badge de porte surveille le déverrouillage d’une certaine porte

textbelt.com est gratuit pour un texte par jour

Un seul message gratuit SMS par jour peut être envoyé par un expéditeur donné. Voici un exemple des première et deuxième tentatives d'un jour:

$ 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}

Remarque: 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ée.

Vous pouvez utiliser des textes prépayés illimités. Il existe de nombreux services de passerelle SMS disponibles. Le prix au lien de fournisseur ci-dessus varie de 0,03 USD à 0,15 USD par texte. Ceci est pour référence et non une approbation ou une recommandation. S'il vous plaît, faites vos devoirs et recherchez des fournisseurs de services payants réputés au meilleur prix.


Créer un script Bash

Vous pouvez 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 le message SMS à l'aide de sms 7801234567 "Hello World"
  • Merci Fabby d'avoir testé cela auprès de l'UE et de l'avoir confirmé.

Envoyer un e-mail au transporteur du smartphone avec SMS Message texte

Pour ce qui suit, tout ce dont vous avez besoin est d’un navigateur Web tel que FireFox, Internet Explorer ou Chrome. Pas besoin de plonger dans les "entrailles de bash" ou de vous limiter à un texte gratuit par jour.

De nombreux opérateurs vous permettent d’envoyer SMS Message texte à un smartphone en adressant un courrier électronique à phone_number@mobile_provider_name.com.

Numéro de téléphone rechercher l'adresse du site Web du transporteur

Pour obtenir l'adresse du site Web du fournisseur à l'aide du numéro de téléphone, accédez à l'adresse suivante: https://freecarrierlookup.com/ . Imaginons que nous ayons entré le numéro de téléphone: 7801234567:

Fee Carrier Lookup.png

On nous dit que l'adresse électronique à utiliser est [email protected]. Envoyez maintenant un email à cette adresse et votre téléphone sonnera avec une notification.

Bien sûr, si votre smartphone est configuré pour sonner avec une notification lorsque le courrier électronique arrive, vous pouvez tout simplement envoyer votre téléphone par e-mail!

Interface CLI pour l'envoi d'une adresse email

Dans Ask Ubuntu , il existe de nombreuses questions et réponses sur la manière d'envoyer un courrier électronique à l'aide de bash. J'utilise ssmtp (protocole de transport de courrier simple sécurisé) pour mes sauvegardes quotidiennes cron: sauvegarde de la configuration Linux, des scripts et des documents sur Gmail

Bien que cette configuration concerne un utilisateur, vous pouvez créer un fichier avec plusieurs utilisateurs pour envoyer des messages texte à:

Name         Email Address
Tiny Tim     [email protected]
Mrs. Clause  [email protected]
Bad Elf      [email protected]

Puis dans votre code bash quelque chose comme ça :

ssmtp [email protected] < mail.txt

mail.txt ressemble à ceci:

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 plusieurs façons d’envoyer un courrier électronique à partir de bash. Ceci n'est qu'un exemple. L'important est que l'adresse e-mail contienne le numéro de smartphone suivi de l'adresse Web du fournisseur de smartphone.

43
WinEunuuchs2Unix

Cette réponse ne concerne pas la ligne de commande car je ne trouve pas de solution de ligne de commande pour Google.

Si vous possédez un téléphone Android et que vous ne souhaitez pas utiliser la ligne de commande, vous pouvez accéder à https://www.google.com/Android/find sur un site Web. Navigateur et appelez votre téléphone à partir de là indépendamment du mode sourdine, vibrer ou être connecté à un casque Bluetooth. Aucun logiciel supplémentaire n'est requis sur votre téléphone non plus. Cela peut également être fait autant de fois que vous le souhaitez en une journée.

20
Terrance

Appel téléphonique depuis le navigateur, à l'aide de Google Hangouts

Vous pouvez également localiser votre téléphone en l'appelant, même si vous ne possédez pas de téléphone fixe.

Prérequis: un compte Google

Remarque: seuls les appels aux États-Unis et au Canada sont gratuits. Voir https://www.google.com/voice/b/0/rates?p=hangout pour connaître les tarifs.

  1. Allez à 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
4
Nonny Moose

Ce que je faisais il y a quelques années était de m'amuser avec python et d'apprendre la langue.

Ce que j'ai fait était:

  • Écrire du code python utilisant le module smtp
  • Testez-le avec Gmail
  • Déterminez l'adresse e-mail qui correspond à mon numéro de téléphone (recherchez les API de messagerie des trois gros opérateurs en texte (en réalité, elles ne sont qu'un domaine de messagerie dans lequel l'utilisateur est le numéro de téléphone))
  • créer un outil de ligne de commande
  • tester avec mon numéro de téléphone

Et VOILA! envoyer des SMS à partir de bash.

P.s. écrit à partir d'un appareil mobile difficile à utiliser ... Si cela attire davantage l'attention, je pourrais chercher à retrouver l'ancien code

0
Trevor Boyd Smith