adição de documentação dos endpoints para integração com SLM
parent
280c006d02
commit
5203ad0d23
|
@ -18,7 +18,7 @@
|
|||
"@google-cloud/dialogflow": "^4.6.0",
|
||||
"@sentry/node": "^5.29.2",
|
||||
"@types/pino": "^6.3.4",
|
||||
"actions-on-google": "^3.0.0",
|
||||
"actions-on-google": "^3.0.0",
|
||||
"axios": "^1.2.3",
|
||||
"bcryptjs": "^2.4.3",
|
||||
"cookie-parser": "^1.4.5",
|
||||
|
@ -46,8 +46,10 @@
|
|||
"sequelize-typescript": "^1.1.0",
|
||||
"socket.io": "^3.0.5",
|
||||
"socket.io-client": "^4.5.4",
|
||||
"swagger-ui-express": "^5.0.0",
|
||||
"uuid": "^8.3.2",
|
||||
"whatsapp-web.js": "github:pedroslopez/whatsapp-web.js",
|
||||
"yamljs": "^0.3.0",
|
||||
"yup": "^0.32.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
|
|
@ -10,7 +10,12 @@ import "./database";
|
|||
import uploadConfig from "./config/upload";
|
||||
import AppError from "./errors/AppError";
|
||||
import routes from "./routes";
|
||||
import { logger } from "./utils/logger";
|
||||
import { logger } from "./utils/logger";
|
||||
|
||||
// Swagger SLM
|
||||
const swaggerUI = require("swagger-ui-express");
|
||||
const YAML = require("yamljs");
|
||||
const swaggerDocument = YAML.load("./swagger.yaml");
|
||||
|
||||
Sentry.init({ dsn: process.env.SENTRY_DSN });
|
||||
|
||||
|
@ -26,6 +31,13 @@ app.use(cookieParser());
|
|||
app.use(express.json());
|
||||
app.use(Sentry.Handlers.requestHandler());
|
||||
app.use("/public", express.static(uploadConfig.directory));
|
||||
|
||||
app.get("/", (req: Request, res: Response) => {
|
||||
res.send('<h1>SLM/OMNIHIT api</h1><a href="/api-docs">Documentation</a>');
|
||||
});
|
||||
|
||||
app.use("/api-docs", swaggerUI.serve, swaggerUI.setup(swaggerDocument));
|
||||
|
||||
app.use(routes);
|
||||
|
||||
app.use(Sentry.Handlers.errorHandler());
|
||||
|
@ -39,6 +51,5 @@ app.use(async (err: Error, req: Request, res: Response, _: NextFunction) => {
|
|||
logger.error(err);
|
||||
return res.status(500).json({ error: "Internal server error" });
|
||||
});
|
||||
|
||||
|
||||
export default app;
|
||||
|
|
|
@ -14,7 +14,10 @@ import SendWhatsAppMessage from "../services/WbotServices/SendWhatsAppMessage";
|
|||
import { Op, where, Sequelize } from "sequelize";
|
||||
import ShowTicketServiceByContactId from "../services/TicketServices/ShowTicketServiceByContactId";
|
||||
import hitPortalMonitoring from "../helpers/HitPortalMonitoring";
|
||||
import { sendDialogflowAwswer, verifyContact } from "../services/WbotServices/wbotMessageListener";
|
||||
import {
|
||||
sendDialogflowAwswer,
|
||||
verifyContact
|
||||
} from "../services/WbotServices/wbotMessageListener";
|
||||
import CheckIsValidContact from "../services/WbotServices/CheckIsValidContact";
|
||||
import Contact from "../models/Contact";
|
||||
import GetProfilePicUrl from "../services/WbotServices/GetProfilePicUrl";
|
||||
|
@ -25,62 +28,59 @@ import ShowQuickAnswerService from "../services/QuickAnswerService/ShowQuickAnsw
|
|||
import ShowQueryItemService from "../services/SLM/ShowQueryItemService";
|
||||
import QueryItem from "../models/QueryItem";
|
||||
|
||||
|
||||
|
||||
// type IndexQuery = {
|
||||
// cod_web: string;
|
||||
// };
|
||||
// cod_web: string;
|
||||
// };
|
||||
|
||||
// export const index = async (req: Request, res: Response): Promise<Response> => {}
|
||||
|
||||
export const hit = async (req: Request, res: Response): Promise<Response> => {
|
||||
|
||||
// const {
|
||||
// cod_web,
|
||||
// cod_web,
|
||||
// } = req.body as IndexQuery;
|
||||
|
||||
console.log('req.boy: ', req.body)
|
||||
console.log("req.body['cod_web']: ", req.body['cod_web'])
|
||||
console.log("req.body['action']: ", req.body['action'])
|
||||
console.log("req.body['phone']: ", req.body['phone'])
|
||||
console.log("req.body['name']: ", req.body['name'])
|
||||
console.log("req.body['mensagem']: ", req.body['mensagem'])
|
||||
console.log("req.boy: ", req.body);
|
||||
console.log("req.body['cod_web']: ", req.body["cod_web"]);
|
||||
console.log("req.body['action']: ", req.body["action"]);
|
||||
console.log("req.body['phone']: ", req.body["phone"]);
|
||||
console.log("req.body['name']: ", req.body["name"]);
|
||||
console.log("req.body['mensagem']: ", req.body["mensagem"]);
|
||||
|
||||
if (req.headers["auth"] === "0424bd59b807674191e7d77572075f33") {
|
||||
let phone = req.body["phone"];
|
||||
let name = req.body["name"];
|
||||
|
||||
if (req.headers["auth"] === '0424bd59b807674191e7d77572075f33') {
|
||||
|
||||
let phone = req.body['phone']
|
||||
let name = req.body['name']
|
||||
|
||||
if (!phone) return res.status(200).json({ "message": "Ok" });
|
||||
if (!phone) return res.status(200).json({ message: "Ok" });
|
||||
|
||||
const regex = /^55/;
|
||||
|
||||
phone = phone.match(/\d+/g).join('');
|
||||
phone = phone.match(/\d+/g).join("");
|
||||
|
||||
if (!regex.test(phone)) {
|
||||
phone = '55' + phone;
|
||||
phone = "55" + phone;
|
||||
}
|
||||
|
||||
if (phone.length < 7) return res.status(200).json({ "message": "Ok" });
|
||||
if (phone.length < 7) return res.status(200).json({ message: "Ok" });
|
||||
|
||||
let validNumber = await CheckIsValidContact(phone);
|
||||
|
||||
if (!validNumber) {
|
||||
return res.status(200).json({ "message": "Ok" });
|
||||
return res.status(200).json({ message: "Ok" });
|
||||
}
|
||||
|
||||
validNumber = req.body['cod_web'] === '0001' ? validNumber : '5517988325936'
|
||||
validNumber =
|
||||
req.body["cod_web"] === "0001" ? validNumber : "5517988325936";
|
||||
|
||||
let contact = await Contact.findOne({ where: { number: validNumber } });
|
||||
// let contact = await Contact.findOne({ where: { number: '5517988325936' } });
|
||||
|
||||
if (!contact) {
|
||||
|
||||
const profilePicUrl = await GetProfilePicUrl(validNumber);
|
||||
|
||||
contact = await CreateContactService({
|
||||
name: name || phone,
|
||||
number: validNumber,
|
||||
profilePicUrl: profilePicUrl,
|
||||
profilePicUrl: profilePicUrl
|
||||
});
|
||||
|
||||
const io = getIO();
|
||||
|
@ -88,149 +88,164 @@ export const hit = async (req: Request, res: Response): Promise<Response> => {
|
|||
action: "create",
|
||||
contact
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
// let response: any = `*Olá!*\r\n\r\n*Esperamos que esteja tudo bem com você. Somos o grupo HIT e estamos aqui para mantê-lo atualizado sobre o chamado referente à unidade 0001 - Hit World Teste. Queremos garantir que você esteja informado sobre o incidente e possa acompanhar tudo de perto.*\r\n\r\nPrezado cliente, se deseja adicionar alguma informação no protocolo 200-322442 digite 2\r\n\r\n\r\n*Protocolo:* 200-322442\r\n*Data de abertura:* 07/07/2023 16:51:29\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* teste de ativação Contato: Felipe Telefone: 11983534545\r\n*Data de abertura:* 07/07/2023 16:51:29\r\n\r\n`
|
||||
|
||||
let response: any = ''
|
||||
let response: any = "";
|
||||
|
||||
if (['atdabriu', 'atdatualizou'].includes(req.body['action'])) {
|
||||
if (["atdabriu", "atdatualizou"].includes(req.body["action"])) {
|
||||
response = await hitPortalMonitoring({
|
||||
'params[n_chamado_web]': req.body['n_chamado_web'],
|
||||
'method': 'omnihit.consultachamado',
|
||||
})
|
||||
"params[n_chamado_web]": req.body["n_chamado_web"],
|
||||
method: "omnihit.consultachamado"
|
||||
});
|
||||
} else {
|
||||
response = req.body["mensagem"];
|
||||
}
|
||||
else {
|
||||
response = req.body['mensagem']
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (!response || response.length == 0 || !contact) {
|
||||
console.log('Empty result from hit portal monitoring to n_chamado_web: ', req.body['n_chamado_web'])
|
||||
return res.status(200).json({ "message": "Ok" });
|
||||
console.log(
|
||||
"Empty result from hit portal monitoring to n_chamado_web: ",
|
||||
req.body["n_chamado_web"]
|
||||
);
|
||||
return res.status(200).json({ message: "Ok" });
|
||||
}
|
||||
|
||||
const botInfo = await BotIsOnQueue('botqueue')
|
||||
const botInfo = await BotIsOnQueue("botqueue");
|
||||
|
||||
let ticket: any = await ShowTicketServiceByContactId(contact.id)
|
||||
let ticket: any = await ShowTicketServiceByContactId(contact.id);
|
||||
|
||||
if (!ticket.dataValues.id) {
|
||||
|
||||
const defaultWhatsapp = await GetDefaultWhatsApp();
|
||||
|
||||
let ticket_obj: any = await FindOrCreateTicketServiceBot(
|
||||
contact,
|
||||
defaultWhatsapp.id!,
|
||||
0,
|
||||
0
|
||||
);
|
||||
|
||||
ticket = ticket_obj.ticket
|
||||
ticket = ticket_obj.ticket;
|
||||
}
|
||||
|
||||
|
||||
if (ticket.id && ticket.status == 'pending') {
|
||||
|
||||
if (ticket.id && ticket.status == "pending") {
|
||||
await sendMessageHitMonitoring(response, ticket);
|
||||
|
||||
await sendMessageInsertInfoSLM(req, ticket, ['atdabriu', 'atdatualizou'], contact.id);
|
||||
|
||||
}
|
||||
else if (ticket.id && ticket.userId == botInfo.userIdBot) {
|
||||
|
||||
await sendMessageInsertInfoSLM(
|
||||
req,
|
||||
ticket,
|
||||
["atdabriu", "atdatualizou"],
|
||||
contact.id
|
||||
);
|
||||
} else if (ticket.id && ticket.userId == botInfo.userIdBot) {
|
||||
let queue = await ShowQueueService(botInfo.botQueueId);
|
||||
|
||||
await UpdateTicketService({ ticketData: { queueId: queue.id }, ticketId: ticket.id });
|
||||
await UpdateTicketService({
|
||||
ticketData: { queueId: queue.id },
|
||||
ticketId: ticket.id
|
||||
});
|
||||
|
||||
ticket = await ShowTicketService(ticket.id);
|
||||
|
||||
let msg: any = { type: 'chat', from: `${contact.number}@c.us`, body: '0' }
|
||||
let msg: any = {
|
||||
type: "chat",
|
||||
from: `${contact.number}@c.us`,
|
||||
body: "0"
|
||||
};
|
||||
|
||||
await sendDialogflowAwswer(ticket.whatsappId, ticket, msg, contact, false);
|
||||
await sendDialogflowAwswer(
|
||||
ticket.whatsappId,
|
||||
ticket,
|
||||
msg,
|
||||
contact,
|
||||
false
|
||||
);
|
||||
|
||||
await sendMessageHitMonitoring(response, ticket);
|
||||
|
||||
await sendMessageInsertInfoSLM(req, ticket, ['atdabriu', 'atdatualizou'], contact.id);
|
||||
|
||||
await sendMessageInsertInfoSLM(
|
||||
req,
|
||||
ticket,
|
||||
["atdabriu", "atdatualizou"],
|
||||
contact.id
|
||||
);
|
||||
}
|
||||
}
|
||||
else {
|
||||
return res.status(401).json({ "message": "Token Inválido!" });
|
||||
} else {
|
||||
return res.status(401).json({ message: "Token Inválido!" });
|
||||
}
|
||||
|
||||
|
||||
return res.status(200).json({ "message": "Ok" });
|
||||
|
||||
return res.status(200).json({ message: "Ok" });
|
||||
};
|
||||
|
||||
async function sendMessageInsertInfoSLM(req: Request, ticket: any, params: any[], contactId: number) {
|
||||
|
||||
async function sendMessageInsertInfoSLM(
|
||||
req: Request,
|
||||
ticket: any,
|
||||
params: any[],
|
||||
contactId: number
|
||||
) {
|
||||
const insert_protocol_info: QueryItem = await ShowQueryItemService({
|
||||
contactId,
|
||||
name: 'insert_protocol_info'
|
||||
})
|
||||
name: "insert_protocol_info"
|
||||
});
|
||||
|
||||
const n_chamado_web: QueryItem = await ShowQueryItemService({
|
||||
contactId,
|
||||
name: 'n_chamado_web'
|
||||
})
|
||||
name: "n_chamado_web"
|
||||
});
|
||||
|
||||
await new Promise(f => setTimeout(f, 2000));
|
||||
|
||||
if (params.includes(req.body['action'])) {
|
||||
|
||||
if (insert_protocol_info &&
|
||||
if (params.includes(req.body["action"])) {
|
||||
if (
|
||||
insert_protocol_info &&
|
||||
insert_protocol_info?.status &&
|
||||
n_chamado_web?.queryItem) {
|
||||
|
||||
await sendMessageHitMonitoring(`🔄 Houve uma atualização no chamado acima`, ticket);
|
||||
n_chamado_web?.queryItem
|
||||
) {
|
||||
await sendMessageHitMonitoring(
|
||||
`🔄 Houve uma atualização no chamado acima`,
|
||||
ticket
|
||||
);
|
||||
|
||||
await new Promise(f => setTimeout(f, 1000));
|
||||
|
||||
await sendMessageHitMonitoring(`✅ Protocolo *${n_chamado_web?.queryItem}* validado, digite a informação que deseja adicionar.`, ticket);
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
await sendMessageHitMonitoring(
|
||||
`✅ Protocolo *${n_chamado_web?.queryItem}* validado, digite a informação que deseja adicionar.`,
|
||||
ticket
|
||||
);
|
||||
} else {
|
||||
// await new Promise(f => setTimeout(f, 1000));
|
||||
|
||||
await sendMessageHitMonitoring(`Se deseja adicionar alguma informação ao protocolo acima, digite 2.`, ticket);
|
||||
|
||||
await sendMessageHitMonitoring(
|
||||
`Se deseja adicionar alguma informação ao protocolo acima, digite 2.`,
|
||||
ticket
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else if (req.body['action'] == 'atdfechou') {
|
||||
|
||||
if (insert_protocol_info &&
|
||||
} else if (req.body["action"] == "atdfechou") {
|
||||
if (
|
||||
insert_protocol_info &&
|
||||
insert_protocol_info?.status &&
|
||||
n_chamado_web?.queryItem) {
|
||||
|
||||
if (req.body['n_chamado_web'] &&
|
||||
req.body['n_chamado_web'].trim() == n_chamado_web?.queryItem) {
|
||||
|
||||
insert_protocol_info.update({ status: false })
|
||||
n_chamado_web?.queryItem
|
||||
) {
|
||||
if (
|
||||
req.body["n_chamado_web"] &&
|
||||
req.body["n_chamado_web"].trim() == n_chamado_web?.queryItem
|
||||
) {
|
||||
insert_protocol_info.update({ status: false });
|
||||
|
||||
await new Promise(f => setTimeout(f, 1000));
|
||||
|
||||
await sendMessageHitMonitoring(`O Protocolo *${n_chamado_web?.queryItem}* foi encerrado. Não é mais possível adicionar informação. Se desejar consultar o historico digite 1`, ticket);
|
||||
|
||||
await sendMessageHitMonitoring(
|
||||
`O Protocolo *${n_chamado_web?.queryItem}* foi encerrado. Não é mais possível adicionar informação. Se desejar consultar o historico digite 1`,
|
||||
ticket
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function sendMessageHitMonitoring(msg: any, ticket: Ticket) {
|
||||
|
||||
if (msg && msg.length > 0) {
|
||||
|
||||
console.log('MESSAGE WILL BE SENT!')
|
||||
console.log("MESSAGE WILL BE SENT!");
|
||||
|
||||
await SendWhatsAppMessage({ body: msg, ticket });
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,435 @@
|
|||
openapi: 3.0.0
|
||||
info:
|
||||
title: SLM-OMNIHIT-INTEGRATION
|
||||
description: This API describes the endpoints and parameters to integrate the omnihit application with the SLM from hit telecommunications.
|
||||
contact: {}
|
||||
version: "1.0"
|
||||
servers:
|
||||
- url: http://177.107.192.247:8095/labs/monitoramentohit/api/api.php
|
||||
variables: {}
|
||||
- url: http://172.31.187.4:8080/omnihit/incidente
|
||||
variables: {}
|
||||
paths:
|
||||
/labs/monitoramentohit/api/api.php consultachamadostatus:
|
||||
post:
|
||||
tags:
|
||||
- SLM
|
||||
summary: Consulta status do chamado
|
||||
description: Consulta status do chamado
|
||||
operationId: Consultastatusdochamado
|
||||
parameters: []
|
||||
requestBody:
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
encoding: {}
|
||||
schema:
|
||||
required:
|
||||
- auth
|
||||
- jsonrpc
|
||||
- method
|
||||
- id
|
||||
- params[n_chamado_web]
|
||||
type: object
|
||||
properties:
|
||||
auth:
|
||||
type: string
|
||||
example: 0123ce68c916783282f6c66451164g22
|
||||
jsonrpc:
|
||||
type: number
|
||||
format: double
|
||||
example: 2
|
||||
method:
|
||||
type: string
|
||||
example: omnihit.consultachamadostatus
|
||||
id:
|
||||
type: integer
|
||||
format: int32
|
||||
example: 101
|
||||
params[n_chamado_web]:
|
||||
type: string
|
||||
example: 200-322094
|
||||
required: false
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: close
|
||||
id: "101"
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: close
|
||||
id: "101"
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://177.107.192.247:8095/labs/monitoramentohit/api/api.php
|
||||
variables: {}
|
||||
/labs/monitoramentohit/api/api.php consultachamado:
|
||||
post:
|
||||
tags:
|
||||
- SLM
|
||||
summary: Consulta chamado
|
||||
description: Consulta chamado
|
||||
operationId: Consultachamado
|
||||
parameters: []
|
||||
requestBody:
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
encoding: {}
|
||||
schema:
|
||||
required:
|
||||
- jsonrpc
|
||||
- method
|
||||
- id
|
||||
- params[n_chamado_web]
|
||||
- auth
|
||||
type: object
|
||||
properties:
|
||||
jsonrpc:
|
||||
type: number
|
||||
format: double
|
||||
example: 2
|
||||
method:
|
||||
type: string
|
||||
example: omnihit.consultachamado
|
||||
id:
|
||||
type: integer
|
||||
format: int32
|
||||
example: 101
|
||||
params[n_chamado_web]:
|
||||
type: string
|
||||
example: 200-323882
|
||||
auth:
|
||||
type: string
|
||||
example: 0123ce68c916783282f6c66451164g22
|
||||
required: false
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: "Olá! Sou o atendente Inteligente do grupo HIT! \U0001F916\r\nEspero que você esteja bem. Estou aqui para mantê-lo atualizado sobre o chamado referente à unidade 0001 - Hit World Teste. Meu objetivo é garantir que você esteja plenamente informado sobre o incidente e possa acompanhar todos os detalhes de perto. ❗\r\n\r\n*Protocolo:* 200-323882\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* Teste Felipe Ribeiro 16:37\r\n*Contato:* Felipe Ribeiro *Telefone:* 17988310949\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n\r\n*Status do Chamado:* Aguardando\r\n*Atualização do chamado pelo cliente:* Este é um teste de integração SLM X WA para o Adriano 16:41h\r\n*Data da atualização:* 17/07/2023 16:41:21\r\n\r\n*Status do Chamado:* Em Atendimento\r\n*Atualização do chamado pela HIT:* Este é um teste de integração do SLM X WA do Alan Oliveira\r\n*Data da atualização:* 17/07/2023 16:43:28\r\n\r\n*Status do Chamado:* Fechado\r\n*Atualização do chamado pela HIT:* Teste de integração SLM X WA realizado com sucesso por Alan e Adriano 16:45h\r\n*Status de Encerramento:* Chamado concluído\r\n*Data do encerramento:* 17/07/2023 16:45:17\r\n"
|
||||
id: "101"
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: "Olá! Sou o atendente Inteligente do grupo HIT! \U0001F916\r\nEspero que você esteja bem. Estou aqui para mantê-lo atualizado sobre o chamado referente à unidade 0001 - Hit World Teste. Meu objetivo é garantir que você esteja plenamente informado sobre o incidente e possa acompanhar todos os detalhes de perto. ❗\r\n\r\n*Protocolo:* 200-323882\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* Teste Felipe Ribeiro 16:37\r\n*Contato:* Felipe Ribeiro *Telefone:* 17988310949\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n\r\n*Status do Chamado:* Aguardando\r\n*Atualização do chamado pelo cliente:* Este é um teste de integração SLM X WA para o Adriano 16:41h\r\n*Data da atualização:* 17/07/2023 16:41:21\r\n\r\n*Status do Chamado:* Em Atendimento\r\n*Atualização do chamado pela HIT:* Este é um teste de integração do SLM X WA do Alan Oliveira\r\n*Data da atualização:* 17/07/2023 16:43:28\r\n\r\n*Status do Chamado:* Fechado\r\n*Atualização do chamado pela HIT:* Teste de integração SLM X WA realizado com sucesso por Alan e Adriano 16:45h\r\n*Status de Encerramento:* Chamado concluído\r\n*Data do encerramento:* 17/07/2023 16:45:17\r\n"
|
||||
id: "101"
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://177.107.192.247:8095/labs/monitoramentohit/api/api.php
|
||||
variables: {}
|
||||
/labs/monitoramentohit/api/api.php chamadoaddobs:
|
||||
post:
|
||||
tags:
|
||||
- SLM
|
||||
summary: Insere info SLM
|
||||
description: Insere info SLM
|
||||
operationId: InsereinfoSLM
|
||||
parameters: []
|
||||
requestBody:
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
encoding: {}
|
||||
schema:
|
||||
required:
|
||||
- auth
|
||||
- jsonrpc
|
||||
- method
|
||||
- id
|
||||
- params[n_chamado_web]
|
||||
- params[obs]
|
||||
type: object
|
||||
properties:
|
||||
auth:
|
||||
type: string
|
||||
example: 0424bd59b807674191e7d77572075f33
|
||||
jsonrpc:
|
||||
type: number
|
||||
format: double
|
||||
example: 2
|
||||
method:
|
||||
type: string
|
||||
example: omnihit.chamadoaddobs
|
||||
id:
|
||||
type: integer
|
||||
format: int32
|
||||
example: 101
|
||||
params[n_chamado_web]:
|
||||
type: string
|
||||
example: 200-324398
|
||||
params[obs]:
|
||||
type: string
|
||||
example: O tecnico já esta na unidade para prestar o suporte necessario.
|
||||
required: false
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: Informação adicionada com sucesso.
|
||||
id: "101"
|
||||
example:
|
||||
jsonrpc: "2.0"
|
||||
result: Informação adicionada com sucesso.
|
||||
id: "101"
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://177.107.192.247:8095/labs/monitoramentohit/api/api.php
|
||||
variables: {}
|
||||
/omnihit/incidente atdfechou:
|
||||
post:
|
||||
tags:
|
||||
- OMNIHIT
|
||||
summary: Webhook omnihit fechamento do chamado
|
||||
operationId: Webhookomnihitfechamentodochamado
|
||||
parameters:
|
||||
- name: auth
|
||||
in: header
|
||||
description: ""
|
||||
required: true
|
||||
style: simple
|
||||
schema:
|
||||
type: string
|
||||
example: 0424bd59b807674191e7d77572075f33
|
||||
requestBody:
|
||||
description: ""
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
allOf:
|
||||
- $ref: "#/components/schemas/WebhookomnihitfechamentodochamadoRequest"
|
||||
- example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdfechou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: "*Olá!*\r\n\r\n*Sou o atendente Inteligente do grupo HIT Communications! \U0001F916*\r\n\r\nGostaria de informar que o chamado referente à unidade 0001 - Hit World Teste foi encerrado. Estou à disposição para qualquer outra assistência através do mesmo número, na opção 4 - Suporte Técnico, ou em qualquer outro setor. A equipe da HIT Communications está pronta para auxiliá-lo em qualquer situação. \U0001F9E1\r\n\r\n*Protocolo:* 200-323882\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* Teste Felipe Ribeiro 16:37\r\n*Contato:* Felipe Ribeiro *Telefone:* 17988310949\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n\r\n*Status do Chamado:* Aguardando\r\n*Atualização do chamado pelo cliente:* Este é um teste de integração SLM X WA para o Adriano 16:41h\r\n*Data da atualização:* 17/07/2023 16:41:21\r\n\r\n*Status do Chamado:* Em Atendimento\r\n*Atualização do chamado pela HIT:* Este é um teste de integração do SLM X WA do Alan Oliveira\r\n*Data da atualização:* 17/07/2023 16:43:28\r\n\r\n*Status do Chamado:* Fechado\r\n*Atualização do chamado pela HIT:* Teste de integração SLM X WA realizado com sucesso por Alan e Adriano 16:45h\r\n*Status de Encerramento:* Chamado concluído\r\n*Data do encerramento:* 17/07/2023 16:45:17\r\n\r\n\r\n"
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdfechou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: "*Olá!*\r\n\r\n*Sou o atendente Inteligente do grupo HIT Communications! \U0001F916*\r\n\r\nGostaria de informar que o chamado referente à unidade 0001 - Hit World Teste foi encerrado. Estou à disposição para qualquer outra assistência através do mesmo número, na opção 4 - Suporte Técnico, ou em qualquer outro setor. A equipe da HIT Communications está pronta para auxiliá-lo em qualquer situação. \U0001F9E1\r\n\r\n*Protocolo:* 200-323882\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* Teste Felipe Ribeiro 16:37\r\n*Contato:* Felipe Ribeiro *Telefone:* 17988310949\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n\r\n*Status do Chamado:* Aguardando\r\n*Atualização do chamado pelo cliente:* Este é um teste de integração SLM X WA para o Adriano 16:41h\r\n*Data da atualização:* 17/07/2023 16:41:21\r\n\r\n*Status do Chamado:* Em Atendimento\r\n*Atualização do chamado pela HIT:* Este é um teste de integração do SLM X WA do Alan Oliveira\r\n*Data da atualização:* 17/07/2023 16:43:28\r\n\r\n*Status do Chamado:* Fechado\r\n*Atualização do chamado pela HIT:* Teste de integração SLM X WA realizado com sucesso por Alan e Adriano 16:45h\r\n*Status de Encerramento:* Chamado concluído\r\n*Data do encerramento:* 17/07/2023 16:45:17\r\n\r\n\r\n"
|
||||
required: true
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
message: Ok
|
||||
example:
|
||||
message: Ok
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://172.31.187.4:8080/omnihit/incidente
|
||||
variables: {}
|
||||
/omnihit/incidente atdabriu:
|
||||
post:
|
||||
tags:
|
||||
- OMNIHIT
|
||||
summary: Webhook omnihit abertura do chamado
|
||||
operationId: Webhookomnihitaberturadochamado
|
||||
parameters:
|
||||
- name: auth
|
||||
in: header
|
||||
description: ""
|
||||
required: true
|
||||
style: simple
|
||||
schema:
|
||||
type: string
|
||||
example: 0424bd59b807674191e7d77572075f33
|
||||
requestBody:
|
||||
description: ""
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
allOf:
|
||||
- $ref: "#/components/schemas/WebhookomnihitaberturadochamadoRequest"
|
||||
- example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdabriu
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdabriu
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
required: true
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
message: Ok
|
||||
example:
|
||||
message: Ok
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://172.31.187.4:8080/omnihit/incidente
|
||||
variables: {}
|
||||
/omnihit/incidente atdatualizou:
|
||||
post:
|
||||
tags:
|
||||
- OMNIHIT
|
||||
summary: Webhook omnihit atualizacao do chamado
|
||||
operationId: Webhookomnihitatualizacaodochamado
|
||||
parameters:
|
||||
- name: auth
|
||||
in: header
|
||||
description: ""
|
||||
required: true
|
||||
style: simple
|
||||
schema:
|
||||
type: string
|
||||
example: 0424bd59b807674191e7d77572075f33
|
||||
requestBody:
|
||||
description: ""
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
allOf:
|
||||
- $ref: "#/components/schemas/WebhookomnihitatualizacaodochamadoRequest"
|
||||
- example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdatualizou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdatualizou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
required: true
|
||||
responses:
|
||||
"200":
|
||||
description: ""
|
||||
headers: {}
|
||||
content:
|
||||
text/plain:
|
||||
schema:
|
||||
type: string
|
||||
example:
|
||||
message: Ok
|
||||
example:
|
||||
message: Ok
|
||||
deprecated: false
|
||||
security: []
|
||||
servers:
|
||||
- url: http://172.31.187.4:8080/omnihit/incidente
|
||||
variables: {}
|
||||
components:
|
||||
schemas:
|
||||
WebhookomnihitfechamentodochamadoRequest:
|
||||
title: WebhookomnihitfechamentodochamadoRequest
|
||||
required:
|
||||
- n_chamado_web
|
||||
- action
|
||||
- phone
|
||||
- name
|
||||
- mensagem
|
||||
type: object
|
||||
properties:
|
||||
n_chamado_web:
|
||||
type: string
|
||||
action:
|
||||
type: string
|
||||
phone:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
mensagem:
|
||||
type: string
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdfechou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: "*Olá!*\r\n\r\n*Sou o atendente Inteligente do grupo HIT Communications! \U0001F916*\r\n\r\nGostaria de informar que o chamado referente à unidade 0001 - Hit World Teste foi encerrado. Estou à disposição para qualquer outra assistência através do mesmo número, na opção 4 - Suporte Técnico, ou em qualquer outro setor. A equipe da HIT Communications está pronta para auxiliá-lo em qualquer situação. \U0001F9E1\r\n\r\n*Protocolo:* 200-323882\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n*Nome do cliente:* Hit World Teste\r\n*Nome da filial:* Hit World Teste\r\n*Código do cliente:* 0001\r\n\r\n*Informação de abertura:* Teste Felipe Ribeiro 16:37\r\n*Contato:* Felipe Ribeiro *Telefone:* 17988310949\r\n*Data de abertura:* 17/07/2023 16:38:08\r\n\r\n*Status do Chamado:* Aguardando\r\n*Atualização do chamado pelo cliente:* Este é um teste de integração SLM X WA para o Adriano 16:41h\r\n*Data da atualização:* 17/07/2023 16:41:21\r\n\r\n*Status do Chamado:* Em Atendimento\r\n*Atualização do chamado pela HIT:* Este é um teste de integração do SLM X WA do Alan Oliveira\r\n*Data da atualização:* 17/07/2023 16:43:28\r\n\r\n*Status do Chamado:* Fechado\r\n*Atualização do chamado pela HIT:* Teste de integração SLM X WA realizado com sucesso por Alan e Adriano 16:45h\r\n*Status de Encerramento:* Chamado concluído\r\n*Data do encerramento:* 17/07/2023 16:45:17\r\n\r\n\r\n"
|
||||
WebhookomnihitaberturadochamadoRequest:
|
||||
title: WebhookomnihitaberturadochamadoRequest
|
||||
required:
|
||||
- n_chamado_web
|
||||
- action
|
||||
- phone
|
||||
- name
|
||||
- mensagem
|
||||
type: object
|
||||
properties:
|
||||
n_chamado_web:
|
||||
type: string
|
||||
action:
|
||||
type: string
|
||||
phone:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
mensagem:
|
||||
type: string
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdabriu
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
WebhookomnihitatualizacaodochamadoRequest:
|
||||
title: WebhookomnihitatualizacaodochamadoRequest
|
||||
required:
|
||||
- n_chamado_web
|
||||
- action
|
||||
- phone
|
||||
- name
|
||||
- mensagem
|
||||
type: object
|
||||
properties:
|
||||
n_chamado_web:
|
||||
type: string
|
||||
action:
|
||||
type: string
|
||||
phone:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
mensagem:
|
||||
type: string
|
||||
example:
|
||||
n_chamado_web: 200-323934
|
||||
action: atdatualizou
|
||||
phone: +55 17 988310949
|
||||
name: ADRIANO TESTE
|
||||
mensagem: ""
|
||||
tags:
|
||||
- name: SLM
|
||||
- name: OMNIHIT
|
Loading…
Reference in New Issue