Отправка сообщений
Для отправки сообщения инициируется POST-запрос на адрес:
Способ отправки
Тип сообщения "Ack" приходит на вебхук всегда, независимо от того синхронно или асинхронно было отправлено сообщение.
Тип отправки зависит от значения поля «async», если оно true, то передача происходит асинхронно, в противном случае — синхронно.
Объект отправки сообщения
В теле запроса отправки сообщения 4 основных поля:
Recipient — объект получателя сообщения
Получатель сообщения в Whatsapp может задаваться несколькими способами
1. по идентификатору Whatsapp. Система идентификаторов Whatsapp несложная, если это контакт, то идентификатор равен номеру контакта, к которому прибавляется @c.us, например 79991112233@c.us, если же мы имеем дело с группой, то идентификатор состоит из внутреннего номера группы с @g.us на конце, т.е. AA11223344@g.us
В случае задания получателя по идентификатору, объект получателя будет иметь следующий вид:
2. По номеру и типу. Тип может иметь значение contact или group. Значение по умолчанию — contact.
Message — объект сообщения
Объект сообщения состоит из следующих полей:
За тип сообщения отвечает поле type объекта сообщения. Сообщения могут быть следующих типов:
В зависимости от типа изменяются обязательные поля в объекте. По умолчанию, поле type принимает значение «text». Поле quote — является необязательным и может быть указано в любом типе сообщения. В данном поле указывается длинный идентификатор сообщения, который приходит в объекте ответа на отправку в синхронном варианте или на вебхук в асинхронном варианте отправки или как входящее сообщение. При его указании, отправленное сообщение будет помечено как ответ на сообщение, идентификатор которого указан
Text — текстовое сообщение
Message с типом «text» является обычным текстовым сообщением. Поле type не указано или равно «text». Поле body является обязательным.
Изображение, стикер, документ или голосовое сообщение
При указании одного из типов медиа в сообщении, поле body становится не обязательным, а поле media — обязательным. В поле body также можно указать текст, который появится в сообщении с медиа-файлом.
Как отправить смс в WhatsApp?
Можно ли как-то реализовать отправку данных из формы через PHP на номер тел. в WhatsApp без разных посредников/агрегаторов?
Для Телеграма (без бота) такую штуку нашел, хочется верить, что и для WhatsApp как-то можно.
- Вопрос задан более трёх лет назад
- 19173 просмотра
- Вконтакте
К сожалению, WhatsApp ведёт очень жёсткую политику по отношению к разработчикам, у него отсутствует публичный API и возможность отправки сообщений на номера, которые не находятся в ваших контактах. Однако, в сети существуют сервисы, которые предоставляют такой API, однако он не официальный, его использование несет в себе риск бана вашего аккаунта без возможности восстановления. К тому-же такая услуга не бесплатна ( на одном из сервисов, стоит 900р/мес. за 1 аккаунт ) и как правило, с лимитом на количество отправленных сообщений.
Существует так называемое WhatsApp Business API которое доступно лишь «средним и крупным компаниям», заявка отправляется через Facebook, где её проверяют и выносят свой вердикт, по поводу допуска. Простым смертным и ИП-шникам оно не доступно. https://www.whatsapp.com/business/api
Как отметил пользователь storm57, на GitHub можно найти несколько открытых проектов, которые предоставляют API для WhatsApp в виде библиотек и компонентов для различных языков программирования.
Однако, использование такого способа, может сильно повысить риск бана аккаунта, даже по сравнению с платными сервисами, которые работают через WhatsApp WEB.
Как легко отправить сообщение через WhatsApp API с помощью PHP
В этом уроке мы создадим страницу для отправки сообщения через API WhatsApp с использованием PHP.
Установка
Просто скачайте ultramsg.class.php или используйте Composer:
Аутентификация
Зарегистрируйтесь и перейдите на панель инструментов своего экземпляра и скопируйте свой идентификатор экземпляра и токен, которые будут использоваться для аутентификации.
Пример использования WhatsApp API с использованием PHP:
Отправьте свое первое сообщение WhatsApp
- $to: номер WhatsApp получателя в международном формате, например, +14155552671, или идентификатор чата для контакта или группы, например , [email protected] или [email protected]
- $body : текст сообщения.
Примечание. Здесь вы можете увидеть, как отправлять сообщения WhatsApp группе.
Отправить изображение
Отправить документ
Отправить аудио
Отправить голос
Вы можете Отправить аудиозапись в формате ppt на номер телефона или в группу, Но WhatsApp чувствителен к этому расширению, необходимо, чтобы аудиозапись была в формате OGG, а кодеки должны быть opus, Для получения дополнительной информации, вы можете ознакомиться с этой статьей.
Отправить видео
Отправить ссылку
Отправить контакт
Отправить местоположение
Отправить открытку
Вы можете увидеть предыдущие шаги в этом видео , а также можете посмотреть полную документацию WhatsApp API .
Отправка сообщения с сайта в WhatsApp
Привет! Как-то недавно меня спросили, как отправлять сообщения не на почту, не в телеграм, а прямо в чат whatsapp. Сам таким не занимался, но, поискав и подумав — нашел решение. Поехали!
Лично на мой взгляд решение не идеальное. Но другого я не вижу, если вы конечно не используете какие-то плагины на WordPress, и то сомнительно)
Собственно, вся суть находится на этой странице. Нужно по сути отправлять запрос по ссылке, передавая номер телефона (обязательно уже зарегистрированного в WhatsApp и текст письма). Конечно, в плане больших данных придется довольствоваться только строчным представлением, типа: Телефон: 123456, Имя: Алексей, email: alexey@gmail.com. По крайней мере пока я не разобрался с переносами).
Итак, нам нужно сперва создать html-разметку:
Пишем функцию sendToWhatsapp , передавая два параметра — текст и телефон. Внутри обрабатываем текст с помощью encodeURIComponent(), чтобы убрать пробелы и верно закодировать строку для урла. Далее формируем сам урл, с помощью шаблонных строк вставляем наши текст и телефон. После этого через window.open() переходим по этой ссылке в новой вкладке.
Ниже же получаем при клике на кнопку телефон и текст и вызываем написанную функцию sendToWhatsapp .
Собственно, этот код перебросит нас сразу в чат с собеседником, останется только нажать кнопку "отправить". Ну и нужно понимать, что у отправляющего тоже должна быть настроена web-версия. Как я и говорил, способ не идеальный, но самый простой.