@JuniorDev

И снова этот WhatsApp... Запустить любым способом или оптимальный вариант запуска бота для личного пользования?

Здравствуйте.
Есть у меня простая задача: Поднять аккаунт в WhatsApp для передачи по нему данных с датчиков метеостанции на ардуине.
Задача то простая, чего не скажешь о решении. Когда брался за это, думал что все будет намного проще.
Так как после бессонных ночей, с пол сотни статей на эту тему, чтения и разбора десятков комментариев, у меня уже не стоит задача просто сделать этого гр*банного бота, задача куда более благородная, создать бота чтобы нагнуть бюрократию этой конторы, за пренебрежительное и хамское отношение к сторонним Open Source разработчикам.
Задача стоит, значит ее нужно решить. Пока у меня есть несколько вариантов:
1. Установка приложения на виртуальную машину Android + парсинг WhatsApp Web и отдача в формате Json (подобным образом работают многие платные сервисы по созданию ботов на WA). Можно обойтись без "виртуалки", однако можно ли запускать графические приложения через консоль "в пустоте" без нужных библиотек open gl и прочих?
2. Реверсинг приложения. Идея неплохая, однако во-первых не думаю что у них нет шифрования сообщений (оно есть), во-вторых протокол xmpp, в-третьих каждый новый релиз, может похерить все мои труды.
3. Запуск приложения в контейнере без виртуальной машины на Linux (к примеру Ubuntu). Получение токена и работа через Web.
4. Ваши варианты...

В связи с этим, возникли следующие вопросы:
1. Ресурсы машины ограничены (1GB ОЗУ), в связи с чем возникает вопрос, можно ли обойтись без оболочек? Иными словами, нужно запустить оконное приложение "в пустоте" и пусть оно себе работает. Зачем? Таково требование WhatsApp.
2. Если ставить на "виртуалку" + патченый под свое API AutoResponder (приложение на Android для автоматизации WA) и все это будет крутится на сервере под Ubuntu 16.04, то где достать минимальный образ Android и "непрожорливую" виртуальную машину?
3. Есть вариант делать все через жо OCR + автокликер и автонабор текста через ADB консоль, но это полный абзац. Если так, есть ли готовые решения для считывания текста с определенной области экрана и выполнения действий по триггеру?
  • Вопрос задан
  • 2436 просмотров
Пригласить эксперта
Ответы на вопрос 2
gbg
@gbg
Любые ответы на любые вопросы
Хэло! Это Линус Торвальдс и я произношу "WhatsApp" как "Telegram"

Серьезно нафига заниматься колхозингом, когда есть специально предназначенное для этого решение великолепного качества.

Минимальный андроид для линукса называется Шашлык

Оболочка для его работы не нужна, нужен X - сервер, в качестве него может выступать xvfb.
Ответ написан
@float64
У меня хорошие новости для вас - не обязательно так страдать :)

В вашем случае можно попробовать обойтись связкой node red (для подключения к датчикам) + riot.im (для подключения к whatsapp через коннектор)

Node red ставится на arduino: https://nodered.org/docs/hardware/arduino
Для whatsapp есть готовый коннектор, не нужно извращений с просматриванием области экрана: https://github.com/tulir/mautrix-whatsapp

Ну и бонусом если хотите хранить собранные данные с датчиков данные у себя а не доверять их дядям в облаке могу порекомендовать nextcloud (он запускается даже на raspberry pi): https://ownyourbits.com/nextcloudpi/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы