Перейти к содержанию

Интервал отправки сообщений#

При отправке сообщений или файлов все данные помещаются в очередь на отправку. Все сообщения отправляются из очереди последовательно в порядке поступления в очередь FIFO. При этом устанавливается интервал между отправкой сообщений из очереди. Для изменения интервала отправки сообщений предназначен метод SetSettings и параметр delaySendMessagesMilliseconds.

Минимальный интервал отправки сообщений составляет 500 мсек.

Минимальный интервал отправки сообщений из очереди методами SendFileByUpload, SendFileByUrl составляет 5 секунд.

Посмотреть текущий интервал отправки можно методом GetSettings, параметр delaySendMessagesMilliseconds.

Изменение интервала отправки сообщений#

Для изменения интервала отправки сообщений требуется выполнить запрос по адресу:

POST https://api.green-api.com/waInstance{{idInstance}}/SetSettings/{{apiTokenInstance}}

В теле запроса требуется указать только один параметр delaySendMessagesMilliseconds.

Пример тела запроса для установки интервала отправки 5 сек#

{
    "delaySendMessagesMilliseconds": 5000
}

Примеры кода#

import requests

url = "https://api.green-api.com/waInstance{{idInstance}}/SetSettings/{{apiTokenInstance}}"

payload = "{\r\n\t\"delaySendMessagesMilliseconds\": 5000\r\n}\r\n"
headers = {
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
curl --location 'https://api.green-api.com/waInstance{{idInstance}}/setSettings/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data '{
"delaySendMessagesMilliseconds": 5000
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append("https://api.greenapi.com")
    .append("/waInstance").append({{idInstance}})
    .append("/setSettings/")
    .append({{apiTokenInstance}});

var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);

var jsonBody = "{\"delaySendMessagesMilliseconds\": 15000}";

var requestEntity = new HttpEntity<>(jsonBody, headers);

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.POST, requestEntity, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append("https://api.greenapi.com")
    .append("/waInstance").append({{idInstance}})
    .append("/setSettings/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .header("Content-Type", "application/json")
    .body("{\"delaySendMessagesMilliseconds\": 15000}")
    .asString();

System.out.println(response);