Partilhar via


Integração com o provedor de dados de atividades do farm

O Azure Data Manager for Agriculture suporta conectores para sincronizar convenientemente os dados dos utilizadores finais a partir de uma variedade de origens de dados de máquinas agrícolas. A configuração envolve a configuração do fluxo oAuth como um pré-requisito para a integração com qualquer provedor de dados de Atividades do Farm, juntamente com uma etapa de consentimento transparente por conta que lida com a sincronização de dados inicial e incremental para manter o conjunto de dados ADMA atualizado.

Nota

As etapas 1 a 3 fazem parte da configuração inicial única por provedor. Uma vez integrado, você poderá permitir que todos os seus usuários finais usem o fluxo de trabalho oAuth existente e chamem a API de configuração (Etapa 4) por usuário (PartyID) para recuperar o token de acesso.

Configuração do provedor

O fluxo de exemplo aqui usa Climate FieldView

Etapa 1: Criação de aplicativos

Se a sua candidatura ainda não estiver registada no Climate Fieldview, aceda ao portal FieldView e envie o formulário. Depois que o FieldView processar sua solicitação, eles enviarão sua client_id e client_secret que você usará uma vez por instância ADMA para FieldView.

Etapa 2: Configuração do provedor

Use a oAuthProvider API para criar ou atualizar o provedor oAuth (Ex: FIELDVIEW) com as credenciais apropriadas do aplicativo recém-criado.

Documentação da API: oAuthProviders - Criar ou atualizar

Etapa opcional: Uma vez que a operação é feita, você pode executar o oAuthProviders_Get para verificar se o aplicativo está registrado. Agora, todas as partes criadas em sua instância do Azure Data Manager for Agriculture podem usar FieldView como um provedor para buscar dados de Atividades do Farm.

Etapa 3: Configuração do ponto final

Ponto de extremidade de redirecionamento de usuário: esse ponto de extremidade é para onde você deseja que seus usuários sejam redirecionados assim que o fluxo oAuth for concluído. Esse endpoint será gerado por você e fornecido à ADMA como userRedirectLink na API oauth/tokens/:connect. Registre o ponto de extremidade de retorno de chamada oAuth com seu aplicativo no portal Climate FieldView.

Configuração da conta de utilizador final

Etapa 4: Integração do grupo (usuário final)

Quando uma parte (usuário final) pousar em sua página da Web onde a ação do usuário é esperada (por exemplo, botão Conectar ao FieldView), faça uma chamada para a API da maneira abaixo para obter o uri de entrada do provedor oAuth (Ex: Climate FieldView) de volta para oauth/tokens/:connect iniciar o fluxo oAuth do usuário final.

Documentação da API: oAuthTokens - Get OAuth Connection Link

Quando a oauth/tokens/:connect API retorna com êxito o , o usuário final clica neste link para concluir o fluxo oAuth (por exemplo, para Climate FieldView, o oauthAuthorizationLinkusuário recebe uma página de consentimento de acesso e login do FieldView). Quando o login for concluído, o ADMA redirecionará o usuário para o ponto de extremidade fornecido pelo cliente (userRedirectLink) com os seguintes parâmetros de consulta na url

  1. status (sucesso/fracasso)
  2. state (string opcional para identificar exclusivamente o usuário no final do cliente)
  3. mensagem (string opcional)
  4. errorCode (string opcional enviada para Failure/error) nos parâmetros.

Nota

Se a API retornar 404, isso implica que o fluxo oAuth falhou e o ADMA não pôde adquirir o token de acesso.

Etapa 5: Verifique as informações do token de acesso (opcional)

Esta etapa é opcional, apenas para confirmar se para um determinado usuário ou lista de usuários, o token de acesso válido necessário foi adquirido ou não. Isso pode ser feito fazendo uma chamada para a API para verificar a oauth/tokens entrada isValid: true no corpo da resposta.

Documentação da API: oAuthTokens - Lista

Esta etapa marca a conclusão bem-sucedida do fluxo oAuth para um usuário. Agora, o usuário está pronto para acionar um novo FarmOperationsDataJob para começar a extrair os dados de Atividades do Farm do Climate FieldView.