24 lines
977 B
JavaScript
24 lines
977 B
JavaScript
const {fetchCommentsFromServiceNow } = require('../services/servicenowService');
|
|
const { syncCommentsGlpitoSN, syncCommentsSNtoGlpi } = require('../services/glpiCommentService');
|
|
const TicketSyncModel = require('../models/ticketSyncModel');
|
|
|
|
|
|
const processCommentsController = async () => {
|
|
const ticketsToMonitor = await TicketSyncModel.getTicketsToMonitor();
|
|
|
|
for (const ticket of ticketsToMonitor){
|
|
const comments = await fetchCommentsFromServiceNow(ticket);
|
|
if(comments.length != 0){await syncCommentsSNtoGlpi(comments, ticket);}
|
|
await syncCommentsGlpitoSN(ticket);
|
|
}
|
|
}
|
|
|
|
module.exports = {
|
|
processCommentsController
|
|
}
|
|
|
|
/**
|
|
* @file processCommentsController.js
|
|
* @description Este controlador orquestra a sincronização bidirecional de comentários para todos os tickets ativos.
|
|
* Ele busca tickets que estão sendo monitorados e, para cada um, executa a sincronização de comentários do ServiceNow para o GLPI e vice-versa.
|
|
*/ |