API-функции доступны только на тарифах «Business» и «MaviBot AI».

API MaviBot

ЛЕГЕНДА:\ ! -Обязательные параметры

Как отправить callback

callback()

Вы можете отправить callback только ДРУГОМУ клиенту.

НЕЛЬЗЯ отправить callback САМОМУ СЕБЕ!

callback(client_id, callback_message)

Параметры:

! client_id - идентификатор клиента

! callback_message - текст callback-сообщения

Callback — это специальное системное сообщение, которое бот распознает как команду для запуска определенного действия. Это сообщение невидимо для пользователя и только логируется в профиле клиента для внутренней обработки.

Отправим callback клиенту с client_id=73704021

Далее устанавливаем ответ на этот callback в блоке с условием.

callback('73704021', 'callback TEST123')

callback(client_id, 'callback TEST123')

Как отправить callback в Telegram

tg_callback()

tg_callback(platform_id , callback_message,group_id, business_connection_id)

Параметры:

! platform_id - идентификатор клиента Telegram

! callback_message - текст callback-сообщения

group_id - идентификатор бота Telegram

tg_business - для работы с бизнес-клиентами передается значение «1».

Пример с обязательными параметрами:

Пример с необязательными параметрами:

tg_callback('73704021', 'callback TEST123')

tg_callback(platform_id, 'callback TEST123', None, 1)

Как добавить перенаправление на бота с тегом в ответ на кнопку callback?

tg_callback_url_open(callback_query_id, url)

Параметры: \ ! callback_query_id - этот id позволяет идентифицировать человека, нажавшего кнопку, и показать ему Alert-уведомление,\ ! url - URL, указывающий на бота и параметр (выглядит так: t.me/your_bot?start=XXXX, вместо your_bot - имя бота)

Как отправить сообщение клиенту

message() | platform_message() | whatsapp_message()

Чтобы сохранить текст с переносами строк в переменной, задайте значение следующим образом:

text = "Текст первой строки" + "\n" + "Текст второй строки" + "\n" +"Текст третьей строки"

message(client_id, text, message_id, timeout)

Параметры:\ ! client_id - идентификатор клиента\ ! text - текст сообщения
message_id - ID блока. Если оставить поле текста пустым (") и заполнить этот параметр, клиенту будет отправлен текст из указанного блока.

Примечание: Если вы передаете параметр message_id в функцию message, блок все равно будет полностью выполнен, а клиент, указанный в параметре client_id, будет перемещен в блок, переданный в message_id.


timeout - задержка сообщения или запланированное время отправки. Вы можете использовать параметр timeout для задержки отправки сообщения:
а) Задержка в секундах (до 3600 секунд). Если значение превышает 3600, сообщение будет отправлено через час. Если значение отрицательное, сообщение будет отправлено немедленно. Пример: timeout = 50

б) Конкретная дата и время в формате дд.мм.гггг чч:мм, пример: timeout = '03.04.2022 15:00'. Если указана прошедшая дата, сообщение будет отправлено немедленно.

platform_message(platform_id, text, client_type, message_id, timeout,group_id)

Параметры:\ ! platform_id - идентификатор клиента в мессенджере\ ! text - текст сообщения
client_type - тип мессенджера, необязательный параметр. Если он не указан, клиент будет искаться в том же мессенджере, из которого бот отправляет сообщение. Если указан, клиент будет найден в базе данных указанного мессенджера. Типы мессенджеров можно найти здесь.
message_id - ID блока. Если указан, клиент получит сообщение из указанного блока, а не значение из параметра text.
timeout - время отправки или задержка. Аналогично одноименному параметру функции message().
group_id - идентификатор бота

whatsapp_message(phone, text, message_id)

Параметры:\ ! phone- номер телефона клиента, на котором зарегистрирован Whatsapp\ ! text - текст сообщения
message_id - ID блока. Если поле текста оставить пустым ('') и установить этот параметр, клиент получит содержимое сообщения из указанного блока.

Бот Whatsapp должен быть подключен к проекту.

Простой пример отправки сообщения по client_id:

Различные варианты отправки сообщения по client_id:

Пример отправки сообщения через platform_message():

/*Отправка сообщения по client_id*/
message(73704021, 'Текст сообщения для клиента')
/*Отправка сообщения по client_id с задержкой 30 секунд*/
message(73704021, 'Привет! Спасибо, что написали..','',30)
/*Отправка сообщения из блока 3190 по client_id 03.04.2022 в 15:00*/
message(73704021, '',3190, '03.04.2022 15:00')

/*Отправка сообщения в Whatsapp*/
whatsapp_message('79999999999', 'Текст сообщения для клиента')

Получение client_id по значению platform_id

get_client_id_by_platform_id()

get_client_id_by_platform_id(client_type, platform_id , group)

После выполнения функция вернет client_id, если найден клиент, соответствующий указанным условиям; в противном случае вернет None.

! client_type - мессенджер. Значение client_type читайте в этой статье.

! platform_id - ID клиента в указанном мессенджере.

group - обязательный параметр, если подключено более одного бота мессенджера.

Если в проекте подключено несколько мессенджеров одного типа, поиск будет производиться по всем подключенным мессенджерам этого типа.

В этом случае мы рекомендуем передавать параметр group.

Функция для get-запросов: requests_get(url, answer_type, headers, params, auth, proxy)

! url - ссылка, по которой выполняется запрос

answer_type – необязательный параметр, определяющий, что должно быть возвращено из ответа сервера: ('status' – возвращает код статуса ответа; 'json' – возвращает json-тело ответа; 'text' – возвращает необработанный текст ответа; любое другое значение (включая значение по умолчанию) возвращает ответ в формате: '{"status": status_code, "data": data}')

headers - необязательный параметр для передачи заголовков запроса,

params - параметры get-запроса (также могут быть включены непосредственно в URL),

auth - необязательный параметр, полезный для аутентификации API. Если вы не хотите использовать какой-либо необязательный параметр, но вам нужен следующий, передайте здесь 0.

proxy - необязательный параметр; принимает одно значение: "de", которое направляет запрос через европейский IP-адрес.

Функции для post-запросов

requests_post(url, answer_type, headers, data, json_data, auth, proxy)

! url - ссылка, по которой выполняется запрос,

answer_type - необязательный параметр, определяющий, что должно быть возвращено из ответа сервера: ('status' – возвращает код статуса ответа; 'json' – возвращает json-тело ответа; 'text' – возвращает необработанный текст ответа; любое другое значение (включая значение по умолчанию) возвращает ответ в формате: '{"status": status_code, "data": data}')

headers - необязательный параметр для передачи заголовков запроса

data - необязательный параметр; представляет тело запроса, когда API не работает с json.

json_data - необязательный параметр; также представляет тело запроса. Следует использовать только один из этих параметров за раз.

Обратите внимание: определенные конфигурации заголовков могут блокировать отправку запроса с определенным типом тела.

auth - необязательный параметр, полезный для аутентификации API. Если вы не хотите использовать какой-либо необязательный параметр, но вам нужен следующий, передайте здесь 0

proxy - необязательный параметр; принимает одно значение: "de", которое направляет запрос через европейский IP-адрес.

Функции для put-запросов

requests_put(url, answer_type, headers, data, auth, proxy)

! url - ссылка, по которой выполняется запрос

answer_type - необязательный параметр, определяющий, что должно быть возвращено из ответа сервера: ('status' – возвращает код статуса ответа; 'json' – возвращает json-тело ответа; 'text' – возвращает необработанный текст ответа; любое другое значение (включая значение по умолчанию) возвращает ответ в формате: '{"status": status_code, "data": data}')

headers - необязательный параметр для передачи заголовков запроса

data - необязательный параметр; представляет тело запроса, когда API не работает с json.

auth - необязательный параметр, полезный для аутентификации API. Если вы не хотите использовать какой-либо необязательный параметр, но вам нужен следующий, передайте здесь 0

proxy - необязательный параметр; принимает одно значение: "de", которое направляет запрос через европейский IP-адрес.

data_is_json - необязательный параметр.
Если установлен, данные, переданные в data, будут отправлены в формате JSON.
Чтобы включить, передайте '1'.

Функции для patch-запросов

requests_patch(url, answer_type, headers, data, auth, proxy)

! url - ссылка, по которой выполняется запрос

answer_type - необязательный параметр, определяющий, что должно быть возвращено из ответа сервера: ('status' – возвращает код статуса ответа; 'json' – возвращает json-тело ответа; 'text' – возвращает необработанный текст ответа; любое другое значение (включая значение по умолчанию) возвращает ответ в формате: '{"status": status_code, "data": data}')

headers - необязательный параметр для передачи заголовков запроса

data - необязательный параметр; представляет тело запроса, когда API не работает с json.

auth - необязательный параметр, полезный для аутентификации API. Если вы не хотите использовать какой-либо необязательный параметр, но вам нужен следующий, передайте здесь 0

proxy - необязательный параметр; принимает одно значение: "de", которое направляет запрос через европейский IP-адрес.

Функции для delete-запросов

requests_delete(url, answer_type, headers, data, json_data, auth, proxy)

! url - ссылка, по которой выполняется запрос

answer_type - необязательный параметр, определяющий, что должно быть возвращено из ответа сервера: ('status' – возвращает код статуса ответа; 'json' – возвращает json-тело ответа; 'text' – возвращает необработанный текст ответа; любое другое значение (включая значение по умолчанию) возвращает ответ в формате: '{"status": status_code, "data": data}')

headers - необязательный параметр для передачи заголовков запроса

data - необязательный параметр; представляет тело запроса, когда API не работает с json.

json_data - необязательный параметр, также может использоваться как тело запроса. Однако следует использовать только один вариант за раз

auth - необязательный параметр, полезный для аутентификации API. Если вы не хотите использовать какой-либо необязательный параметр, но вам нужен следующий, передайте здесь 0

proxy - необязательный параметр; принимает одно значение: "de", которое направляет запрос через европейский IP-адрес.

Функция получения имени блока по его ID

get_block_name_by_id(block_id)

! block_id — идентификатор (id) блока