ShowMessagesQueue#
Метод предназначен для получения списка сообщений, находящихся в очереди на отправку. Сообщение на отправку хранится 24 часа в очереди и будет отправлено сразу же после авторизации телефона. Скорость отправки сообщений из очереди регулирует параметр Интервал отправки сообщений.
Запрос#
Для получения списка сообщений требуется выполнить запрос по адресу:
GET
{{apiUrl}}/waInstance{{idInstance}}/showMessagesQueue/{{apiTokenInstance}}
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Ответ#
Поля ответа#
Массив объектов с полями:
Поле | Тип | Описание |
---|---|---|
messageID | string | ID сообщения, если type = sendMessage /sendPoll /sendFileByUrl /sendLocation /sendContact /sendTextStatus /sendMediaStatus /sendVoiceStatus |
messagesIDs | array | Массив ID сообщений, если type = ForwardMessages |
type | string | Тип запроса: |
sendMessage - текстовое сообщение | ||
sendPoll - сообщение с опросом | ||
sendFileByUrl - сообщение с файлом (сообщения отправленные методом sendFileByUrl, sendFileByUpload) | ||
sendLocation - сообщение с геопозицией | ||
sendContact - сообщение с контактом | ||
sendLink - сообщение с ссылкой (Не используется) | ||
ForwardMessages - сообщения к пересылке | ||
sendVoiceStatus - голосовой статус | ||
sendMediaStatus - статус с изображением или видео | ||
sendTextStatus - текстовой статус | ||
body | object | Объект данных о сообщении в очереди |
Поля объекта body
:
Поле | Тип | Описание |
---|---|---|
chatId | string | Идентификатор чата в который сообщение будет отправлено |
message | string | Текст сообщения, если type = sendMessage /sendPoll /sendFileByUrl /sendLocation /sendContact /sendTextStatus |
messages | array | Массив пересылаемых сообщений, если type = ForwardMessages |
linkPreview | boolean | Параметр включает отображение превью и описание ссылки, если type = sendMessage /sendTextStatus |
quotedMessageId | string | Идентификатор цитируемого сообщения, если type = sendMessage /sendPoll /sendFileByUrl /sendLocation /sendContact / |
options | array | Массив данных о вариантах выбора , если type = sendPoll |
fileName | string | Имя отправляемого файла, если type = sendFileByUrl /sendMediaStatus /sendVoiceStatus |
caption | string | Описание под файлом, если type = sendFileByUrl /sendMediaStatus |
urlFile | string | Ссылка на отправляемый файл type = sendFileByUrl /sendMediaStatus /sendVoiceStatus |
archive | string | Поле устарело, если type = sendFileByUrl |
latitude | string | Широта локации, если type = sendLocation |
longitude | string | Долгота локации, если type = sendLocation |
nameLocation | string | Название локации, если type = sendLocation |
address | string | Адрес локации, если type = sendLocation |
contact | object | Объект данных о сообщении с контактом, если type = contactMessage |
backgroundColor | string | Цвет фона сообщения, если type = sendTextStatus /sendVoiceStatus |
font | string | Шрифт сообщения, если type = sendTextStatus |
participants | array<string> | Массив строк с идентификаторами контактов, которым будет доступен статус, если type = sendTextStatus /sendMediaStatus /sendVoiceStatus |
urlLink | string | URL отправляемой ссылки, если type = sendLink (Не используется) |
chatIdFrom | string | Идентификатор чата с которого пересылается сообщение |
Поля массива options
Параметр | Тип | Описание |
---|---|---|
optionName | string | Текст варианта выбора |
Поля объекта contact
:
Поле | Тип | Описание |
---|---|---|
phoneContact | string | Номер телефона контакта в международном формате (без +) 11 или 12 цифр |
firstName | string | Имя контакта |
lastName | string | Фамилия контакта |
middleName | string | Отчество контакта |
company | string | Название компании контакта |
Пример тела ответа#
[
{
"messageID": "BAE123456789",
"type": "sendMessage",
"body": {
"chatId": "11001234567@c.us",
"message": "I use Green-API to send this message to you!",
"linkPreview": true
}
},
{
"messageID": "BAE1234567123",
"type": "sendMessage",
"body": {
"chatId": "11001234567@c.us",
"message": "Hello",
"quotedMessageId": "BAE123456789",
"linkPreview": true
}
},
{
"messageID": "BAE5DE8CA912345",
"type": "sendPoll",
"body": {
"chatId": "11001234567@c.us",
"message": "Please choose the color:",
"options": [
{
"optionName": "green"
},
{
"optionName": "red"
}
]
}
},
{
"messageID": "BAE1234567789",
"type": "sendFileByUrl",
"body": {
"fileName": "test.jpg",
"chatId": "11001234567@c.us",
"quotedMessageId": "BAE1234567159",
"caption": "caption",
"archive": false,
"urlFile": "https://sw-media-out.storage.net/1101123456/5005fe15-23ee-43ef-8535-35e1dff8315c.jpg"
}
},
{
"messageID": "BAE1234561230",
"type": "sendLocation",
"body": {
"chatId": "11001234567@c.us",
"latitude": 44.9370129,
"longitude": 89.8728409,
"nameLocation": "I'm here, come",
"address": "613123, Perm"
}
},
{
"messageID": "BAE1234567456",
"type": "sendContact",
"body": {
"chatId": "11001234567@c.us",
"contact": {
"phoneContact": 79001234568,
"firstName": "Артем",
"lastName": "Евпаторийский",
"middleName": "Петрович",
"company": "Велосипед"
}
}
},
{
"messagesIDs": [
"BAE1234561256",
"BAE1234561278"
],
"type": "ForwardMessages",
"body": {
"chatId": "11001234567@g.us",
"chatIdFrom": "12036304684212345@g.us",
"messages": [
"BAE1234561296",
"BAE1234561205"
]
}
},
{
"messageID": "BAE583864C6D427F",
"type": "sendTextStatus",
"body": {
"message": "I use Green-API to send this Status!",
"backgroundColor": "#228B22",
"font": "SERIF",
"participants": [ //статус доступен только указанным контактам
"70000001234@c.us",
"70000001235@c.us"
],
"linkPreview": true
}
},
{
"messageID": "BAE514E5B2E4B22D",
"type": "sendVoiceStatus",
"body": {
"urlFile": "https://my.site.com/audio/music.mp3",
"fileName": "music.mp3",
"backgroundColor": "#228B22",
"participants": [] // статус доступен всем контактам
}
},
{
"messageID": "BAE5D81B7C3EED1C",
"type": "sendMediaStatus",
"body": {
"urlFile": "https://my.site.com/img/horse.png",
"fileName": "horse.png",
"caption": "Little horse",
"participants": [] // статус доступен всем контактам
}
}
]
Ошибки ShowMessagesQueue#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/showMessagesQueue/{{apiTokenInstance}}"
payload = {}
headers= {}
response = requests.request("GET", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/showMessagesQueue/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/showMessagesQueue/")
.append({{apiTokenInstance}});
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/showMessagesQueue/")
.append({{apiTokenInstance}});
var response = Unirest.get(requestUrl.toString())
.header("Content-Type", "application/json")
.asString();
System.out.println(response);
Sub ShowMessagesQueue()
Dim url As String
Dim http As Object
Dim response As String
' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
url = "{{apiUrl}}/waInstance{{idInstance}}/showMessagesQueue/{{apiTokenInstance}}"
Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "GET", url, False
http.Send
response = http.responseText
Debug.Print response
' Outputting the answer to the desired cell
' Range("A1").Value = response
Set http = Nothing
End Sub