Criar processos e automações do Connected Field Service

Concluído

A solução Connected Field Service do Dynamics 365 permite que você monitore remotamente dispositivos habilitados para IoT para controlar o tempo de atividade, as estatísticas do dispositivo, as anomalias e muito mais. Depois que um dispositivo IoT comunica uma anomalia ou uma exceção, essas informações são enviadas ao Connected Field Service como um alerta. Após o alerta ser capturado, podemos usar a capacidade do Dynamics 365 de criar automação e processo empresarial para desenvolver processos automatizados para executar ações, roteamento e corrigir os problemas.

O objetivo deste laboratório prático é apresentar a você a criação e a automação de processos do Connected Field Service e demonstrar como esses itens podem ser usados como parte de uma solução geral de IoT.

Cenário

Você trabalha em uma empresa de encanamento e calefação que vende e oferece serviços relacionados a dispositivos domésticos inteligentes. Como vários dispositivos que você atende são dispositivos inteligentes, as informações desses dispositivos podem ser capturadas remotamente para ajudar na manutenção desse equipamento. Sua organização tem vários cenários e processos definidos que são usados ao fazer a manutenção de equipamentos. Esses processos podem variar de acordo com vários fatores, incluindo:

  • Tipo de dispositivo que precisa de serviço

  • Severidade do problema detectado

  • Idade do dispositivo

  • Local do dispositivo

  • Disponibilidade de recursos para trabalhar em um dispositivo específico

Os itens anteriores representam apenas uma pequena parte dos fatores que sua organização usa para determinar o processo para manutenção de equipamentos.

Ultimamente, você tem instalado muitos dispositivos de termostato inteligentes. Esses dispositivos foram úteis para conseguir rastrear as leituras de temperatura e de umidade em áreas em que é importante manter uma temperatura e uma umidade consistentes. Como você tem mais informações disponíveis, foi forçado a criar novos processos para tratar e resolver problemas relatados por esses dispositivos. A primeira área que você gostaria de focar é a automação do processo usado para problemas relativos à temperatura.

Sua organização busca implementar o processo a seguir:

  • Se um dispositivo detectar uma leitura de temperatura de mais de 70 graus, um alerta deverá surgir em seu ambiente do Connected Field Service.

  • Se a leitura da temperatura estiver entre 70 e 85 graus, um comando deverá ser enviado para redefinir remotamente o dispositivo e verificar se o problema é resolvido.

  • Se a leitura da temperatura estiver entre 86 e 100 graus, um representante de serviço deverá ser capaz de criar uma ocorrência para tentar resolver o problema.

    • Se o representante de serviço não conseguir resolver o problema, uma ordem de serviço deverá ser criada e um técnico no local deverá ser agendado para o item.
  • Se a leitura da temperatura for superior a 100 graus, será considerado um evento potencialmente catastrófico. Uma ordem de serviço deve ser criada e um técnico no local deve ser agendado para o item.

Exercício: automatizar e personalizar

Antes de começar: este exercício presume que você já tenha uma implantação conectada do Connected Field Service que está conectada a um Hub IoT do Azure ou uma instância do IoT Central. Se você não tiver um ambiente do Connected Field Service disponível, será recomendável executar o módulo Introdução ao Connect Field Service. Esse módulo ajuda a instalar e configurar um ambiente Connected Field Service.

Tarefa: criar uma solução do processo de alerta de IoT

Na primeira tarefa, criamos uma solução Dynamics 365 que podemos usar para armazenar todas as personalizações e processos que criamos neste módulo. Isso não apenas facilita o transporte potencial das personalizações posteriormente, mas também auxilia na limpeza de nossos ambientes após a conclusão do curso.

  1. Acesse o Power Apps e verifique se está no ambiente certo.

  2. Selecione Soluções e, depois, Nova Solução.

  3. Nomeie a solução como Processos de Alerta de IoT.

  4. Selecione a lista suspensa Editor e Editor.

  5. Configure o Editor da maneira a seguir.

    • Nome de Exibição: Curso de Connected Field Service

    • Nome: Curso sobre o Connected Field Service

    • Prefixo: cfs

  6. Selecione Salvar.

  7. Selecione a lista suspensa Editor e selecione o editor que você criou.

  8. No campo Versão, insira 1.0.0.0. e selecione Criar.

  9. Selecione para abrir a solução Processo de Alerta de IoT que você criou.

  10. Selecione Adicionar Existente e Tabela.

  11. Selecione Caso, Alerta de IoT e Ordem de Serviço e, depois, Avançar.

  12. Selecione Incluir Todos os Objetos para todas as três tabelas e selecione Adicionar.

Tarefa: personalizar a tabela de alerta de IoT

Para ajudar a automatizar itens e ações com base em alertas de IoT, precisamos ser capazes de extrair informações específicas para alertas de IoT gerados. Podemos consultá-los e disparar itens com base nesses dados. Como os dados de alerta contêm apenas uma cadeia de caracteres JSON que contém todos os dados, precisamos criar alguns outros campos na tabela de alerta de IoT. Podemos usá-la para enviar dados específicos e criar consultas nesses campos.

  1. Verifique se você ainda está na solução de Processos de Alerta de IoT.

  2. Selecione para abrir a tabela Alerta de IoT.

  3. Selecione a guia Colunas e Nova Coluna.

  4. Insira Leitura para o Nome de Exibição, selecione o Número Inteiro para o Tipo de Dados e selecione Opções Avançadas.

  5. Insira 0 para o Valor Mínimo, 250 para o Valor Máximo e selecione Salvar.

  6. Repita o processo para adicionar estas colunas:

    • Limite

      • Nome de Exibição: Limite

      • Tipo de dados: Número Inteiro

      • Valor Mínimo: 0

      • Valor Máximo: 250

    • ReadingType

      • Nome de Exibição: Tipo de Leitura

      • Tipo de Dados: Sim/Não

      • Altere o valor Não para Temperatura

      • Altere o valor Sim para Umidade

      • Escolha padrão: Temperatura

    • Saída de Regra

      • Nome de Exibição: Saída de Regra

      • Tipo de Dados: Linha de Texto Única

    • Cliente

      • Nome de Exibição: Cliente

      • Tipo de Dados: Pesquisa

      • Tipo de Registro de Destino: Conta

  7. Usando a navegação estrutural, selecione Alerta de IoT.

  8. Selecione Relacionamentos em Esquema.

  9. Selecione Novo Relacionamento e Um para Muitos.

  10. Selecione Caso para a Entidade Relacionada, insira Alerta de IoT para Nome de Exibição da Coluna de Pesquisa e selecione Concluído.

  11. Selecione o nome das soluções.

  12. Selecione Publicar todas as personalizações e aguarde o término da publicação.

  13. Selecione o botão ... e selecione Alternar para clássico.

  14. Expanda Entidades, expanda a entidade de Alerta de IoT e selecione Relacionamentos 1:N.

    Captura de tela do caso para o relacionamento de Alerta de IoT.

  15. Selecione Mapeamentos e Novo.

  16. Configure o mapeamento da lista da maneira a seguir e selecione OK.

    • Campo de Entidade de Origem: cfs_customer

    • Campo de Entidade de Destino: customerid

  17. Selecione Salvar e Fechar.

  18. Selecione Publicar todas as personalizações e aguarde o término da publicação.

  19. Feche o gerenciador de soluções.

Tarefa: criar um fluxo para popular valores

Agora que temos campos disponíveis para armazenar os dados necessários, precisamos preencher esses campos com os dados corretos. Para isso, estamos usando algumas das ações de valor de campo com base em JSON incluídas na solução Connected Field Service. Criamos um fluxo que executa uma ação de valor de campo com base em JSON para extrair dados específicos do campo de dados de alerta. Em seguida, populamos esses dados em um dos campos que criamos na tarefa anterior.

  1. Acesse o Power Apps e verifique se está no ambiente certo.

  2. Selecione Soluções e selecione para abrir a solução Processos de Alerta de IoT.

  3. Selecione Novo e Automação>Fluxo da Nuvem>Automatizado.

  4. Defina o Nome do Fluxo como Preencher os Campos de Alerta.

  5. Pesquise Microsoft Dataverse e selecione Dataverse. Verifique se você selecionou o Conector Dataverse Verde.

  6. Selecione Quando um Registro é Criado, Atualizado ou Excluído e, em seguida, selecione o botão Criar.

  7. Selecione Adicionado para Condição de Gatilho, Alertas de IoT para Nome da Tabela, selecione Organização para Escopo e selecione Nova Etapa.

  8. Procure Analisar e selecione Analisar Json.

  9. Selecione o campo Conteúdo e selecione Alert Data no painel Conteúdo Dinâmico.

  10. Cole esse esquema Json no campo Esquema e selecione + Nova Etapa.

    {
        "type": "object",
        "properties": {
            "deviceid": {
                "type": "string"
            },
            "readingtype": {
                "type": "string"
            },
            "reading": {
                "type": "integer"
            },
            "eventtoken": {
                "type": "string"
            },
            "threshold": {
                "type": "integer"
            },
            "ruleoutput": {
                "type": "string"
            },
            "time": {
                "type": "string"
            }
        }
    }
    
  11. Pesquise Atualizar uma Linha e selecione Atualizar uma Linha. Verifique se você selecionou o Conector Dataverse Verde.

  12. Renomeie a etapa Atualizar Alerta.

  13. Selecione Alertas de IoT para Nome da Entidade, selecione o campo ID da Linha e selecione IoT Alert no painel Conteúdo Dinâmico.

    Captura de tela do Alerta de IoT no painel de Conteúdo dinâmico.

  14. Selecione Mostrar Opções Avançadas.

  15. Selecione o campo Reading e selecione reading na etapa Analisar JSON do conteúdo dinâmico.

    Captura de tela de leitura em Analisar JSON.

  16. Selecione o campo Tipo de Leitura e selecione Inserir valor personalizado.

  17. Selecione a guia Expressão, cole essa expressão abaixo e selecione OK. Verifique se Parse_JSON corresponde ao nome de etapa de análise do JSON.

    if(equals(body('Parse_JSON')?['readingtype'], 'Temperature'), false, true)
    

    Captura de tela da expressão colada na guia Expressões.

  18. Selecione o campo Saída da regra e selecione ruleoutput na ação Analisar JSON no painel de conteúdo dinâmico.

  19. Selecione o campo Limite e selecione limite na ação Analisar JSON no painel de conteúdo dinâmico.

  20. O fluxo concluído deve ser semelhante a esta imagem:

    Captura de tela de exemplo de fluxo concluído.

  21. Selecione Salvar.

  22. NÃO feche esta página.

Tarefa: adicionar as etapas de fluxo de redefinição remota

Agora que extraímos os dados corretos e os colocamos nos campos corretos, precisamos adicionar novas etapas ao fluxo. Essas etapas determinam o valor da temperatura no campo de leitura. Se cair entre 71 graus e 85 graus, ele deverá criar automaticamente um comando de dispositivo IoT que executará uma redefinição do dispositivo e o enviará ao dispositivo.

  1. Volte para o fluxo e selecione Nova Etapa.

  2. Selecione Condição.

  3. Selecione o campo Escolher Valor e selecione Reading na etapa Atualizar Alerta no Conteúdo dinâmico.

    Captura de tela da leitura selecionada em Atualizar Alerta.

  4. Selecione é maior ou igual a.

  5. Digite 71 para Valor, selecione Adicionar e selecione Adicionar linha.

    Captura de tela do valor de leitura definido como 71 e o recurso Adicionar linha.

  6. Selecione o campo Escolher Valor e selecione Reading na etapa Atualizar Alerta no Conteúdo Dinâmico.

  7. Selecione É menor ou igual a.

  8. Digite 85 para Valor.

  9. Sua condição agora deve ser semelhante a esta imagem.

    Captura de tela de como a condição deve ser agora.

  10. Vá para a ramificação Sim e selecione Adicionar uma Ação.

  11. Pesquise Adicionar uma nova linha e selecione Adicionar uma nova linha-.

  12. Renomeie a etapa Criar comando de redefinição.

  13. Selecione Comandos do Dispositivo IoT para Nome da Tabela, selecione o campo Nome e Description na ação Quando um registro é criado, atualizado ou excluído no conteúdo dinâmico.

    Captura de tela da descrição do dispositivo IoT de Quando um registro é criado, atualizado ou excluído.

  14. Adicione Redefinição de Dispositivoao Nome e selecione Mostrar Opções Avançadas.

  15. Selecione o campo Ativo de Cliente e digite msdyn_customerassets().

  16. Coloque o cursor entre ( e ) e selecione Customer Assets (Value) na ação Quando o registro é criado, atualizado ou excluído no conteúdo dinâmico.

    Captura de tela do Ativo do Cliente (valor).

  17. Selecione o campo Dispositivo e digite msdyn_iotdevices().

  18. Coloque o cursor entre ( e ) e selecione IoT Device (Value) na ação Quando o registro é criado, atualizado ou excluído no conteúdo dinâmico.

    Captura de tela do dispositivo (valor) destacado.

  19. Selecione o campo Alerta Primário e digite msdyn_iotalerts().

  20. Coloque o cursor entre ( e ) e selecione IoT Alert na ação Atualizar Alerta no conteúdo dinâmico.

    Captura de tela do Alerta de IoT destacado.

  21. Cole este JSON no campo Mensagem.

    {"CommandName":"Reset Thermostat","Parameters":{}}
    

    Captura de tela do JSON colado no campo Mensagem.

  22. Selecione Ocultar Opções Avançadas.

  23. Selecione Adicionar uma Ação.

  24. Pesquise Atualizar uma Linha e selecione Atualizar uma Linha.

  25. Renomeie a etapa Desativar Alerta.

  26. Selecione Alertas de IoT para Nome da Tabela, selecione o campo ID de Registro e selecione IoT Alert na ação Atualizar alerta no Conteúdo Dinâmico.

    Captura de tela do Alerta de IoT destacado.

  27. Selecione Mostrar Opções Avançadas.

  28. Localize o campo Status e defina-o como Inativo.

  29. Selecione Ocultar Opções Avançadas.

  30. A nova parte do fluxo deve ser semelhante à imagem.

    Captura de tela da nova parte do fluxo.

  31. Selecione Salvar.

Tarefa: modificar o CFS - fluxo do processo de alerta de IoT

No momento, estamos usando outro fluxo do processo empresarial chamado CFS – Fluxo de Processo de Alerta de IoT para orientar os usuários na resolução de um alerta quando ele é disparado. Quando uma leitura de temperatura estiver entre 86 graus e 100 graus, no processo empresarial, devemos criar um registro de caso. Em seguida, criaremos uma ordem de serviço se não conseguirmos resolver o caso. Se a leitura da temperatura está acima de 100 graus, o processo empresarial deve ignorar o estágio de ocorrência e ir diretamente para uma ordem de serviço. Nesta tarefa, estamos modificando o CFS – Fluxo do Processo de Alerta de IoT para refletir essas necessidades específicas.

  1. Acesse o Power Apps e verifique se está no ambiente certo.

  2. Selecione Soluções e selecione para abrir a solução Processos de Alerta de IoT.

  3. Selecione Adicionar Existente e Automação>Processo.

  4. Procure por CFS, selecione CFS - Fluxo de Processo de Alerta de IoT e selecione Adicionar.

  5. Abra CFS - Fluxo do Processo de Alerta de IoT.

  6. Selecione o botão Desativar para desativar o processo.

  7. Confirme a desativação.

  8. Expanda Detalhes no estágio Alerta de IoT Criado.

    Captura de telha dos detalhes expandidos no estágio Alerta de IoT Criado.

  9. Em Componentes, arraste Etapa de dados abaixo da etapa Hora do Alerta.

  10. Configure a Etapa de Dados da seguintes maneira:

    • Nome de Etapa: Leitura

    • Campo de Dados: Leitura

  11. Selecione Aplicar para salvar suas alterações.

  12. Repita as etapas 9 a 11 para adicionar as seguintes Etapas de Dados ao estágio Alerta de IoT Criado:

    • Limite

    • Tipo de Leitura

    • Saída de Regra

  13. Selecione a guia Componentes, arraste o componente Condição para a direita do estágio Alerta de IoT Criado.

    Captura de tela da guia Componentes com o componente Condição para a direita do Alerta de IoT Criado.

  14. Em Nome de Exibição de Condição, insira Condição de Temperatura.

  15. Configure a Regra 1 da seguinte forma:

    • Campo: Leitura

    • Operador: É maior ou igual a

    • Tipo: Valor

    • Valor: 86

  16. Selecione o botão Novo para adicionar outra regra.

  17. Configure a Regra 2 da seguinte forma:

    • Campo: Leitura

    • Operador: É menor ou igual a

    • Tipo: Valor

    • Valor: 100

  18. Verifique se a Lógica da Regra está definida como And.

    Captura de tela da Lógica da Regra definida como And.

  19. Selecione Aplicar

  20. Selecione o estágio Condição de temperatura, selecione o ícone Conector e, no menu que aparecer, selecione Reconectar.

  21. Selecione o estágio Criar Ordem de Serviço como Segundo Ponto.

  22. O fluxo do processo empresarial agora deve ser semelhante à imagem:

    Captura de tela do fluxo de processo empresarial.

  23. Selecione Salvar e Ativar o CFS – Fluxo de Processo de Alerta de IoT.

  24. Feche a guia ou janela do navegador do editor de processo.

  25. Selecione Concluído na janela anterior para a solução.

  26. Selecione Soluções e, depois, Publicar Todas as Personalizações.

Tarefa: testar a automação recém-criada

Agora que podemos criar as personalizações, os fluxos e os fluxos do processo empresarial necessários, usamos um simulador para testar tudo e garantir que execute a funcionalidade desejada.

  1. Acesse o Power Apps e verifique se está no ambiente certo.

  2. Selecione Ativos de Cliente e o botão Novo.

  3. Insira Iniciar termostato para Nome, selecione Adventure Works para a Conta e Salvar.

  4. Localize o campo ID do dispositivo, insira smt-9876 e Salve.

  5. Selecione Registrar Dispositivos.

  6. Selecione OK.

  7. Em um navegador da Web, selecione uma guia nova e navegue até o portal do Azure (entre no Azure, se for solicitado. Você precisa de uma assinatura do Azure associada à conta que está usando).

  8. Selecione Grupos de Recursos e abra seu grupo de recursos.

  9. Abra o Hub IoT que você está usando com o Connected Field Service e selecione o Simulador

  10. Selecione a URL do simulador para abrir o simulador de termostato (o simulador deve ser aberto em uma nova guia).

  11. No simulador, selecione Conexão.

  12. Alterne para a sua assinatura do Azure, feche a tela de serviço de aplicativo do simulador.

  13. Abra o Hub IoT.

  14. Realce o Nome do Hub IoT e Copie.

  15. Alterne para a tela do simulador e cole o nome do Hub IoT no campo Host.

  16. Alterne para a sua assinatura do Azure; selecione Políticas de Acesso Compartilhado.

  17. Abra a políticaiothubowner e copie a Chave primária.

    Captura de tela da política iothubowner com a chave primária copiada.

  18. Alterne para a tela do simulador e cole a chave primária no campo Chave.

  19. Selecione o botão Conectar.

  20. Selecione o botão Atualizar para garantir que todos os dispositivos registrados estejam disponíveis.

  21. No menu suspenso Selecionar um dispositivo, selecione o dispositivo smt-9876. (Um ponto verde deve aparecer ao lado do botão Atualizar e, após alguns segundos, ele deve começar a transmitir informações.)

    Captura de tela do campo Selecionar um dispositivo com smt-9876 selecionado.

  22. No Controle Deslizante de Temperatura, defina como 75Grause aguarde até o status da temperatura ser registrado na janela Mensagens Enviadas.

    Como a temperatura está entre 71 e 85 graus, um comando é enviado ao dispositivo para reiniciá-lo. (Pode levar alguns minutos para o comando reinicializar ser enviado ao dispositivo, dependendo da velocidade da internet.)

  23. Alterne para a guia do navegador com Connected Field Service carregado.

  24. Selecione Alertas de IoT.

  25. Alterne para exibir em Alertas de IoT Inativos.

  26. Abra o alerta A temperatura de 75 excedeu um limite de 70.

  27. Selecione a guia Comandos. (Você deve ver um comando que foi enviado para o dispositivo.)

    Captura de tela da guia Comandos com um comando enviado ao dispositivo.

  28. Alterne para a guia do navegador da Web que contém o seu Simulador.

  29. Defina a Temperatura como 90 Graus e aguarde para que isso seja registrado na janela Mensagens Enviadas.

  30. Alterne para a guia do navegador com Connected Field Service carregado.

  31. Selecione Alertas de IoT.

  32. Abra o alerta A leitura de temperatura de 90 excedeu um limite de 70.

  33. Selecione o estágio Criado. (Observe que as informações que extraímos anteriormente estão sendo exibidas e, como a leitura está entre 86 e 100 graus, criar uma ocorrência é o próximo estágio.)

    Captura de tela do estágio criado com a leitura e o limite destacados.

  34. No Menu, selecione Enviar Comando.

  35. Selecione Alternar para Json.

  36. Insira o código abaixo para o comando e selecione Enviar.

    {"CommandName":"Reset Thermostat","Parameters":{}}
    
  37. Alterne para o seu Simulador e aguarde até que o dispositivo seja reiniciado.

  38. No Controle Deslizante de Temperatura, defina como 106Grause aguarde até o status da temperatura ser registrado na janela Mensagens Enviadas.

  39. Alterne para a guia do navegador com Connected Field Service carregado.

  40. Selecione Alertas de IoT.

  41. Abra o alerta a leitura de temperatura de 106 excedeu um limite de 70.

  42. Como o alerta estava acima de 100 graus, ele ignorou totalmente o estágio Criar Ocorrência.

    Captura de tela do estágio Criar Ordem de Serviço com o estágio Criar Caso ignorado.