XOps suporta sincronização bidirecional entre histórias de XOps e uma plataforma externa de gerenciamento de serviços. Essa integração ajuda a manter a atividade de investigação alinhada entre as plataformas, então atualizações feitas em uma plataforma são refletidas na outra.
Para mais informações, veja Criar Integrações Bidirecionais com Plataformas de Gerenciamento de Serviços.
Para configurar a integração com o ServiceNow, complete estes cinco passos.
Crie campos para serem preenchidos quando um bilhete for gerado no Aplicativo de Gerenciamento Cato (CMA).
Para criar campos personalizados:
- Inicie sessão na plataforma ServiceNow.
- Abra qualquer Incidente.
- Do banner superior, clique com o botão direito do mouse e navegue até Configurar > Construtor de Formulários.
- Se necessário, concorde em testar o Construtor de Formulários e selecione a visualização Padrão.
- Clique em Adicionar um novo campo na Tabela de Incidentes.
-
Adicione esses campos:
-
ID da Conta CMA
- Tipo: Inteiro
- Propriedades: Somente Leitura, Obrigatório, Ativo
-
ID da História CMA
- Tipo: String
- Propriedades: Somente Leitura, Obrigatório, Ativo
-
Chaves de API de serviço permitem integração escalável com ferramentas e serviços externos e são criadas neste formato: R=<...>|K=<...>. Para mais informações e informações detalhadas sobre como criar uma chave de API de Serviço, veja Gerando Chaves de API para a API do Cato.
Uma vez que você criou a chave de API de serviço, copie e salve-a para que possa ser inserida na Plataforma ServiceNow.
Na Plataforma ServiceNow, crie uma propriedade de sistema segura para armazenar a chave de API.
Para criar uma propriedade de sistema segura:
- Navegue para https://<sua instância>.service-now.com/sys_properties_list.do
- Clique em Novo.
-
No formulário Nova Propriedade do Sistema, adicione estes detalhes:
- Nome: cma_prod_api_key
- Tipo: Password2
- Valor: A chave de API de serviço que você criou no passo 2
- Clique em Enviar.
Crie uma mensagem REST para enviar detalhes dos incidentes ServiceNow para a Cato:
Para criar uma mensagem REST:
- Na sua Plataforma ServiceNow, navegue até Todos > Serviços Web do Sistema > Saídas > Mensagem REST.
- Clique em Novo.
-
No formulário Mensagem REST, adicione estes detalhes:
- Nome: Adicione um nome para a Mensagem REST
- Endpoint: https://<seu nome de conta Cato>.cc.catonetworks.com/api/v1/graphql2
- Tipo de autenticação: Sem autenticação
-
Métodos HTTP: Clique em Novo e adicione estes detalhes:
- Nome: Adicione um nome
- Método HTTP: POST
- Endpoint: https://<seu nome de conta Cato>.cc.catonetworks.com/api/v1/graphql2
- Clique em Enviar.
Crie uma regra de negócio para acionar a mensagem REST.
Para criar uma regra de negócio:
- Na sua Plataforma ServiceNow, navegue até Todos > Definições do Sistema > Regra de Negócio.
- Clique em Novo.
-
No formulário Nova Regra de Negócio, adicione estes detalhes:
- Nome: Adicione um nome para a Regra de Negócio
- Tabela: Incidente
- Quando: Após
- Atualizar: Verdadeiro (marque a caixa de seleção)
- Condição de Filtro: Mudanças nos comentários
-
Na aba Avançado, adicione este script:
(function executeRule(current, previous) { try { var lastComment = current.comments.getJournalEntry(1) || ''; lastComment = stripJournalHeader(lastComment); if (!lastComment) { gs.info("GraphQL webhook: Empty comment, skipping " + current.number); return; } var accountId = current.u_cma_account_id; var storyId = current.u_cma_story_id; gs.info("GraphQL webhook: accountId " + accountId + " story " + storyId); if (!accountId || !storyId) { gs.error("GraphQL webhook: Missing accountId/storyId for " + current.number); return; } var gqlQuery = "mutation CreateStoryComment($accountId: ID!, $input: AddStoryCommentInput!) {" + " xdr(accountId: $accountId) {" + " addStoryComment(input: $input) {" + " comment { id type __typename }" + " __typename" + " }" + " __typename" + " }" + "}"; var body = { query: gqlQuery, variables: { accountId: accountId.toString(), input: { type: "USER", storyId: storyId.toString(), text: lastComment } } }; var apiKey = gs.getProperty('cma_prod_api_key'); var r = new sn_ws.RESTMessageV2('Update XDR story comments CMA Prod', 'post'); r.setRequestHeader('Content-Type', 'application/json'); r.setRequestHeader('Accept', 'application/json'); r.setRequestHeader('x-api-key', apiKey); r.setRequestBody(JSON.stringify(body)); //var response = r.execute(); // can be changed to Async - only for debug purposes var eccSysId = r.executeAsync(); gs.info("GraphQL webhook queued, ECC sys_id=" + eccSysId); var status = response.getStatusCode(); var responseBody = response.getBody(); // Safe logging (see next section for masking) gs.info("GraphQL webhook: status=" + status); gs.info("GraphQL webhook: responseBody=" + responseBody); } catch (ex) { gs.info("GraphQL webhook: Failed: " + ex.message); } function stripJournalHeader(text) { text = text || ''; if (text.indexOf('\n') > -1) { return text.split('\n').slice(1).join('\n').trim(); } return text.trim(); } })(current, previous); - Clique em Enviar.
Você pode identificar problemas e erros em:
- Logs de Sistema: Navegue até Logs de Sistema > Todos e busque por mensagens contendo
GraphQL webhook. - Registro ECC: Navegue para https://<instance>.service-now.com/sys_ecc_queue_list.do e localize o registro ECC com o
sys_id ECCregistrado.
0 comentário
Por favor, entre para comentar.