Published using Google Docs
Документация Remote Bot for Telegram
Updated automatically every 5 minutes

Remote bot for Telegram

https://remote-bot.com

https://t.me/rembofort

http://4pda.ru/forum/index.php?showtopic=771627

Remote bot for Telegram позволяет осуществлять удаленное взаимодействие с устройством с помощью Telegram бота, который запускается на устройстве.

Remote Bot for Telegram - первое и уникальное в своем роде приложение, которое позволяет отправлять и получать СМС через Telegram, выполнять команды Tasker через Telegram, а также управлять своим устройством удаленно.

Remote Bot for Telegram в перспективе имеет безграничные возможности по контролю над вашим устройством через Telegram.

Бот запускается только на вашем устройстве, данные и СМС передаются только на сервера Telegram и нигде больше не хранятся.

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

Для работы программы необходимы Google сервисы

Бот создается автоматически, вам нужно только авторизоваться в Telegram, указав свой номер телефона и код, полученный через СМС или Telegram.

Создание бота

Автоматическое создание бота

Создание бота вручную

Принятие соглашения

Запуск/Остановка бота

Привязка аккаунтов

Разрешения

Команды бота

Работа с Tasker/AutomateIt

Как отправлять сообщения в Telegram из Tasker и подобных приложений

Таймеры

Добавление таймера

Скрипты

Алиасы (псевдонимы) команд

Чтение уведомлений

Настраиваемая клавиатура

Архивация/восстановление настроек

Связь с автором

Создание бота

Для начала необходимо зарегистрировать бота и получить уникальный идентификационный ключ через родительского бота @Botfather

Автоматическое создание бота

Для упрощения процесса регистрации бота в приложении был добавлен автоматический режим создания бота.

Вам нужно только ввести свой номер телефона в международном формате (начинающийся с +), затем код, который приходит по СМС либо в клиент Telegram, после вы можете придумать username и название бота либо оставить все как есть.

После проделанных действий все взаимодействие с @Botfather приложение берет на себя, вам остается лишь подождать пока закончится процесс создания бота. После создания бота вам нужно принять соглашение об отказе от ответственности, запустить бота и найти контакт бота в клиенте Telegram

Создание бота вручную

В случае, если вы хотите создать бота в ручную, вам будет необходимо проделать следующие действия:

1. Откройте Telegram


2. Найдите в поиске "botfather", выберите его и нажмите Start


3. Отправьте /newbot чтобы создать нового бота


4. Придумайте и введите имя для бота


5. Придумайте и введите имя пользователя для бота (username). Оно должно быть уникальным и заканчиваться на `bot`. Например TetrisBot или tetris_bot.


6. Скопируйте Token, он потребуется при настройке бота в приложении


7. Далее перейдите в приложение и вставьте Token, затем укажите Ваш username. Для защиты ваших данных необходимо привязать бота к вашему Telegram аккаунту, указав username вашего аккаунта в Telegram. Его можно установить или посмотреть в настройках Telegram.


8. Перейдите в Telegram и найдите вашего созданного бота в поиске по username бота и нажмите Start

Принятие соглашения

После создания бота вам необходимо внимательно прочитать соглашение и принять его либо удалить приложение, если вы с ним не согласны.

Запуск/Остановка бота

Для запуска/остановки бота необходимо нажать на круглую кнопку в правом верхнем углу экрана. Также для запуска/остановки бота вы можете использовать виджет Remote Bot for Telegram, разместив его в своем лаунчере.

Привязка аккаунтов

Для того, чтобы ограничить доступ с посторонних аккаунтов Telegram ваш бот после создания привязывается к Telegram аккаунту через который он был создан в автоматическом режиме, либо к тому аккаунту, username которого вы указали в ручном режиме создания.

Вы можете привязать один или несколько Telegram аккаунтов к вашему боту.

Не забудьте нажать “Сохранить” после изменения привязанных аккаунтов.

Разрешения

Вы можете настраивать разрешения на выполнение команд и получение уведомлений для выбранных привязанных аккаунтов.

Если вы запретили команду для выбранного аккаунта, то она также не будет показываться в списке команд и Telegram клавиатуре для этого аккаунта.

Команды бота

/start - начать работу с ботом


/help - список команд бота



/sms - чтение/отправка СМС
/sms Отправить - отправить СМС
/sms Отправить +7123456 - отправить СМС на номер +7123456
/sms Отправить Николай - отправить СМС контакту с именем 'Николай'



/call - телефонный звонок по заданному номеру



/callshistory - показать историю звонков



/contacts - показать контакты

/ring_mode - режим звонка
/ring_mode [mode] - изменение режима звонка, [mode] может быть: Нормальный, Без звука или Вибрация



/battery - информация о батарее



/system_info - системная информация



/bluetooth - состояние Bluetooth
/bluetooth [state] - обновить состояние Bluetooth, [state] может быть: Вкл. или Выкл.


/wifi - управление состоянием wifi (Вкл./Выкл.)



/sync - управление синхронизацией (Вкл./Выкл.)

/notify - отправление сообщения в панель уведомления



/tts - текст в речь


/device_search - поиск устройства путем подачи громкого сигнала



/location - местоположение устройства на карте



/gallery - показать фото из галереи



/screenshot - сделать снимок экрана

/photo - сделать фото



/rec - диктофон



/videorec - запись видео



/playback - воспроизведение медиафайлов и голоса



/detectmotion - детектор движения



/flashlight - Вкл. / Выкл. фонарик


/script - выполнить скрипт, пример: rc.startApp("com.example.packagename")



/tasker - выполнение задач Tasker, /tasker "taskname" - выполнить заданную задачу Tasker

/download - загрузить файлы на устройство

/install - установить приложение

/apps - открыть избранные приложения, /apps "app name" - открыть заданное избранное приложение

/taskmanager - диспетчер задач

/player - управление стандартным плеером

/volume - управление громкостью

/clipboard - чтение или запись в буфер обмена

/reboot - перезагрузить устройство (необходим Root)

/fastboot - перезагрузить в Fastboot

/recovery - перезагрузить в Recovery Mode

/shutdown - отключить устройство (необходим Root)

/shell - выполнение shell команд, /shell "cd storage; mkdir example" - запуск shell команды в одной строке

/restore_backup - Восстановление/Архивация настроек бота (клавиатура, алиасы и т.д.)

Работа с Tasker/AutomateIt

Про возможности Tasker можно прочитать по ссылке: Tasker

В Tasker есть ограничение на выполнение задач Tasker посторонней программой в случае если задача может быть потенциально опасна (отправка СМС, HTTP запросы и т.д.), но нет никаких ограничений на отправку сообщений из Tasker в Telegram.

В составе приложения Remote Bot есть плагин для Tasker, который облегчает отправку сообщений и позволяет управлять состоянием бота. В плагине имеется поддержка переменных Tasker.

Сообщения из Tasker в Telegram отправляются используя команду Send Intent. Поддерживаются 7 типов сообщений (Message, Location, Photo, Document, Voice, Video, Audio)

Как отправлять сообщения в Telegram из Tasker и подобных приложений

Создаем задачу:

1) Открываем Tasker, заходим во вкладку Tasks, затем нажимаем на "+"

2) Придумываем имя задаче и нажимаем на галочку

3) Добавим новое действие нажатием на "+"

4) В открывшимся диалоге выбираем System (Система)->Send Intent

Далее необходимо заполнить следующие поля:

Action(Действие): com.alexandershtanko.androidtelegrambot.ACTION_TASKER

Package: com.alexandershtanko.androidtelegrambot

Class: com.alexandershtanko.androidtelegrambot.receivers.TaskerMessageReceiver

Target: Broadcast Receiver

В зависимости от типа сообщения заполняем Extra

Extra: bot_state:true/false - управление состоянием бота (вкл./откл.)

Message

Extra: tasker_message_type:message

Extra: text:Здесь должен быть какой нибудь текст

Location

Extra: tasker_message_type:location

Extra: cords:0.123,0.123 - (широта, долгота)

Photo

Extra: tasker_message_type:photo

Extra: path:/storage/emulated/0/photo.jpg

Document

Extra: tasker_message_type:document

Extra: path:/storage/emulated/0/document.pdf

Video

Extra: tasker_message_type:video

Extra: path:/storage/emulated/0/file.avi

Audio

Extra: tasker_message_type:audio

Extra: path:/storage/emulated/0/music.mp3

Voice

Extra: tasker_message_type:voice

Extra: path:/storage/emulated/0/voice.wav

Сообщение отправляется всем привязанным пользователям.

Чтобы отправить сообщение из таскере конкретному пользователю, достаточно добавить Extra: chat_id либо user_id либо username.

Последовательность действий для AutomateIt

1. Открываете приложение

2. Заходите в мои правила

3. Нажимаете на "+"

4. Выбираете триггер Местоположение

5. Выбираете нужно место и радиус близости -> Далее

6. Выбираете действие: "Запустить Действие типа Intent"

7. Затем выбираете "Broadcast" и заходите в Продвинутые настройки

8. Далее необходимо заполнить:

Action Name: com.alexandershtanko.androidtelegrambot.ACTION_TASKER

Package name: com.alexandershtanko.androidtelegrambot

Component name: com.alexandershtanko.androidtelegrambot.receivers.TaskerMessageReceiver

Далее нажимаете "Добавить дополнительные"

Extra name: tasker_message_type

Value: message

Еще раз "Добавить дополнительные"

Extra name: text

Value: "Текст сообщения"

9. Затем нажимаете Далее, вводите имя правила и нажимаете на Дискетку в верхнем правом углу.

Таймеры

Для того, чтобы запланировать выполнение команд на определенное время с определенным интервалом повторения, вы можете использовать таймеры.

Добавление таймера

Чтобы добавить таймер, нажмите на соответствующую кнопку на экране таймеров.

Далее необходимо заполнить все поля, выбрать время и период повторения, затем нажать “Сохранить”. После сохранения таймер активируется. Вы можете остановить/запустить таймер нажав на соответствующий таймер в списке.

Скрипты

Remote bot поддерживает удаленное выполнение скриптов (программ), написанных на JavaScript.

Скрипты могут пригодиться, если вам нужно будет открыть какое-либо приложение и произвести взаимодействия с интерфейсом программы удаленно.

Для выполнения скриптов необходим Root на вашем устройстве.

Для выполнения удаленных команд используется объект “rc” с типом RemoteControl. Подробнее о доступных функциях объекта “rc” по ссылке: https://remote-bot.com/script/

По умолчанию запуск скриптов запрещен и его нужно разрешить в настройках приложения.


Скрипты можно запускать и с помощью одной команды, например: /script "rc.click(500, 230);"

Для того, чтобы отключить отправку результата выполнения скрипта, нужно добавить 2 параметр silent в команду /script, пример: /script 'rc.click(100,100);' silent

Примеры скриптов:


1. Вам необходимо запустить приложение, ввести пароль, затем нажать войти.
Скрипт для этих действий будет выглядеть следующим образом:
rc.startApp('com.example.package');
if (rc.isPackageInstalled('com.example.package')) {

       rc.
click(500, 230);
       rc.
sleep(500);
       rc.
shell('input text 123');
       rc.
sleep(500);
       
if (rc.isKeyboardVisible()) rc.pressBack();
       rc.
sleep(500);
       rc.
click(150, 310);
       rc.
sleep(500);
       rc.
click(500, 230);
}




2. Необходимо проверить, включен ли экран, установлено и запущено ли приложение


var isScreenOn=rc.isScreenOn();
var isPackageInstalled
=rc.isPackageInstalled('com.example.package');
var isAppRunning
= rc.isAppRunning('com.example.package');

var response
= {'isScreenOn':isScreenOn,'isPackageInstalled':isPackageInstalled,'isAppRunning':isAppRunning};
JSON.
stringify(response);


Алиасы (псевдонимы) команд

Вы можете устанавливать алиасы (псевдонимы) для команд.

Для того чтобы добавить алиасы, вам нужно зайти в Настройки, нажать на кнопку Алиасы -> Добавить.

Когда алиасы могут пригодиться:

  1.  Когда вы хотите установить свои обозначения команд для их быстрого вызова
  2. Если вы хотите запустить команду с параметрами одной короткой командой, пример /script "rc.click(500, 230);" или /shell “rm -rf ./cache”

Вы также можете использовать алиасы в клавиатуре и таймерах.

Чтение уведомлений

Remote bot умеет передавать уведомления из статус бара в Telegram.

Для того, чтобы получать уведомления вы должны дать доступ приложению к чтению уведомлений.

Для этого вам нужно нажать “Разрешить чтение уведомлений” в приложении в разделе “Настройки”. В открывшихся настройках нужно поставить галочку напротив Remote Bot for Telegram

Настраиваемая клавиатура

Если вы пользуетесь не всеми функциями приложения, а также хотите упростить доступ к часто используемым командам, вы можете отредактировать клавиатуру по вашему вкусу.

В режиме редактирования клавиатуры вы можете добавлять команды и алиасы, объединять команды в категории.

Архивация/восстановление настроек

Вы можете сохранить/восстановить настройки Remote bot с помощью команды /backup_restore или через интерфейс приложения.

Настройки сохраняются в json файл, который вы можете отредактировать в текстовом редакторе и затем восстановить конфигурацию удаленно.

В полученном файле хранятся настройки клавиатуры, алиасы, избранные приложения, таймеры и т.д.

Для удобства редактирования json файла вы можете воспользоваться сайтом http://jsoneditoronline.org

Связь с автором

Если у вас будут возникать вопросы, а также если вы хотите предложить новые идеи, пишите мне на почту: alexjcomp@gmail.com или в официальную группу приложения: https://t.me/rembofort