Используйте WhatsApp через API

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


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

  • В качестве предварительного условия вам понадобится действующий номер мобильного телефона в Германии, который подключен как минимум к тарифному плану WhatsApp.
  • На отправку сообщений действуют строгие ограничения: отправка сторонним контактам возможна только с использованием так называемых шаблонов сообщений , которые необходимо отправлять и утверждать вручную. Если контакт ответит, вы можете отправлять ему любые текстовые сообщения через API в течение 24 часов.
  • Вам необходимо явное согласие для каждого контакта, которое вы должны реализовать самостоятельно.
  • Плата от стороннего поставщика взимается за каждое отправленное сообщение.

Фактический вызов API в примере MessageBird (с помощью _curl из stringhelper ) оказывается относительно простым.:

e228243e9ffff5f83e71190ee38b10aa

Если у вас есть собственный сервер и мобильный телефон (который не используется активно), есть еще один способ добиться желаемого и обойти указанные выше ограничения. Здесь вы можете воспользоваться функциями WhatsApp Web . Для этой цели подходят две следующие библиотеки.

Оболочка WebWhatsapp существует довольно давно и также основана на Python и Selenium. Отправка сообщений работает следующим образом, например:

452590a6d20c1fa9276ff14ed28c4ce5

С другой стороны, гораздо более тонкий Baileys основан на TypeScript и WebSockets. Сообщения отправляются с использованием следующего кода в качестве примера:

e0187d6da1f800b1597420345d13b432

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

Назад