Режимы работы сервиса
Сервис может работать в двух режимах:
пре-модерация - "pre-moderation"
пост-модерация - "post-moderation"
Устанавливается в конфиге сервиса в параметре "moderationType"
Например "moderationType": "post-moderation"
В этом режиме все вопросы и ответы должны быть проверены и одобрены модератором. Только вопросы и ответы которым принял модератор будут опубликованы на сайте. Так в же в этом режиме к конкретному вопросу должен быть прикреплен модератор который ведет данный вопрос, только этот модератор может управлять вопросом и ответами на него.
В этом режиме все вопросы и ответы автоматически публикуются на сайте. Назначение модератора на вопрос не требуются. Все модераторы могут управлять всеми вопросами и ответами.
Работа с вопросами
POST /api/qna/answers - создание вопроса
multipart/form-data запрос, поля:
message - текст вопроса
title - заголовок вопроса
assetsLinks - прикрипленные файлы (можно загрузить до 10 фотографий (JPEG, PNG, WEBP, HEIC до 5МБ) и 5 видеофайлов (MP4, MOV до 100мб) за раз)
В ответе придет созданный вопрос с questionID, информация о пользователе который создал вопрос
GET /api/qna/questions/{id} - просмотр вопроса
Запрос на получение вопроса {id} - id вопроса
PATCH /api/qna/questions/{id} - редактирование вопроса
Запрос для редактирование существуещего вопроса. {id} - id вопроса. Поля:
message - текст вопроса
title - заголовок вопроса
assetsLinks - прикрипленные файлы
DELETE /api/qna/questions/{id} - удаление вопроса
Запрос на удаление существующего вопроса {id} - id вопроса
PUT /api/qna/questions/{id}/status - изменение статуса вопроса
Запрос для изменения статуса вопроса. {id} - id вопроса.
Доступные статусы:
NEW - новый вопрос (статус автоматически присваивается новым вопросам в режиме pre-moderation)
OPEN - вопрос опубликован модератором (статус автоматически присваивается новым вопросам в режиме post-moderation)
REJECTED - вопрос отклонен модератором
CLOSED - вопрос закрыт модератором (есть лучший ответ)
Поля:
status - статус вопроса, указывается один из списка выше
moderatorComment - комментарий модератора, обязателен если статус REJECTED
PUT /api/qna/questions/{id}/bind - прикрепление букмекера к вопросу
Запрос для прикрипления букмекера к вопросу. {id} - id вопроса. Поля:
bookmakerId - id букмекера из сервиса Advertisers
PUT /api/qna/questions/{id}/assign - прикрепление модератора к вопросу
Запрос для назначения модератора на вопрос. Используется в режиме pre-moderation
{id} - id вопроса. Поля:
moderatorId - id модератора
PUT /api/qna/questions/{id}/viewed - отметить вопрос как просмотренный
Запрос для отметки вопроса как просмотренного. {id} - id вопроса.
GET /api/qna/questions/{id}/answers - получить список всех ответов на вопрос
Запрос для получения всех ответов на вопрос. {id} - id вопроса. Доступны фильтры:
isBest - лучший ответ
message - содержание ответа
published - опубликован ли ответ
userId - id автора ответа
createdAtStart / createdAtEnd - дата создания ответа
updatedAtStart / updatedAtEnd - дата обновления ответа
page - страница
pageSize - ответов на странице
sortOrder - сортировка
GET /api/qna/questions - получить список всех вопросов
Запрос для получения всех вопросов. Доступны фильтры:
status - статус вопроса
viewed - просмотрен ли вопрос
title - заголовок вопроса
message - содержание вопроса
published - опубликован ли вопрос
userId - id автора вопроса
moderatorId - id прикрипленного к вопросу модератора
createdAtStart / createdAtEnd - дата создания вопроса
updatedAtStart / updatedAtEnd - дата обновления вопроса
page - страница
pageSize - вопросов на странице
sortOrder - сортировка
Работа с ответами
POST /api/qna/answers - создание ответа на вопрос
Запрос для создания ответа на вопрос. Поля:
message - текст ответа
questionID - id вопроса для которого будет создан ответ
В ответе придет созданный ответ с информация о пользователе который создал ответ
GET /api/qna/answers/{id} - просмотр ответа
Запрос на получение ответа. {id} - id ответа
PATCH /api/qna/answers/{id} - редактирование ответа
Запрос для редактирование ответа. {id} - id ответа. Поля:
message - текст ответа
DELETE /api/qna/answers/{id} - удаление вопроса
Запрос на удаление ответа. {id} - id ответа
PUT /api/qna/answers/{id}/publish - опубликовать ответ
Запрос на опубликование ответа. {id} - id ответа.
Используется в режиме pre-moderation для публикации ответов.
PUT /api/qna/answers/{id}/decline - отклонить ответ
Запрос на отклонение ответа. {id} - id ответа.
Используется в обоих режимах для отклонения ответов пользователей.
PUT /api/qna/answers/{id}/mark - назначить ответ лучшим
Запрос на назначение ответа лучшим. {id} - id ответа.
После назначения ответа лучшим вопрос автоматически меняет статус на ЗАКРЫТ (РЕШЕН).
Просмотр текущих параметров сервиса
GET /api/qna/options - просмотр параметров сервиса
Запрос для получения текущих параметров сервиса. Можно узнать какой используется режим модерации на данный момент: pre-moderation или post-moderation
Уведомления на email
Подерживаются уведомления на email на следующие действия.
Для модераторов:
на сайт поступил новый вопрос
на сайт поступил новый ответ
модератору переназначен вопрос
Для пользователей:
вопрос не прошел модерацию
ответ не прошел модерацию
Уведомления настраиваются в конфиге сервиса для обоих режимов модерации. Есть возможность менять текст уведомлений с поддержкой html разметки.
Так же возможность вставлять следующие шаблоны которые будут автоматически заменены в тексте письма на реальные данные :
{{questionID}} - id вопроса
{{questionText}} - текст вопроса
{{questionTitle}} - заголовок вопроса
{{answerText}} - текст ответа