Отправка сообщений
Для отправки текстовых сообщений используйте GET-запрос, где номер телефона в международном формате (79001234567, он может содержать пробелы, скобки, тире и др) и текст в кодировке UTF-8 (может включать ссылки, смайлы). Текст сообщения кодируйте функцией urlencode или ее аналогом. Для переноса текста на новую строку используйте в сообщении символы - %0A
.
При отправке по API нескольких сообщений, они выстраиваются в очередь отправки с интервалом от 3 до 6 сек между сообщениями. Для тестовых аккаунтов есть ограничение - не более 30 отправленных сообщений по API в день.
Запрос GET: https://wamm.chat/api2/msg_to/токен/?phone=номер-телефона&text=текст-сообщения
Необязательные GET-параметры:
delay=20
- интервал между сообщениями. Может принимать фиксированные значения: 20, 30, 60 секquote_msg_id=1хххххх
- ответ на сообщение, указывается его id
Ответ при успехе: JSON: {"err":0,"msg_id":1хххххх}
, где msg_id - номер сообщения
Ответ при ошибке: JSON: {"err":"phone fail"}
Варианты ошибок:
- token fail – ошибка в токене
- acc not authorized – подключение не авторизовано
- phone fail – ошибка в номере телефона
- no WhatsApp on the number – нет аккаунта с таким номером для WhatsApp
- no Account on the number – нет аккаунта с таким номером для других каналов (Telegram...)
- phone not checked for WhatsApp, please retry – не проверен номер на наличие WhatsApp
- phone not checked, please retry – не проверен номер на наличие для других каналов (Telegram...)
- text fail – пустой текст
- text fail, more 4500 – текст слишком большой, превышает 4500 символов
- quote_msg_id fail, not found - не найдено сообщение для ответа, если был указан quote_msg_id и сообщение не найдено
Пример функции для отправки сообщения через API на PHP
function sendMessage($token, $phone, $text) {
// Подготавливаем URL запроса
$url = "https://wamm.chat/api2/msg_to/$token/?phone=$phone&text=" . urlencode($text);
// Выполняем запрос
$response = file_get_contents($url);
// Обрабатываем ответ
if ($response !== false) {
// Преобразуем ответ в массив
$json_response = json_decode($response, true);
// Проверяем наличие ошибок
if (isset($json_response['err'])) {
if ($json_response['err'] == 0 && isset($json_response['msg_id'])) {
echo "Сообщение успешно отправлено, ID сообщения: " . $json_response['msg_id'];
} else {
echo "Ошибка: " . $json_response['err'];
}
} else {
echo "Не удалось обработать ответ от сервера";
}
} else {
echo "Не удалось выполнить запрос к серверу";
}
}
// Используем функцию для отправки сообщения
$token = "XXXXX";
$phone = "79183115511";
$text = "Тестовое сообщение";
sendMessage($token, $phone, $text);
Пример на Python
import requests
def send_message(token, phone, text):
# Подготавливаем URL запроса
url = f"https://wamm.chat/api2/msg_to/{token}/?phone={phone}&text={text}"
# Выполняем запрос
response = requests.get(url)
# Обрабатываем ответ
if response.status_code == 200:
json_response = response.json()
if 'err' in json_response:
if json_response['err'] == 0 and 'msg_id' in json_response:
print(f"Сообщение успешно отправлено, ID сообщения: {json_response['msg_id']}")
else:
print(f"Ошибка: {json_response['err']}")
else:
print("Не удалось обработать ответ от сервера")
else:
print("Не удалось выполнить запрос к серверу")
# Используем функцию для отправки сообщения
token = "XXXXX"
phone = "79183115511"
text = "Тестовое сообщение"
send_message(token, phone, text)