Saltar al contenido principal

wiki-DeepLinks

Ver en Git


DeepLinks

¿ Que son los deeplinks ?

Los deeplinks son direcciones URL a traves de las cuales podemos hacer que la plataforma se inicialice en algun estado predefinido.

¿ Como esta formado un deeplink ?

Esta formado por una URL Base/Endpoint#Parametros

URL Base: auraview.auravant.com

Endpoint:

Parametros: configuracion inicial de features

Por ejemplo, si quisieras que la paltaforma se inicialice en algun campo y lote en particular y en la funcionalidad de anomalias marcando una anomalia:

auraview.auravant.com/anomalias#field=2133&id=153

¿ Que endpoints desarrollados hay ?

/weather

  • farm=<FARM_ID>

/image

  • field=<FIELD_ID>
  • layer=<LAYER_NAME>
  • date=<FECHA_DE_IMAGEN> en el siguiente formato "AAAA-MM-DD" ( sin comillas )

/anomalies

  • field=<FIELD_ID>
  • id=<ID_ANOMALIA_PRESELECCIONADA>

/marketplace

  • install=<APP_CLIENT_ID>

/planification

/cropstatus

/report

/histogram

/zooning

/rc_ordenes_trabajo

/markers

/sensors

/staff

/machines

/stocks

  • farm=<FARM_ID>

/aurapp

  • client_id=<APP_CLIENT_ID>

Tambien estan los parametros iniciales que se puede usar sin ruta de funcionalidad:

  • farm --> /#farm=494
  • field --> /#field=283
  • latLon --> /#latLon=[-62,-40]

SoftLinks

¿Qué son los softlinks?

Mismo concepto que los deeplinks, pero a diferencia de los anterior que los utilizabamos para iniciar la plataforma en alguna seccion especifica ( sin estar en la plataforma ), los softlinks serán utilizados para ir a alguna sección especifica de la plataforma ya inicializada. Por ejemplo, estando en la funcionalidad de clima, podemos mandar a ese usuario a instalar una extension, sin que tenga que reiniciar la pagina.

¿Cómo funciona?

Para utilizar estos softlinks debemos incluir un elemento en el DOM. Condiciones del elemento:

  1. Tipo de elemento ancla -->
  2. Clase del elemento = softlink -->
  3. Href a un deeplink -->

¿ Cómo agrego un deeplink si soy desarrollador ?

1- en el archivo features.jsx, en el feature correspondiente agregar la key "url_code" que sera con la que se entre al deeplink por ejemplo /marketplace

2- en la funcion "deeplinkIndexHandler" agregar handler de la funcionalidad en nuevo "case" con el nombre/codigo del punto anterior y que ejecute el handler.

3- en la funcion del handler ejecutar lo que queremos que haga el deeplink y tener en cuenta los parametros que recibe

4- en la constante "featuresParamsFilter" esstan los parametros que recibe cada ruta, agregar ahi en caso de que haya parametros