fix: partially rewrite readme for api
This commit is contained in:
parent
c95f163889
commit
fd0a38f5d4
78
README.md
78
README.md
@ -3,22 +3,27 @@
|
|||||||
/create - метод для создания тикета.
|
/create - метод для создания тикета.
|
||||||
пример запроса
|
пример запроса
|
||||||
|
|
||||||
POST https://staging.blacbroc.com/support/create
|
POST http://localhost:8000/support/create
|
||||||
|
|
||||||
Тело запроса
|
Тело запроса
|
||||||
```
|
```
|
||||||
{"Title":"test ticket title","Message":"test ticket message"}
|
{
|
||||||
|
"Title":"test ticket title",
|
||||||
|
"Message":"test ticket message"
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
тело ответа
|
тело ответа
|
||||||
```
|
```
|
||||||
{"Ticket":"c2fekjcobibtq7akknog"}
|
{
|
||||||
````
|
"Ticket":"c2fekjcobibtq7akknog"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
/subscribe - sse метод для подписывания на изменения по всех тикетах доступных пользователю.
|
/subscribe - sse метод для подписывания на изменения по всех тикетах доступных пользователю.
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
https://staging.blacbrok.com/support/subscribe?Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
|
http://localhost:8000/support/subscribe?Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
|
||||||
|
|
||||||
тело ответа
|
тело ответа
|
||||||
```
|
```
|
||||||
@ -48,7 +53,7 @@ Ticket: {
|
|||||||
/ticket - sse метод для подписки на сообщения из одного тикета.
|
/ticket - sse метод для подписки на сообщения из одного тикета.
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
https://staging.blacbrok.com/support/ticket?ticket=c2fekjcobibtq7akknog&Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
|
http://localhost:8000/support/ticket?ticket=c2fekjcobibtq7akknog&Authorization=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJJRCI6ImMxdmNrZWtvYmlicmFmYWU2bjYwIiwiU2Vzc2lvbiI6ImMxdmNrZWtvYmlicmFmYWU2bjZnIiwiVXNlciI6ImMxdXAxY2tvYmliaXVpNDVxNGYwIiwiVGFyaWZmIjowLCJDcmVhdGVkIjoxNjE4OTIyMDQyMDQ3LCJMYXN0U2VlbiI6MTYxODkyMjA5OTg5MH0.INLy790JP-o6DDZcXfSEXUDg7lE1_83Ns2vDJVrUFuQ
|
||||||
|
|
||||||
тело ответа
|
тело ответа
|
||||||
```
|
```
|
||||||
@ -66,11 +71,16 @@ https://staging.blacbrok.com/support/ticket?ticket=c2fekjcobibtq7akknog&Authoriz
|
|||||||
/send - метод для отправки сообщения в тикета
|
/send - метод для отправки сообщения в тикета
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/send
|
POST http://localhost:8000/support/send
|
||||||
|
|
||||||
Тело запроса
|
Тело запроса
|
||||||
```
|
```
|
||||||
{"message":"test ticket message","TicketID":"c2fekjcobibtq7akknog", "lang":"ru","files": ["idoffile"]}
|
{
|
||||||
|
"message":"test ticket message",
|
||||||
|
"TicketID":"c2fekjcobibtq7akknog",
|
||||||
|
"lang":"ru",
|
||||||
|
"files": ["idoffile"]
|
||||||
|
}
|
||||||
```
|
```
|
||||||
Ответ null
|
Ответ null
|
||||||
|
|
||||||
@ -78,11 +88,16 @@ POST https://staging.blacbroc.com/support/send
|
|||||||
/getTickets - метод для получения тикетов с пагинацией
|
/getTickets - метод для получения тикетов с пагинацией
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/getTickets
|
POST http://localhost:8000/support/getTickets
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
```
|
```
|
||||||
{"amt":10,"page":1,"srch":"test","status":"open"}
|
{
|
||||||
|
"amt":10,
|
||||||
|
"page":1,
|
||||||
|
"srch":"test",
|
||||||
|
"status":"open"
|
||||||
|
}
|
||||||
```
|
```
|
||||||
Ответ:
|
Ответ:
|
||||||
``` [{
|
``` [{
|
||||||
@ -110,11 +125,16 @@ POST https://staging.blacbroc.com/support/getTickets
|
|||||||
/getMessages - метод для получения сообщений конкретного тикета с пагинацией
|
/getMessages - метод для получения сообщений конкретного тикета с пагинацией
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/getMessages
|
POST http://localhost:8000/support/getMessages
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
```
|
```
|
||||||
{"amt":10,"page":1,"srch":"test","ticket":"c2fekjcobibtq7akknog"}
|
{
|
||||||
|
"amt":10,
|
||||||
|
"page":1,
|
||||||
|
"srch":"test",
|
||||||
|
"ticket":"c2fekjcobibtq7akknog"
|
||||||
|
}
|
||||||
|
|
||||||
Ответ:
|
Ответ:
|
||||||
[{
|
[{
|
||||||
@ -133,39 +153,51 @@ POST https://staging.blacbroc.com/support/getMessages
|
|||||||
/pick - подхватывание сотрудником диалога
|
/pick - подхватывание сотрудником диалога
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/pick
|
POST http://localhost:8000/support/pick
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
|
```
|
||||||
{"ticket":"c2fekjcobibtq7akknog"}
|
{"ticket":"c2fekjcobibtq7akknog"}
|
||||||
|
```
|
||||||
Ответ: null
|
Ответ: null
|
||||||
|
|
||||||
/delegate - передача тикета другому сотруднику
|
/delegate - передача тикета другому сотруднику
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/delegate
|
POST http://localhost:8000/support/delegate
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
{"ticket":"c2fekjcobibtq7akknog","answerer":"c2fekjcobibtq7akknog"}
|
```
|
||||||
|
{
|
||||||
|
"ticket":"c2fekjcobibtq7akknog",
|
||||||
|
"answerer":"c2fekjcobibtq7akknog"
|
||||||
|
}
|
||||||
|
```
|
||||||
Ответ: null
|
Ответ: null
|
||||||
|
|
||||||
/vote - метод для оценки полезности ответа
|
/vote - метод для оценки полезности ответа
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/delegate
|
POST http://localhost:8000/support/delegate
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
{"ticket":"c2fekjcobibtq7akknog","rate":5}
|
```
|
||||||
|
{
|
||||||
|
"ticket":"c2fekjcobibtq7akknog",
|
||||||
|
"rate":5
|
||||||
|
}
|
||||||
|
```
|
||||||
Ответ: null
|
Ответ: null
|
||||||
|
|
||||||
/close - метод для закрытия тикета
|
/close - метод для закрытия тикета
|
||||||
|
|
||||||
пример запроса
|
пример запроса
|
||||||
POST https://staging.blacbroc.com/support/close
|
POST http://localhost:8000/support/close
|
||||||
|
|
||||||
Тело запроса:
|
Тело запроса:
|
||||||
{"ticket":"c2fekjcobibtq7akknog"}
|
```
|
||||||
|
{
|
||||||
|
"ticket":"c2fekjcobibtq7akknog"
|
||||||
|
}
|
||||||
|
|
||||||
Ответ: null
|
Ответ: null
|
17
app/app.go
17
app/app.go
@ -10,11 +10,12 @@ import (
|
|||||||
"heruvym/router"
|
"heruvym/router"
|
||||||
"heruvym/service"
|
"heruvym/service"
|
||||||
"heruvym/tools"
|
"heruvym/tools"
|
||||||
"heruvym/version"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
|
"time"
|
||||||
|
|
||||||
rAL "bitbucket.org/skeris/profile/dal"
|
rAL "bitbucket.org/skeris/profile/dal"
|
||||||
"github.com/skeris/appInit"
|
"github.com/skeris/appInit"
|
||||||
|
tb "gopkg.in/tucnak/telebot.v2"
|
||||||
|
|
||||||
"github.com/themakers/hlog"
|
"github.com/themakers/hlog"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
@ -67,7 +68,7 @@ var zapOptions = []zap.Option{
|
|||||||
zap.AddStacktrace(zap.ErrorLevel),
|
zap.AddStacktrace(zap.ErrorLevel),
|
||||||
}
|
}
|
||||||
|
|
||||||
func New(ctx context.Context, opts interface{}) (appInit.CommonApp, error) {
|
func New(ctx context.Context, opts interface{}, ver appInit.Version) (appInit.CommonApp, error) {
|
||||||
|
|
||||||
var (
|
var (
|
||||||
err error
|
err error
|
||||||
@ -93,9 +94,9 @@ func New(ctx context.Context, opts interface{}) (appInit.CommonApp, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
zapLogger = zapLogger.With(
|
zapLogger = zapLogger.With(
|
||||||
zap.String("SvcCommit", version.Commit),
|
zap.String("SvcCommit", ver.Commit),
|
||||||
zap.String("SvcVersion", version.Release),
|
zap.String("SvcVersion", ver.Release),
|
||||||
zap.String("SvcBuildTime", version.BuildTime),
|
zap.String("SvcBuildTime", ver.BuildTime),
|
||||||
)
|
)
|
||||||
fmt.Println("logger")
|
fmt.Println("logger")
|
||||||
logger := hlog.New(zapLogger)
|
logger := hlog.New(zapLogger)
|
||||||
@ -132,7 +133,7 @@ func New(ctx context.Context, opts interface{}) (appInit.CommonApp, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
fmt.Println("miniod")
|
fmt.Println("miniod")
|
||||||
/*
|
|
||||||
newBot, err := tb.NewBot(tb.Settings{
|
newBot, err := tb.NewBot(tb.Settings{
|
||||||
Token: "5240336345:AAG6ZXm6IYqsIZn7SoJTltJWviOXhVa4D0c",
|
Token: "5240336345:AAG6ZXm6IYqsIZn7SoJTltJWviOXhVa4D0c",
|
||||||
Verbose: false,
|
Verbose: false,
|
||||||
@ -145,8 +146,8 @@ func New(ctx context.Context, opts interface{}) (appInit.CommonApp, error) {
|
|||||||
//logger.Emit(json.Token(err))
|
//logger.Emit(json.Token(err))
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
heruvym := service.New(blobStore, database, connRoles, logger, nil)
|
heruvym := service.New(blobStore, database, connRoles, logger, newBot)
|
||||||
|
|
||||||
mux := router.NewRouter(map[string]http.HandlerFunc{
|
mux := router.NewRouter(map[string]http.HandlerFunc{
|
||||||
"/support/create": heruvym.CreateTicket,
|
"/support/create": heruvym.CreateTicket,
|
||||||
|
27
compose.test.yml
Normal file
27
compose.test.yml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
services:
|
||||||
|
test:
|
||||||
|
build: ./test
|
||||||
|
depends_on:
|
||||||
|
- mongo
|
||||||
|
- mongosetup
|
||||||
|
- minio
|
||||||
|
mongo:
|
||||||
|
image: mongo:6
|
||||||
|
hostname: mongo
|
||||||
|
restart: always
|
||||||
|
entrypoint: ["/usr/bin/mongod", "--logpath", "/dev/null","--bind_ip_all","--replSet","rs0"]
|
||||||
|
mongosetup:
|
||||||
|
image: mongo:6
|
||||||
|
depends_on:
|
||||||
|
- mongo
|
||||||
|
restart: "no"
|
||||||
|
logging:
|
||||||
|
driver: "none"
|
||||||
|
entrypoint: [ "bash", "-c", "sleep 2 && mongosh --host mongo:27017 --eval 'rs.initiate()'"]
|
||||||
|
minio:
|
||||||
|
image: minio/minio
|
||||||
|
hostname: minio
|
||||||
|
restart: always
|
||||||
|
logging:
|
||||||
|
driver: "none"
|
||||||
|
command: server --address 0.0.0.0:9000 /data
|
@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
test:
|
svc:
|
||||||
build: ./test
|
build: .
|
||||||
depends_on:
|
depends_on:
|
||||||
- mongo
|
- mongo
|
||||||
- mongosetup
|
- mongosetup
|
||||||
|
@ -3,10 +3,11 @@ package minio
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io"
|
||||||
|
|
||||||
"github.com/minio/minio-go/v7"
|
"github.com/minio/minio-go/v7"
|
||||||
"github.com/minio/minio-go/v7/pkg/credentials"
|
"github.com/minio/minio-go/v7/pkg/credentials"
|
||||||
"github.com/themakers/hlog"
|
"github.com/themakers/hlog"
|
||||||
"io"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type BlobStore struct {
|
type BlobStore struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user