Merge branch 'main' of bitbucket.org:skeris/heruvym into main

This commit is contained in:
Skeris 2021-09-05 20:01:34 +03:00
commit 268bfa9b53

@ -2,13 +2,17 @@
/create - метод для создания тикета.
пример запроса
POST https://staging.blacbroc.com/support/create
Тело запроса
```
{"Title":"test ticket title","Message":"test ticket message"}
```
тело ответа
```
{"Ticket":"c2fekjcobibtq7akknog"}
````
/subscribe - sse метод для подписывания на изменения по всех тикетах доступных пользователю.
@ -17,61 +21,57 @@ POST https://staging.blacbroc.com/support/create
https://staging.blacbrok.com/support/subscribe?Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
тело ответа
```
Ticket: {
ID string `bson:"_id"`
UserID string `bson:"UserID"`
SessionID string `bson:"SessionID"`
AnswererID string `bson:"AnswererID"`
State string `bson:"State"`
TopMessage: {
ID string `bson:"_id" json:"id"`
TicketID string `bson:"TicketID" json:"ticket_id"`
UserID string `bson:"UserID" json:"user_id"`
SessionID string `bson:"SessionID" json:"session_id"`
Message string `bson:"Message" json:"message"`
Files []string `bson:"Files" json:"files"`
Shown map[string]int `bson:"Shown" json:"shown"`
CreatedAt time.Time `bson:"CreatedAt" json:"created_at"`
}
Title string `bson:"Title"`
CreatedAt time.Time `bson:"CreatedAt"`
UpdatedAt time.Time `bson:"UpdatedAt"`
Rate int `bson:"Rate"`
}
```
/ticket/<ticketID> - sse метод для подписки на сообщения из одного тикета.
/ticket - sse метод для подписки на сообщения из одного тикета.
пример запроса
https://staging.blacbrok.com/support/ticket/c2fekjcobibtq7akknog?Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
https://staging.blacbrok.com/support/ticket?ticket=c2fekjcobibtq7akknog&Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
тело ответа
```
{
ID string `bson:"_id" json:"id"`
TicketID string `bson:"TicketID" json:"ticket_id"`
UserID string `bson:"UserID" json:"user_id"`
SessionID string `bson:"SessionID" json:"session_id"`
Message string `bson:"Message" json:"message"`
Files []string `bson:"Files" json:"files"`
Shown map[string]int `bson:"Shown" json:"shown"`
CreatedAt time.Time `bson:"CreatedAt" json:"created_at"`
}
```
/send - метод для отправки сообщения в тикета
пример запроса
POST https://staging.blacbroc.com/support/send
Тело запроса
```
{"message":"test ticket message","TicketID":"c2fekjcobibtq7akknog", "lang":"ru","files": ["idoffile"]}
```
Ответ null
@ -81,43 +81,39 @@ POST https://staging.blacbroc.com/support/send
POST https://staging.blacbroc.com/support/getTickets
Тело запроса:
```
{"amt":10,"page":1,"srch":"test","status":"open"}
```
Ответ:
[{
``` [{
ID string `bson:"_id"`
UserID string `bson:"UserID"`
SessionID string `bson:"SessionID"`
AnswererID string `bson:"AnswererID"`
State string `bson:"State"`
TopMessage: {
ID string `bson:"_id" json:"id"`
TicketID string `bson:"TicketID" json:"ticket_id"`
UserID string `bson:"UserID" json:"user_id"`
SessionID string `bson:"SessionID" json:"session_id"`
Message string `bson:"Message" json:"message"`
Files []string `bson:"Files" json:"files"`
Shown map[string]int `bson:"Shown" json:"shown"`
CreatedAt time.Time `bson:"CreatedAt" json:"created_at"`
}
Title string `bson:"Title"`
CreatedAt time.Time `bson:"CreatedAt"`
UpdatedAt time.Time `bson:"UpdatedAt"`
Rate int `bson:"Rate"`
}]
```
/getMessages - метод для получения сообщений конкретного тикета с пагинацией
пример запроса
POST https://staging.blacbroc.com/support/getMessages
Тело запроса:
```
{"amt":10,"page":1,"srch":"test","ticket":"c2fekjcobibtq7akknog"}
Ответ:
@ -133,7 +129,7 @@ POST https://staging.blacbroc.com/support/getMessages
CreatedAt time.Time `bson:"CreatedAt" json:"created_at"`
}]
```
/pick - подхватывание сотрудником диалога
пример запроса