Работа с опросами

Труконф02.10.2026Около 6 мин

Работа с опросами

На каждый уведомление (запрос) сервера клиент должен ответить так:

{
    "type": 2,
    "id": 123456
}

После отправки ответа сообщение от пользователя будет считаться прочитанным ботом и будет отмечено соответствующей галочкой в клиентском приложении TrueConf.

Запросы клиента

Отправить опрос

Позволяет отправить уже созданный ранее опрос в чат. Опрос должен быть предварительно создан одним из следующих способов:

  • через личный кабинет TrueConf Server;
  • в клиентском приложении Труконф;
  • с помощью API v4 доступного TrueConf Server версии 5.5.3.

Запрос:

ПараметрТипОбяз.Описание
typeuint32ДаТип сообщения (по умолчанию 1). Соответствует MESSAGE_TYPE.REQUEST
iduint32ДаУникальный идентификатор запроса. Инкрементируемое значение, назначаемое отправляющей стороной, обязательное в каждом запросе для последующего связывания с ответом. Подробнее читайте тут.
methodstringДаКоманда sendSurvey
chatIdstringДаИдентификатор чата для отправки опроса
replyMessageIdstringНетИдентификатор сообщения, если это ответ
urlstringДаСтроковый URL опросов на сервере, имеет вид https://server.name/webtools/survey
appVersionnumberДаВерсия опросов на сервере
pathstringДаИдентификатор кампании опроса
titlestringДаНазвание опроса
descriptionstringДаТип опроса — анонимный или не анонимный. Всегда содержит строку \{\{Anonymous survey\}\} либо \{\{Survey\}\}
buttonTextstringДаТекст, отображаемый на кнопке перехода к опросу. Всегда содержит строку \{\{Go to survey\}\}
secretstringДаСлучайная строка из тела сообщения. Должен быть сформирован как SHA1-хэш от конкатенации названия опроса и произвольной строки.
altstringДаАльтернативная ссылка для перехода к опросу. Имеет вид: 📊 <a href="<url>?id=<path>"><title></a>, где вместо <url>, <path> и <title> подставляются соответствующие значения.

Ответ:

{
    "type": 2,
    "id": 5,
    "payload": {
        "timestamp": 1750168761373,
        "messageId": "f8865b5c-877c-4a55-b175-a667ebf5f007",
        "chatId": "5abba630dd1089090ba41c69c7aa34e4ba277a43"
    }
}
ПараметрТипОбяз.Описание
typeuint32ДаТип сообщения (по умолчанию 2). Соответствует MESSAGE_TYPE.RESPONSE
iduint32ДаИдентификатор, совпадающий с числом, отправленным в исходном запросе, используемый для связывания запроса и ответа
chatIdstringДаИдентификатор чата, в который отправилось сообщение
messageIdstringДаИдентификатор сообщения. Можно использовать данный идентификатор в дальнейшем для изменения, пересылки или удаления сообщения
timestampuint64ДаВременная метка отправки сообщения в формате UNIX timestamp с точностью до миллисекунд

В случае возникновения ошибки возвращается сообщение, содержащее параметр errorCode. Список возможных значений доступен в соответствующем разделе документации.

Изменить опрос

Запрос:

ПараметрТипОбяз.Описание
typeuint32ДаТип сообщения (по умолчанию 1). Соответствует MESSAGE_TYPE.REQUEST
iduint32ДаУникальный идентификатор запроса. Инкрементируемое значение, назначаемое отправляющей стороной, обязательное в каждом запросе для последующего связывания с ответом. Подробнее читайте тут
methodstringДаКоманда editSurvey
messageIdstringДаИдентификатор сообщения с опросом
pathstringДаИдентификатор кампании опроса
titlestringДаНазвание опроса
descriptionstringДаТип опроса — анонимный или не анонимный. Всегда содержит строку \{\{Anonymous survey\}\} либо \{\{Survey\}\}
buttonTextstringДаТекст, который будет отображен на кнопке перехода к опросу. Всегда содержит строку \{\{Go to survey\}\}
altstringДаАльтернативная ссылка для перехода к опросу. Имеет вид: 📊 <a href="<url>?id=<path>"><title></a>, где вместо <url>, <path> и <title> подставляются соответствующие значения.

Ответ:

{
    "type": 2,
    "id": 1,
    "payload": {
        "messageId": "f8865b5c-877c-4a55-b175-a667ebf5f007",
        "timestamp": 1735314170572
    }
}
ПараметрТипОбяз.Описание
typeuint32ДаТип сообщения (по умолчанию 2). Соответствует MESSAGE_TYPE.RESPONSE
iduint32ДаИдентификатор, совпадающий с числом, отправленным в исходном запросе, используемый для связывания запроса и ответа
messageIdstringДаИдентификатор отредактированного сообщения
timestampuint64ДаВременная метка редактирования сообщения в формате UNIX timestamp с точностью до миллисекунд

В случае возникновения ошибки возвращается сообщение, содержащее параметр errorCode. Список возможных значений доступен в соответствующем разделе документации.

Уведомление сервера

Новый опрос

При отправке нового опроса в чат клиент получит соответствующее уведомление от сервера.

Сообщение от сервера:

Уведомление о сообщении с опросом содержит поля объекта Envelope. Описание полей и примеры вы найдёте в разделе «Справочник API», подробнее об опросах — в соответствующем разделе.

Ответ от клиента:

{
    "type": 2,
    "id": 123456
}
ПолеТипОбяз.Описание
typeuint32ДаТип сообщения (по умолчанию 2). Соответствует MESSAGE_TYPE.RESPONSE
iduint32ДаИдентификатор сообщения, на которое дается ответ (см. подробнее)
Последнее обновление: