Notificar por e-mail sempre que uma nova pesquisa Survey123 for enviada

Dependências:

  1. Instale Python 3.x
  2. Instale Pip3
  3. Instale o módulo "requests" via pip3

Preparando o serviço da Pesquisa

O script funciona com base no serviço de feição da pesquisa Survey123 sendo necessário habilitar o Editor Tracking. 

Obs.: Caso o Editor Tracking não esteja habilitado o script vai gerar um log informando que o Editor precisa ser habilitada e irá encerrar a execução.

 

Baixar e configurar o Script Python

  1. Baixe o script no anexo deste tutorial
  2. Após baixar o arquivo, edite o arquivo init.json. Editar os seguintes atributos:
    • recipients: E-mail que receberá as notificações
    • from: E-mail da pessoa que estará enviando o e-mail
    • server: Propriedades de conexão do servidor de e-mail:
      • O primeiro parâmetro é o host do servidor de e-mail (aqui estamos utilizando o SMTP do gmail)
      • Segundo parâmetro é a porta do servidor de e-mail
      • Terceiro e Quarto parâmetros é o usuário e senha para acessar o servidor
    • onemailflag: Se você deixar este parâmetro como 1, um e-mail será enviado resumindo todos os registros adicionados desde o script Python executado pela última vez. Se você mudar o valor para 0, o script disparará um e-mail para cada registro adicionado
    • portalURL: URL do ArcGIS Online ou ArcGIS Enterprise
    • fsURL: Está é a URL do seu serviço de pesquisa
    • fsLayerNum: Este é o índice da camada no serviço da feição que você deseja monitorar. Se você quiser verificar as alterações na camada principal do seu questionário, deixe em 0. Se você quiser verificar as alterações na camada de uma repetição, altere o índice de acordo
    • serviceuser e servicepw: credenciais de acesso de um usuário com acesso ao serviço de pesquisa
{
   "email":{
      "recipients":["INFORME O DESTINATARIO"],
      "from":"QUEM ENVIARA",
      "subject":"Novos Recursos foram adicionados ao seu servico",
      "text":"Ola equipe,\n\nVoce esta recebendo este e-mail porque novos recursos foram adicionados em:\n",
      "server":["smtp.gmail.com", 587, "", ""],
      "onemailflag":0
   },
   "service":{
      "portalURL":"https://www.arcgis.com",
      "fsURL":[
         "URL Serviço de feição 1",
         "URL Serviço de feição 1"
      ],
      "fsLayerNum":0,
      "serviceuser":"",
      "servicepw":"",
      "fieldstoreport":["*"],
      "viewerMapLevel":19
   },
   "filenames":{
      "lasteditfile":"lastedit.json"
   }
}

3. Depois de salvar as alterações no arquivo init.json , é hora de fazer um teste rápido ao script:

  • Execute o script uma vez para que ele possa capturar o estado atual do serviço da feição.
  • Envie um registro para o serviço da feição e execute o script novamente.

Se ocorrer algum erro durante a execução, um arquivo de texto de erro será criado na mesma pasta onde você salvou o script Python.

 

Agendando o script

 

O sistema operacional Windows inclui um utilitário simples chamado Agendador de Tarefas . É muito fácil de configurar. Depois de determinar quando o script será disparado pela primeira vez, você pode repetir sua execução em intervalos regulares. Por exemplo, a cada 5 minutos. Obviamente, o computador onde você configurou a tarefa precisará estar em execução o tempo todo, embora você possa configurar a tarefa para ser executada independentemente de quem está conectado.

 

A configuração de tarefas no agendador é bastante autoexplicativa, mas aqui estão algumas instruções específicas que podem lhe poupar algum tempo para frente e para trás:

 

  1. Geral : Marque a opção para executar com os privilégios mais altos e defina a tarefa para ser executada mesmo se você não estiver conectado.
  2. Gatilho : se você quiser testar sua tarefa rapidamente, basta selecioná-la na galeria e clicar em Executar no painel Item selecionado à direita. Ao configurar a tarefa de verdade, sugiro que você selecione o gatilho de inicialização e que também configure a tarefa para ser executada indefinidamente a cada cinco ou dez minutos ou mais.
  3. Ações : você precisará ser particularmente cuidadoso com este. A configuração do Programa / Script precisa apontar para o executável Python (Python.exe).
    • Se estiver usando sua própria cópia do Python, consulte o diretório de instalação do Python onde você encontrará Python.exe
    • Se estiver usando Python do ArcGIS Pro, ele estará no diretório de instalação do Pro. Por exemplo: "C: \ Arquivos de programas \ ArcGIS \ Pro \ bin \ Python \ envs \ arcgispro-py3 \ python.exe"

Você também precisa indicar a localização do seu script DetectChanges.py Python como um argumento. Não se esqueça de incluir a extensão .py no caminho. Se o caminho para o arquivo DetectChanges.py incluir espaços, você precisará colocar o caminho entre aspas. Por último, defina a propriedade 'Iniciar em' de forma que aponte para o diretório no qual você está armazenando o arquivo DetectChanges.py.

 

Para maiores informações sobre o o script de e-mail: https://community.esri.com/t5/arcgis-survey123-blog/a-simple-e-mail-notification-system-for-survey123-for-arcgis-v2/ba-p/894509/page/2#comments 

Detalhes do artigo

Identificação do artigo:
7
Categoria:
Avaliação :

Artigos relacionados