Получение сообщений
Этот метод позволяет получить до 100 последних исходящих и входящих текстовых сообщений вашего аккаунта. Функция полезна для синхронизации данных между WAMM.chat и вашими системами, а также для создания отчетов и аналитики по коммуникациям. Вы можете фильтровать сообщения по направлению (входящие/исходящие).
GET /api2/msg_get_last/{token}/?col={count}
Также есть механизм WebHook, который позволяет получать в вашу систему сообщения и их статусы онлайн.
Параметры запроса
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
token | string | Да | API-токен, полученный в настройках |
col | integer | Да | Количество сообщений для получения (от 1 до 100) |
from_me | integer | Нет | Фильтр по направлению: 1 - исходящие, 0 - входящие. Если не указан, возвращаются все сообщения |
Ответ при успехе
{
"err": 0,
"msg_data": [
{
"msg_id": "1234567",
"from_me": "1",
"phone": "79001234567",
"chat_name": "Иван Петров",
"tip_msg": "textMessage",
"msg_text": "Добрый день!",
"msg_link": null,
"date_ins": "2023-05-24 19:52:00",
"date_upd": "2023-05-24 19:52:22",
"state": "delivered"
},
{
"msg_id": "1234566",
"from_me": "0",
"phone": "79001234567",
"chat_name": "Иван Петров",
"tip_msg": "textMessage",
"msg_text": "Здравствуйте!",
"msg_link": null,
"date_ins": "2023-05-24 19:50:15",
"date_upd": "2023-05-24 19:50:15",
"state": "received"
}
]
}
Описание полей ответа
Поле | Описание |
---|---|
msg_id | Уникальный идентификатор сообщения |
from_me | Направление сообщения: 0 - входящее, 1 - исходящее |
phone | Номер телефона контакта |
chat_name | Имя контакта или название чата |
tip_msg | Тип сообщения: textMessage (текст), documentMessage (файл), imageMessage (изображение), audioMessage (голосовое/аудио), videoMessage (видео), location (местоположение), file_link (файл/изображение/голосовое) |
msg_text | Текст сообщения |
msg_link | Ссылка на файл (если применимо) |
date_ins | Дата и время отправки/получения |
date_upd | Дата и время последнего обновления статуса |
state | Статус сообщения (sending, delivered, viewed, received и другие) |
Возможные ошибки
Код ошибки | Описание |
---|---|
token fail | Ошибка в токене |
acc not authorized | Подключение не авторизовано |
col fail or more 100 | Ошибка в количестве или превышает 100 |
msgs not be | Не найдены сообщения |
Примеры использования
curl -X GET "https://wamm.chat/api2/msg_get_last/YOUR_TOKEN/?col=20"
function getLastMessages($token, $count, $fromMe = null) {
// Подготавливаем URL запроса
$url = "https://wamm.chat/api2/msg_get_last/$token/?col=$count";
// Добавляем параметр from_me, если он указан
if ($fromMe !== null) {
$url .= "&from_me=$fromMe";
}
// Выполняем запрос
$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_data'])) {
return $json_response['msg_data'];
} else {
echo "Ошибка: " . $json_response['err'];
return false;
}
} else {
echo "Не удалось обработать ответ от сервера";
return false;
}
} else {
echo "Не удалось выполнить запрос к серверу";
return false;
}
}
// Получение 20 последних сообщений
$token = "YOUR_TOKEN";
$messages = getLastMessages($token, 20);
// Или только входящие сообщения
$incomingMessages = getLastMessages($token, 20, 0);