Criando um “bot” ativo no EPM que envia mensagens de ocorrências para o Microsoft Teams.

Descrição:

Como criar um “bot” ativo no EPM que envia mensagens de ocorrências dos objetos do EPM para o Microsoft Teams?

Solução:

Para criar/configurar um robô/”bot” ativo que envia mensagens automaticamente (neste exemplo, para o Microsoft Teams) a cada nova ocorrência de determinada(s) propriedade(s) de um objeto no EPM, devemos realizar as seguintes configurações:

IMPORTANTE: Para utilizar esta configuração, é necessário que tanto o EPM quanto o EPM processor estejam na versão 4.10.

Configurando o Microsoft Teams:

1. Primeiramente, abra o aplicativo do Microsoft Teams.
2. Crie uma Equipe, ou então entre em uma Equipe que tenha permissão de Administrador.
3. Depois disso, clique nos 3 pontinhos ao lado do nome da Equipe e então em “Gerenciar Equipe”.
4. Na aba Aplicativos, clique em “Mais Aplicativos”;
5. Logo após, na janela que foi aberta, pesquise por “Incoming Webhook”.
6. Clique no aplicativo, e depois em “Adicionar a uma Equipe”. Informe o nome da equipe que deseja adicionar ao aplicativo, e depois clique em “Configurar um Conector”.
7. Durante a configuração, informe o nome para o seu Aplicativo, como por exemplo “AlertsEPM”. É possível também informar uma imagem, se desejar. Finalmente, clique em “Criar”.
8. Será exibida uma URL, como no exemplo:  “https://elipse365.webhook.office.com/webhookb/fa97d065-68e3-4e5d-93b2-8a391de7af66@3a66cb32-9547-4d33-8cea-ba22036c58bf/IncomingWebhook/3fcb8c19e51e4a89b731cd8c6bb44c33/37034324-70b8-49f5-88e4-efcbe47fe1a9”

Esta URL será seu link de conexão do EPM Processor com o Teams. Na próxima etapa, vamos aprender a configurar os eventos no EPM.

Configurando o disparo de eventos por tipo de objeto no EPM

Agora vamos aprender a como configurar os eventos para disparo das mensagens no EPM Processor. Para isso, deve-se executar os seguintes passos:

1. Primeiramente, abra o EPMStudio, e conecte-se como usuário com acesso de cadastro de eventos.
2. Logo depois, acesse a secção Events no Explorer.
3. Então, clique duas vezes no evento TypeEvents para abrir a janela de configuração.
4. Adicione um novo evento; para isso, clique na tabela com símbolo de mais.
5. Informe o nome do seu evento; depois, na aba Sources, na caixa de opções Selected Custom, escolha o tipo de objeto no qual deseja gerar eventos, como por exemplo, xfDCIMDevice.
6. Após selecionar o objeto, adicione quais propriedades serão monitoradas para execução do evento:


7. Na aba Trigger, informe as condições das propriedades selecionadas para que este evento seja disparado. Exemplo:


8. Uma vez finalizadas as configurações, ativa o evento para que ele passe a ser executado:

Com estas configurações realizadas, terminamos de configurar a geração dos eventos de disparo no EPM. Agora vamos adicionar o código de envio de mensagens no EPM Processor.

Configurando o EPMProcessor com o código python e programando a ocorrência do código:

Agora vamos adicionar o código de envio de mensagens de acordo com os eventos cadastrados no EPM. Para isso, acesse a área de configuração do EPM Processor e execute os seguintes passos:

1. Acesse CodePackage , e adicione o código a seguir, dentro de um novo CodePackage do EPM Processor:

#mandatory import
import epmprocessor as epr
import pymsteams

#-------------------------
#      Method Sample Teams Message
#-------------------------
@epr.applicationMethod('msgDevices')
def msgDevices(session):
    if session.eventInfo != None:
      for key in session.eventInfo.payload:
        if key.find('Status'):
          vStatus = int(session.eventInfo.payload[key])
      if session.eventInfo.instance != None:
        iName = session.eventInfo.instance.name
   
      # You must create the connectorcard object with the Microsoft Webhook URL
      myTeamsMes-sage = pymsteams.connectorcard("https://elipse365.webhook.office.com/webhookb2/fa97d065-68e3-4e5d-93b2-8a391de7af66@3a66cb32-9547-4d44-8cea-ba22036c58bf/IncomingWebhook/3fcb8c19e51e4a89b731cd8c6bb44c33/38034324-60c8-49f5-88e4-efcbe47fe1a9")

      # Add text to the message.
      # myTeamsMessage.text("Alarme atuado "+ props['DisplayName'].read().value)
      opStatusList = ['OffLine', 'Active','Planned','Staged','Failed','Inventory']
      myTeamsMessa-ge.text("Dispositivo "+ iName.replace('1:','') +" alterou seu estado para "+ opStatusList[vStatus])

      # send the message.
      myTeamsMessage.send()

    return epr.ScopeResult(True)

2. Execute um Compile e Deploy ou Deploy++ no código adicionado no CodePackage.
3. Logo depois, acesse “Application Groups”, crie e configure um novo grupo de aplicação com o CodePackage do item anterior.
4. Acesse Solutions, e então crie uma nova solution.
5. Para rodar o código em produção, acesse a secção Productions, clique em New, e realize a configuração conforme exemplo abaixo:


6. Para finalizar a configuração, ative a execução da production clicando no play:

 

A realização dos passos acima deve resultar em um “bot” ativo do EPM funcionando corretamente.

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 5 / 5. Count: 1

Leave a Reply

Your email address will not be published.Required fields are marked *