Як я можу надіслати мобільний текстове повідомлення з терміналу?


51

Я щойно загубив телефон. Я знаю, що це тут, в моєму будинку, тому що я використовував його вчора ввечері, і мої Bluetooth динаміки підключать до нього сьогодні вранці.

Як я можу подати текст на телефон за допомогою bash? Тоді прозвучить телефонне повідомлення, і я можу знайти свій телефон.

Примітка. Я попросив рішення bash, оскільки це простіше, ніж установка та налаштування графічного інтерфейсу. Крім того, мені зручніше працювати в bash, ніж python, HTML або java тощо. Нарешті, рішення bash працює в Windows 10, коли ви використовуєте підсистему Windows для Linux ( WSL ).

Примітка 2: Відповідь на коментарі:

  • У мене немає стаціонарної лінії, тому я не можу просто зателефонувати на свій смартфон.
  • У неділю вранці було 6 ранку, коли я втратив телефон. Люди, яких я міг надіслати електронною поштою, щоб зателефонувати на телефон, спали. Я не знав рівня заряду акумулятора, і якщо він загинув, я ніколи не міг це надіслати.
  • Кілька тижнів раніше я вимикав звукові сповіщення електронною поштою на своєму смартфоні, тому не міг надсилати електронну пошту.
  • У мене немає skypeабо будь-яких постачальників послуг VOIP

Через 30 хвилин я знайшов смартфон, надіславши його текстом, використовуючи відповідь, яку я розмістив нижче. Він був захований під 4-метрова полиця з високою підлогою у вітальні ...


1
Якщо я прочитав це правильно, ви просите еквівалент послуги «Знайти мій телефон», яка дзвонить вашому телефону незалежно від гучності, вібраційного режиму, навушників Bluetooth тощо, які змушують телефон замовкнути. Я знаю, що в Google є той, який ви можете зробити для android, але я не знаю форми його командного рядка. Якщо я можу зрозуміти, це необмежений для використання. Те саме для Apple.
Терранс

3
На Android не існує програмного забезпечення для встановлення. Ви просто перейдете на google.com/android/find
Терранс

3
"Гаразд Google!" прослуховування посилюється ....
Майкл Франк

Відповіді:


45

SMS-повідомлення з терміналу / оболонки / Bash

Для наступних кроків відкрийте підказку терміналу, яка називається "Інтерфейс командного рядка" або "CLI". У більшості дистрибутивів Linux це роблять за допомогою Ctrl+ Alt+T

textbelt.com щоб надіслати текст з bash

Я знайшов статтю reddit: надішліть SMS-повідомлення з командного рядка за допомогою цієї команди Bash / Terminal, яку ви можете використовувати:

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

Замініть 7801234567свій номер телефону. Якщо ви надсилаєте повідомлення про міжнародний номер телефону (за межами Канади та США), дотримуйтесь цих інструкцій .

Примітка. Програмне забезпечення замінює "Знайдіть свій телефон!" з повідомленням, що вам потрібно придбати ключ, щоб користуватися користувацьким повідомленням. Але програмне забезпечення все ще наполягає на тому, що ви повинні надати повідомлення, яке буде перезаписане.


Інші причини надсилання SMS-повідомлення від Bash

Пошук мого смартфона був незвичайною потребою відправити SMS-повідомлення від Bash. У вас може бути декілька людей, про яких слід писати текстові повідомлення, коли:

  • Диски збираються вийти з ладу (або сталися інші апаратні помилки)
  • Використання дискового простору перевищує поріг, наприклад, 90%
  • Оперативна пам’ять заповнена, і своп активно використовується
  • Веб-сервер зазнає зовнішніх атак
  • У користувача було занадто багато недійсних входів, і обліковий запис вимкнено
  • Виконано конкретну роботу, яка впливає на ключові процеси
  • Зчитувач значка дверей стежить за тим, як відчинені певні двері

textbelt.com Безкоштовно для одного тексту на день

Даний відправник може надіслати лише одне безкоштовне SMS-повідомлення на день. Ось приклад першої та другої спроб за один день:

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

Примітка. Можливо, ви зможете скинути IP-адресу маршрутизатора для більш ніж одного тексту в день, але я ще цього не перевіряв.

Ви можете користуватися передплаченими необмеженими текстами. Доступно багато послуг шлюзу SMS. Ціноутворення вище за посилання постачальника коливається від 0,03 до 0,15 долара за текст. Це для довідок, а не схвалення чи рекомендації. Виконайте домашнє завдання та шукайте авторитетних постачальників платних послуг за найкращими цінами.


Створення сценарію Bash

Ви можете створити скрипт bash, smsщо містить:

#!/bin/bash
curl -X POST https://textbelt.com/text --data-urlencode phone='$1' --data-urlencode message='$2' -d key=textbelt
  • Надішліть SMS за допомогою sms 7801234567 "Hello World"
  • Дякую Фабі, що перевірили це в ЄС та підтвердили, що він працює там.

Надішліть електронний лист носію смартфона з текстовим повідомленням SMS

Для цього потрібно лише веб-браузер, як FireFox, Internet Explorer або Chrome. Не потрібно занурюватися в "нутрощі башти" або обмежуватися одним вільним текстом на день.

Багато операторів дозволяють надсилати текстове повідомлення SMS на смартфон, звертаючись до електронної пошти на адресу phone_number@mobile_provider_name.com.

Знайдіть номер телефону, щоб отримати адресу веб-сайту оператора

Щоб отримати адресу веб-сайту постачальника за допомогою номера телефону, перейдіть за посиланням: https://freecarrierlookup.com/ . Уявіть, що ми ввели номер телефону 7801234567:

Перевізник комісійних платежів.png

Нам повідомляють, що електронна адреса використовується 7801234567@pcs.rogers.com. Тепер надішліть електронну пошту на цю адресу, і ваш телефон прозвучить із повідомленням.

Звичайно, якщо у вас смартфон налаштований на звучання з повідомленням, коли приходить електронний лист, ви можете просто надіслати електронною поштою свій телефон в першу чергу!

Інтерфейс CLI для надсилання електронної адреси

У Ask Ubuntu є багато питань та відповідей щодо того, як надсилати електронну пошту за допомогою bash. Я використовую ssmtp(безпечний простий протокол перевезення пошти) для cronщоденних резервних копій: Конфігурація резервного копіювання Linux, сценарії та документи в Gmail

Хоча ця настройка призначена для одного користувача, ви можете створити файл із кількома користувачами, щоб текстові повідомлення надсилати:

Name         Email Address
Tiny Tim     5551234567@att.com
Mrs. Clause  5552223333@sprint.com
Bad Elf      5551114444@telus.net

Тоді у вашому баш-коді щось подібне :

ssmtp 5551234567@att.com < mail.txt

Де mail.txtвиглядає так:

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>

Існує багато способів надсилання електронної пошти з bash. Це лише один приклад. Важливим є те, що адреса електронної пошти містить номер смартфона, а потім веб-адресу постачальника смартфонів


16
Є також адреси електронної пошти, які можна надіслати на те, що телефонна компанія буде пересилати на ваш телефон у вигляді тексту.
Кевін

1
Skype може надіслати SMS або звичайний голосовий дзвінок (завдяки чому телефон буде звучати довше). Це коштує грошей, але не надто багато. Можливо, вони не стягуватимуть оплату за телефонний дзвінок, на це ви не відповідаєте (знайшовши телефон) ;-)
sudodus

2
Надсилання TEXT електронною поштою працює. Однак вам потрібно знати оператора, який використовує ваш одержувач текстових повідомлень. Наразі Ви можете визначити, що через freecarrierlookup.com Ви також отримаєте електронну адресу, яку Ви можете використовувати для надсилання SMS або MMS-повідомлення. тобто: 8771234567@txt.att.net ... після отримання електронної адреси для надсилання тексту, тоді використовуйте будь-яку методологію електронної пошти, яка вам подобається, від пошти командного рядка, до gmail, до thunderbird тощо, щоб відформатувати текстове повідомлення та надіслати його. .
TonyB

2
Я знаю, що це виходить за рамки цього питання та відповідей, але для надсилання сповіщень про повний диск / оперативну пам’ять або будь-які інші збої цілеспрямованим користувачам я б не покладався на послугу, яка надсилає SMS раз на день, але прикріплює модем із SIM-карткою. У Німеччині (Європі?) CEP CT63 досить популярний.
PerlDuck

1
"Більшість, якщо не всі перевізники" Це досить локалізована інформація. Тут (Нідерланди), схоже, це не працює.
Щогли

22

Ця відповідь не для командного рядка, оскільки я не можу знайти рішення для командного рядка для Google.

Якщо у вас телефон Android і ви не хочете використовувати командний рядок, ви можете перейти на веб -переглядач https://www.google.com/android/find у веб-браузері та зателефонувати звідти на телефон, незалежно від відключення звуку, вібрації чи підключення до гарнітури Bluetooth. Також на вашому телефоні не потрібне додаткове програмне забезпечення. Це також можна зробити стільки разів, скільки вам потрібно за день.


4

Телефонний дзвінок із браузера за допомогою Google Hangouts

Ви також можете знайти свій телефон, зателефонувавши на нього, навіть якщо у вас немає стаціонарної лінії.

Обов’язкова умова: обліковий запис Google

Примітка. Лише більшість дзвінків до США та Канади безкоштовні. Див. Https://www.google.com/voice/b/0/rates?p=hangout щодо тарифів.

  1. Перейдіть на сторінку Hangouts.google.com
  2. Натисніть кнопку "Телефонний дзвінок":
    скріншот кнопки
  3. Натисніть "Нова розмова":
    скріншот кнопки
  4. Введіть свій номер телефону:
    Скріншот поля введення номера
  5. Натисніть "Зателефонувати":
    Скріншот кнопки виклику

Я бачу $0.00поруч номер телефону для дзвінка. Чи можете ви детальніше пояснити вартість використання цієї послуги?
WinEunuuchs2Unix

Не працює в моїй країні без грошей на їх рахунок.
sudodus

1
@ WinEunuuchs2Unix Так вибачте! Я забув, що Google Hangouts платить за дзвінки за межами США та Канади. Я відповідно оновив свою відповідь.
Nonny Moose

@NonnyMoose Дякую за оновлення. Я вже схвалив вашу відповідь до мого коментаря.
WinEunuuchs2Unix

1

Так, як я це робив років тому, - це розважитися пітоном та вивчити мову.

Що я зробив:

  • Напишіть код python, який використовує модуль smtp
  • Перевірте це за допомогою Gmail
  • З'ясуйте адресу електронної пошти, яка відповідає моєму номеру телефону (подивився на адресу трьох великих операторів електронної пошти до текстових API (насправді вони просто домен електронної пошти, де користувач - це номер телефону))
  • створити інструмент командного рядка
  • тест з моїм номером телефону

І ВОЙЛА! текстові повідомлення з баш.

Пс, написаний із важкого для використання мобільного пристрою ... Якщо цьому привернути більше уваги, я міг би розібратися у пошуку старого коду


4
Я думаю, що python тут не обов'язковий, використовуйте утиліти Unix для надсилання повідомлень.
val

1
Я думаю, що це скоріше огляд відповіді і важливих кроків / команд, які необхідно виконати.
WinEunuuchs2Unix

1
@val, використовуючи mailзамість написання коду python із smtp-звуками, схоже, ви можете отримати простіше та швидше рішення. Просто зробіть простий скрипт bash shell, який буде менше рядків у четвер.
Тревор Бойд Сміт

1
Ця відповідь не має суті. "Як я можу написати текст через bash" - "Я це зробив, використовуючи python та gmail до свого власного телефону за допомогою smtp" ... це звучить як продуктивна чи задовільна відповідь для вас?
vol7ron

Ви помітили внизу "Пс, написаний із важкого мобільного пристрою". ||| Відтворити кроки не надто важко. Ви просто надсилаєте електронний лист із командного рядка. mailКоманда буде швидше простіше , ніж код Python можливо.
Тревор Бойд Сміт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.