И снова этот 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 консоль, но это полный абзац. Если так, есть ли готовые решения для считывания текста с определенной области экрана и выполнения действий по триггеру?
Благодарю Вас за ценный ответ. Каким образом я могу провести первичную настройку Шашлыка (автозапуск, установка WhatsApp и прочее) через VNC используя xvfb?
Ну и бонусом если хотите хранить собранные данные с датчиков данные у себя а не доверять их дядям в облаке могу порекомендовать nextcloud (он запускается даже на raspberry pi): https://ownyourbits.com/nextcloudpi/