8

Ниже находится статья за 2016 год. В этом 2018 году появилось более простое решение, доступное даже домохозяйке, и не требующее телефона как такового, подробнее в этой статье.

У нас в команде нередко платежи проходят с банковских карт: оплачиваем хостинг, всякие сопутствующие работу сервисы и пр. Но при оплате почти всегда приходится вводить код авторизации из смс. Всё бы ничего, но корпоративная карточка привязана к одному телефонному номеру, а оплачивать приходится не всега дому, у кого в руках телефон. Помню был случай, когда минут 20 было потрачено на оплату - то не приходила смс, то человек, у которого телефон, был в метро, то кончалось время на ввод кода, то ошибка при вводе - куча впустую убитого времени.

Как же можно решить эту проблему? В некотрых странах, например, в США, можно получить виртуальный мобильный номер (я брал у twilio) и через API сервиса принимать и посылать смски. К сожалению, мне не удалось привязать мобильный банк к такому номеру - смски приходят с короткого номера, а в США эти номера заняты кем-то другим или вовосе не используются. Арендовать в России виртуальный номер для приёма смс дороговато, дорога также и услуга смс-хостинга (когда ваша карта отдаётся в компанию, где подключается к их платформе). Посмотрел цены у трёх операторов: цена за подключение 10$ и абонентка 20$ в месяц, у другой конторы -  2000 в месяц, у третьей - подключение 3000р и 2000р в месяц абонентки. Нет, конечно, есть и бесплатные простые способы - публичные номера. Море ресурсов позволяет использовать один или несколько номеров для регистрации в соцсетях и т.п., все приходящие смски видно сразу тут же - на сайте. Регистрировать мобильный банк через такую систему мы не хотели.

Был выбран чуть более сложный путь - поставить на android телефон программу по пересылке смсок на наш сервер, где простенький php файл в одну  строку отправляет сообщение в telegram. Таким образом, телефон можно подключить к зарядке и забыть о нём, раз в 2-3 месяца отправяляя с него смс (это позже тоже можно будет автоматизировать) или совершая зовнок, чтобы оператор не заблокировал номер. Но обо всём по порядку. Всего будет 3 этапа

  1. Регистрация telegram бота
  2. Написание простенького php файла
  3. Установка и настройка на телефон смс гейта.
  1. Регистрация telegram бота

Для регистрации бона нужно найти пользователя BotFather в списке контактов

И написать ему /newbot , на что он спросит имя, придумать имя на латинице, потом он попросит придумать имя пользователя (будем считать это ник-неймом) с обязательной припиской _bot в конце. Вот весь диалог, красным я выделил самую его важную часть - id бота и token (будем считать его паролем).

Проверим, работает ли бот.  Для этого нажмём в последнем сообщении от BotFather на первую ссылку: telegram.me/smstotelegram_bot. Откроется окно чата с ботом, нужно нажать START

После этого нужно отправить боту любой текст. Это нужно для того, чтобы потом определить, кому бот будет отправлять сообщения. Для начала мы рассмотрим простой случай - отправку sms одному пользователю, потом отправку sms в групповой чат. на картинке ниже - скриншот после отправки "привета":

Теперь зайдём в браузер и увидим весь лог этого чата. Для этого сформируем строку:

https://api.telegram.org/bot152314208:AAAAAAAAAAAAAAAAAA/getUpdates

Где AAAAAAAAAAAAAAAAAA нужно заменить на token (пароль), а 152314208 на id вашего бота. Обратите внимание, приписка bot должна быть до id!

Отправьте получившуюся строку в адресную строку и нажмите ввод. Если в ответном сообщении есть только "{"ok":true,"result":[]}", снова напишите боту "Привет" и обновите страницу в браузере. Должен появитсья лог общения. Примерно такой:

Красным я выделил собственно надпись "привет" в формате json (не будем вдаваться в подробности, но \u043f это "п"). Зелёным выделен id моего аккаунта, т.е. того, под которым я обычно логинюсь. Отправим теперь от бота мне сообщение "и тебе привет". Для этого сформируем запрос:

https://api.telegram.org/bot152314208:AAAAAAAAAAAAAAAAAA/sendMessage?chat_id=70843541&text=и тебе привет

Где AAAAAAAAAAAAAAAAAA нужно заменить на token (пароль), а 152314208 на id вашего бота. 70843541 необходимо заменить на id, который обозначен зелёным - это id чата. Вот, что получится, если вставить сформированный запрос в адресную страку браузера

Это именно то, что нам и было нужно. Переходим ко второму этапу

2.Написание простенького php файла

Программа для андроид телефона, которую мы буем использовать, не умеет, к сожалению, посылать запросы по произвольному адресу (будет разъяснено ниже), поэтому нам нужен скрипт-посредник, который преобразует данные в нужный вид. Итак, достаточно любого php хостинга (у кого нет никакого, попробуйте бесплатный тариф у моего хостера Бегет https://beget.com/ru/free-hosting).

Создайте файл такого вида

<?php
file_get_contents("https://api.telegram.org/bot152314208:AAAAAAAAAAAAAAAAAA/sendMessage?chat_id=70843541&text=".(string)$_GET["phone"].":".$_GET["text"]);
?>

Тёмно-зелёным цветом отмечена строчка, полученная ранее.

(string)$_GET["phone"].":".$_GET["text"]) 

ознначает взять и преобразовать в строку номер телефона, добавить :  и текст сообщения.

Сохраним этот файл на хостинге, обзовём его test.php

3. Установка и настройка на телефон смс гейта.

В GooglePlay много разных sms гейтов, но воспользуемся вот этим  (upd2018: программа пропала из GooglePlay, но APK есть в архиве сайта apkmonk:

https://www.apkmonk.com/app/eu.apksoft.android.smsgateway/

Он работает, к сожалению, не со всеми телефонами, например, с моим текущим XIAOMI REDMI 3 PRO он не работает, а с LG L90 работает.

Итак, вот, как нужно настроить программу, зайдя после запуска в Settings:

Красным я отметил необязательный пункт, вернее нужно тестировать, я на всякий случай сразу отметил, т.к. мой телефон любит засыпать и отключать все каналы интернет-связи. Далее кликаем на HTTP Settings и прописываем адрес до своего test.php

После правки адреса жмём дважды "назад" и попадаем в главное меню программы, где нажимаем Start.

Вот и всё. Теперь любая пришедшая смска должна мгновенно отобразиться в чате с ботом телеграма. Вид смски будет телефон:текст.

В следующем посте посмотрим, как добавить бота в чат с другими людьми, чтобы смски могли видеть все участники группы.

По прилёту в Бангкок встал вопрос способа перемещения в дом, который мы заблаговременно забронировали на Airbnb. Я запустил Uber и заказал такси от аэропорта Suvarnabhumi Airport (BKK) до дома. Минут 30 я искал эту машину, созванивался с водителем (благо там же в аэропорту купил местную симку оператора DTAC). Безрезультатно искал. Оказалось, что я сглупил - UBERовские машины не имеют права заезжать на этот уровень. Плюнул (заплатив за омтену 35 бат) и заказал такси на стойке официального жёлтого такси.

Таксист попался не говорящий по английски вооще. Всю дорогу посмеивался над нами по-тайски. Плюс ещё взял 50 бат официальной комиссии, которая полагается тайским таксистам при поездке из аэропорта. Покрутился водитель немного вокруг нужного закутка Бангкока, тыкал пальцем в карту на моём телефоне, что-то приговаривал по-тайски.  В аэропорт дорога платная - на 2 участках надо заплатить 25+50= 75 бат. Итого, доставка из аэропорта составила 75 бат за дорогу, 50 бат официальная такса (даже на чеке прописана) и 400 бат собсно по счётчику, итого 525 бат.

Далее из Бангкока мы улетали в Чанг Май, но уже из аэропорта Don Muang (DMK). Вообще, что в Бангкоке 2 аэропорта было не очевидно. Мы смотрели рейсы на Авиасейлс и там был период, когда всё якобы летало из BKK, но на странице авиакомпаний было написано, что рейсы из DMK, а между ними 50 минут езды (а в пик так и про 2 часа пишут), так что хорошо, что взяли билеты с разницей в день, а то по недосмотру (которому способствовал Авиасейлс), могли и с разницей в 40 минут взять и потерять перелёт.

Так вот, в DMK было решено сразу ехать на UBER, предполагаемая стоимость  была 480 бат, по факту была 470. Всё было шикарно - большая машина, кондишн (котрого не было в официальном такси). Водитель-девушка спросила, хотим ли мы ехать по платному хайвею или нет - я согласился. Наличку платила она, а потом добавила этоу сумму в интерфейсе UBER - очень удобно, дорога была дольше, чем из BKK в город, но цена по факту - ниже, а уровень сервиса несравненно круче.

По прилёту в Chiang Mai Internatioan Airport (CNX) мы тоже взяли UBER, который за 150 бат привёз нас в нужное место. Место долго не могли найти - так плохо на AIRBNB был занесён адрес, водитель давал кругаля - но всё в итоге всё равно вышло вполне доступно по деньгам.

Вообще, можно ездить и на красных машинках и на трёхколёсных тук-туках, но мы с маленькой дочкой и по-тайски не говорим, а тайцы по-английски тоже не особо, поэтмоу UBER - наш выбор. Тем более, что по прилёту в Чанг Май UBER дал 10 поездок со скидкой 30бат - очень здорово было.

Но не все водители хороши. С одной тётенькой было сложно - она нервничала, а точку на карте поставил я условную - мол дальше покажу рукой. Так нет, пока я не поставил точку на карте она ехать отказывалась - даже закрыла рейс, со словами: "Вызывайте меня снова!", пришлось так и делать - но кол (1 из 5) я ей за это поставил.

Цена средней поездки по городу у нас с 53 бата, по курсу на декабрь 2016 это 95 рублей, меньше минимальной цены у Яндекс Такси в Москве.

Одна поездка нам стоила 13,6 бат, т.е. полная цена 43,6 и 30 скидка.

Цена поездок на UBER в Чанг Мае

Смешно было, водителем была тётушка лет под 50. Я поставил две точки - начало и конец поездки. Она прислала смс "перезвоните мне". Я перезвонил и долго объяснял, где я нахожусь и куда мне нужно. Оказалось, что она преподаватель тайского, но зимой заказов не густо, решила побомбить. Но в UBER не понимает и мы - её первый заказ. Когда приехали на место, она долго ждала подтверждения завершения рейса и ещё и сказала, что мы должны заплатить. На что я ей рассказал, что всё оплачено по карте и пр. Забавно.

1

Я сижу на балконе гестхауса, за моей спиной - небольшой балкон, напратив - стройка, слева - дорога. Свежей воздух в городе Чианг Май - редкость, во всяком случае, для меня. У дорог пыльно и пахнет выхлопными газами. Большая часть транспорта - мопеды, очистка газов у них вообще есть ли? 🙂 Хорошо, что в данным момент ушли соседи-американцы. Оба пожылые, оба курят. Молча сидят, уткнувшись в планшеты, и курят. Мне пришлось отсесть в другую часть балкона - за 15 метров, т.к. даже на расстоянии 5м сигаретный дым меня тревожит.

Темнеет в Тайланде ране, в 18ч по местному времени уже горят фонари и многие идут кушать. Готовят тут везде. Дух готовки около 18ч тоже начинает досаждать.  Мало того, что я веган и мясные ароматы мне противны, так ещё и просто начинает перехватывать в горле от мелких капель летающих масел. Нет, вы не подумайте, что я не получаю удовольствия от зимовки, нет. Но свежий воздух пока ещё ищется. 🙂

Загадочная Азия таит непривычное в обыденном. Например, горячая вода есть только в душе, горячей её делает проточный электрический водонагреватель, который помещён на стене над душем, либо вмонтирован в стену, хотя там может быть и комбинированный - накопительно-проточный. А на кухне и в умывальнике нет горячей воды - вообще один кран. Но это в нашем понятии "горячаяя" нужна, а здесь из крана течёт вода комнатной температуры, температура эта постоянна и для всех нужды комфортная. Разве что малыша подмывать прохладно - в душ носим.

А рядом с каждым унитазом - мини душ. Сначала мы думали, что он вместо ёршика, но потом я прочитал, что в азии "все попы моют" и "туалетная бумага может отсутствовать". Но это на самом деле должно быть удобно для любого применения - главное, что пол плиткой выстлан и в углу комнаты есть сливное отверстие.