Aplica a
Iniciar un flujo de trabajo en blanco para el Servicio Meteorológico de EE. UU.
El flujo de trabajo se desencadena cuando se marca una casilla de verificación en una hoja de Smartsheet. Utiliza las coordenadas de esa fila para obtener el último pronóstico meteorológico del Servicio Meteorológico de EE. UU. y, luego, completa la misma fila en Smartsheet con esos datos.
¿Quién puede usar esto?
Planes:
- Bridge by Smartsheet
Utilizará el Servicio Meteorológico de EE. UU. para obtener pronósticos, ya que no necesita una cuenta para acceder a sus datos meteorológicos.
Para obtener el pronóstico, debe realizar dos llamadas API al Servicio Meteorológico de EE. UU.:
- Uno para localizar el punto de cuadrícula en el que se encuentra una ubicación geográfica.
- Una segunda para obtener el pronóstico de esa cuadrícula identificada.
No es necesario estar familiarizado con las llamadas a la API para seguir los pasos de esta guía, ya que proporciona todo lo que necesita para completar el flujo de trabajo.
Estos son los pasos para crear el flujo de trabajo:
- Crear el flujo de trabajo
- Crear la hoja
- Autenticar con Smartsheet y configurar el desencadenador
- Configurar el módulo Get Row (Obtener fila)
- Configurar la unión
- Configurar la primera llamada API
- Configurar la segunda llamada API
- Configurar el módulo Update Row (Actualizar fila)
Paso 1: Crear el flujo de trabajo
- En Bridge, seleccione Nuevo flujo de trabajo de la ficha Flujos de trabajo panel.
Asigne un nombre a su flujo de trabajo y seleccione Create New (Crear nuevo). Esto lo lleva al diseñador.
Todos los flujos de trabajo comienzan con un desencadenador y un estado.
Paso 2: Crear la hoja
Antes de configurar el desencadenador en Bridge, necesita una hoja en Smartsheet que tenga al menos cinco columnas.
Configure su hoja para que tenga los siguientes nombres y tipos de columnas:
Nombre de la columna | Tipo de columna |
---|---|
Fecha | Fecha |
Hoy | Casilla de verificación |
Longitud | Texto |
Latitud | Texto |
Pronóstico del tiempo | Texto |
La columna Weather (Forecast Pronóstico del tiempo) puede ser la columna primaria o una columna de texto regular.
En la primera celda de la columna Today (Hoy), pegue la siguiente fórmula:
=SI (Date@row = TODAY (), verdadero, falso)
- Seleccionar Intro.. De esta manera, se marca la casilla de verificación si la columna Date (Fecha) es la fecha de hoy, que luego puede usar para desencadenar su flujo de trabajo en Bridge.
- Haga clic con el botón derecho del mouse en la celda con la fórmula y seleccione Convert to Column Formula (Convertir en fórmula de columna). Esto garantiza que todas las filas nuevas agregadas a la hoja utilicen esa fórmula en la columna Today (Hoy).
- Guarde la hoja.
- Antes de volver al diseñador en Bridge, copie el ID de hoja. Para encontrar el ID de hoja, seleccione File (Archivo) > Properties (Propiedades).
Paso 3: Configurar el desencadenador
En el diseñador, seleccione el elemento Trigger al inicio del flujo de trabajo. De esta manera, se abre un panel a la derecha del diseñador en el que puede configurar el tipo de desencadenador que desea utilizar. Dado que el flujo de trabajo debe activarse por un evento en Smartsheet, el tipo de desencadenador utilizado es un desencadenador de integración.
En el panel, seleccione la página Integrations (Integraciones) debajo de la sección Integrations (Integraciones) expandida automáticamente.
Se abrirá una nueva pestaña con la página Integrations (Integraciones).
- Busque la integración de Smartsheet y seleccione el logotipo.
- Seleccione Continue (Continuar).
- Seleccionar Autentique.
- Esto abre otra ventana en la que se le pregunta si desea permitir el acceso de Bridge a su cuenta de Smartsheet. Seleccione Allow (Permitir).
Si la autenticación se realizó correctamente, la ventana cambia a la pestaña Triggers (Desencadenadores).
Expanda la sección Triggers (Desencadenadores) y seleccione la fila que contiene el ícono más:
- En el campo Sheet ID (ID de hoja), pegue el ID de hoja que copió cuando creó la hoja. Si sabe que el nombre de la hoja es único, simplemente puede escribir el nombre.
- En la lista desplegable Event Type (Tipo de evento), seleccione When Column Values are Changed (Cuando se modifican los valores de las columnas).
- En el campo que se agrega cuando selecciona Event Type (Tipo de evento), escriba el nombre de la columna Hoy.
En la lista desplegable Select Workflow (Seleccionar flujo de trabajo), elija el flujo de trabajo que creó anteriormente y seleccione Save (Guardar).
Puede darse cuenta que el desencadenador se configuró correctamente porque la ventana emergente se volverá a cargar y contraerá la sección Triggers (Desencadenadores).
- Cierre la pestaña y regrese al diseñador.
Errores cuando guarda el desencadenador
Si recibe un mensaje de error al guardar un desencadenador, revise los siguientes elementos:
- Asegúrese de escribir el nombre de la columna exactamente como lo hizo en la hoja.
- Si escribió el nombre de la hoja en lugar de usar el ID de hoja, verifique que escribió esto exactamente igual.
- Si usted no es el propietario de la hoja, verifique los permisos de la hoja para asegurarse de que tiene acceso.
- Si ya hay otros desencadenadores configurados, puede haber un problema con otro desencadenador. Revise los otros desencadenadores para asegurarse de que no hubo un cambio en los permisos de uno de ellos o que la hoja a la que se hace referencia en el desencadenador aún existe.
Paso 4: Configurar el módulo Get Row (Obtener fila)
Ha configurado el desencadenador para que ejecute el flujo de trabajo al cambiar el Hoy , esta acción ahora enviará información básica a Bridge. Para el primer paso de su flujo de trabajo, debe recuperar parte de esta información inicial:
- Para comenzar, defina la celda Date (Fecha) de la primera fila con la fecha de hoy. Esta acción debería marcar automáticamente la casilla de la columna Hoy debido a la fórmula que ingresó anteriormente.
- Guarde la hoja y regrese al diseñador en Bridge.
- Abra Run Log (Registro de ejecución). Al principio, está vacío, así que seleccione Refresh (Actualizar). Esto actualiza el panel; debería aparecer una ejecución con el estado Completed.
- Para mostrar los datos iniciales enviados a Bridge desde Smartsheet, haga clic en la ejecución y expanda la fila Trigger (Desencadenador) y, luego, la fila Event (Evento).
- Pase el cursor sobre rowId en los datos del desencadenador y seleccione el ícono más para ver una lista desplegable.
En la lista desplegable, seleccione Copy Data Reference (Copiar referencia de datos). De esta manera, se copia una referencia al ID de fila que cambió al portapapeles.
Al usar la referencia en lugar de la fuente JSON, el flujo de trabajo siempre obtiene la fila que cambió en lugar de observar siempre la misma fila. Esto es importante, ya que el cambio de fila probablemente será diferente en cada ejecución del flujo de trabajo.
Actualizar el estado y agregar un módulo
Haga clic en el estado gris y cambie el campo Name (Nombre) por Get Row (Obtener fila).
Se recomienda asignar un nombre a los estados según lo que hagan los módulos que se muestran debajo de ellos, a fin de facilitar la lectura de sus flujos de trabajo.
- Busque el módulo Get Row (Obtener fila) en el menú de la izquierda. Utilice el campo de búsqueda o búsquelo expandiendo Integrations (Integraciones)> Smartsheet > Get Row (Obtener fila).
- Arrastre el módulo al flujo de trabajo, debajo del estado gris. Se abrirá automáticamente un panel para configurar el módulo.
- En el campo Row ID (ID de fila) , pegue la referencia que copió de rowId en Run Log (Registro de ejecución). El valor pegado debe ser {{runtime.event.rowId}}.
- Para obtener el ID de hoja, abra Run Log (Registro de ejecución) nuevamente y busque el ID de hoja expandiendo los datos del desencadenador. Copie la referencia al ID de hoja como lo hizo con el ID de fila anteriormente, seleccionando el ícono more.
- Haga clic en el módulo Get Row (Obtener fila) de nuevo y pegue la referencia en el campo Sheet (Hoja). El valor pegado debe ser {{runtime.sheetID}}.
Seleccione Eliminar en la parte superior de la página.
Brandfolder Image
Paso 5: Configurar la unión
Ahora, debe determinar si el cambio en la casilla de verificación de la hoja se debió a que la casilla estaba marcada o no. Se debe ignorar una casilla no marcada; sin embargo, si la casilla cambia a marcada, significa que la fecha establecida en la columna Fecha es la fecha de hoy y desea obtener el pronóstico del tiempo.
Para hacerlo, debe hacer referencia a la celda con la casilla de verificación:
- Vuelva a la hoja y cambie la fecha de la fila que agregó anteriormente para desmarcar la casilla. Luego, guarde la hoja.
- En Bridge, vuelva a abrir Run Log (Registro de ejecución) y seleccione All Runs (Todas las ejecuciones) en la parte superior izquierda del panel. Actualice la lista para ver una nueva ejecución completada en la parte superior de la lista.
- Abra esta nueva ejecución y amplíe el paso Smartsheet: Get Row (Obtener fila) para revelar los datos de la fila.
- En Row (fila) > Cells (Celdas) > Today (Hoy) puede ver que el valor es False (Falso). Esto le indica que la casilla de verificación de la columna Hoy en la fila que cambió, no estaba marcada.
- Con el menú desplegable, copie la referencia de datos de este valor.
Agregar una unión condicional coincidente
El siguiente paso es agregar una unión para verificar si el valor coincide con los valores de texto True (Verdadero) (marcada) o False (Falso) (desmarcada).
- En el campo de búsqueda, escriba Match (Coincidencia) o busque la unión; para ello, expanda Utilities (Utilidades) > Conditional Junctions (Uniones condicionales) > Match (Coincidencia).
- Arrastre la unión por debajo del módulo Get Row (Obtener fila) y asígnele el nombre Fecha de hoy.
Esta unión consta de tres componentes: la unión en sí y dos estados de marcador de posición. Puede encontrar más estados para arrastrar al flujo de trabajo en la parte superior del menú de la izquierda debajo de Pinned Items (Elementos anclados) > New State(Nuevo estado).
Agregar estados a la unión
- Arrastre un nuevo estado al marcador de posición success y asígnele el nombre True (Verdadero).
- Arrastre un nuevo estado al marcador de posición failure y asígnele el nombre False (falso).
Agregar la referencia de datos a la unión
- Seleccione la unión Fecha de hoy para abrir el panel de configuración.
- En la ventana First Value (Primer valor), pegue la referencia que copió.
El valor pegado debe ser {{state.Get Row.smartsheet.get_row.row.cells.Today.value}} - En el campo Second Value (Segundo valor), escriba la palabra True (Verdadero).
Guarde lo que creó hasta ahora.
Brandfolder Image
Paso 6: Configurar la primera llamada API
Configurar un perfil para sus llamadas a la API
Para recuperar datos de pronóstico del tiempo, primero debe crear un perfil para las llamadas a la API del Servicio Meteorológico de EE. UU. Los perfiles son una forma de guardar información clave para las API del sistema con las que desea conectar sus flujos de trabajo.
- En su cuenta de Bridge, vaya a la pestaña Integrations (Integraciones).
- Seleccione la utilidad Call API (Llamar a API).
Seleccione Continue (Continuar) > Add to Profiles (Agregar a perfiles).
Brandfolder Image- Asigne un nombre a su perfil. Cada nombre de perfil debe ser único. Por ejemplo: Clima de EE. UU.
- En la ventana Base URL (URL base), escriba https://api.weather.gov.
- Expanda el menú desplegable Headers (Encabezados):
- En el campo Key #1 (Clave N.º 1), escriba User-Agent (usuario-agente).
En el campo Value #1 (Valor N.º 1) , ingrese el nombre de su empresa y el correo electrónico separados por una coma.
Este es un requisito del Servicio Meteorológico de EE. UU. para que puedan contactarlo si observan actividades o comportamientos inesperados en sus registros.
- Guarde el perfil.
- Vuelva al flujo de trabajo.
Configurar el módulo Make API Call (Realizar llamada a API) en su flujo de trabajo
La primera llamada a la API identifica el punto de cuadrícula de una ubicación ingresada en la hoja.
- Utilice el campo de búsqueda para encontrar el módulo Make API Call o expanda Utilities > Utility Functions > Make API Call..
- Arrástrelo al flujo de trabajo debajo del estado True (Verdadero).
- En el módulo Make API Call (Realizar llamada a API), seleccione el perfil que acaba de crear en el menú desplegable.
- En el campo Endpoint (Punto final), incluya los siguientes puntos: points/{{states.Get Row.smartsheet.get_row.row.cells.Longitude.value}},{{states.Get Row.smartsheet.get_row.row.cells.Latitude.value}}
- Configure el campo Method (Método) con GET.
Guarde el flujo de trabajo.
Brandfolder Image
Referencias de datos para la llamada a la cuadrícula
La URL anterior se crea para usted, ya que no es necesario comprender cómo funcionan las solicitudes de API para esta guía. Esta URL hace referencia a los valores de longitud y latitud de la fila que desencadenó el flujo de trabajo.
Si quiere obtenerlos usted mismo, debe desencadenar el flujo de trabajo nuevamente. Esta vez, debe asegurarse de que la casilla de verificación esté marcada. Agregue información a una nueva fila en lugar de usar la primera y asegúrese de establecer la fecha en la fecha de hoy para que el flujo de trabajo se desplace por la rama izquierda de la unión.
Coordenadas
El Servicio Meteorológico de EE. UU. requiere un máximo de cuatro posiciones decimales para las coordenadas.
Paso obligatorio
Necesita coordenadas para ingresarlas en los campos Longitude (Longitud) y Latitude (Latitud). Por ejemplo, puede usar 47.6174 y -122.2001 para conocer el clima de la oficina de Bellevue de Smartsheet.
Paso 7: Configurar la segunda llamada API
La segunda llamada a la API obtiene el pronóstico del Servicio Meteorológico de EE. UU. en función de los puntos de cuadrícula ubicados anteriormente. Para configurarlo, debe agregar un nuevo estado y otro módulo Make API Call (Realizar llamada a API) al flujo de trabajo.
- Arrastre y suelte un nuevo estado desde los elementos anclados en la parte superior del menú de la izquierda y asígnele el nombre Get Forecast (Obtener pronóstico).
- Luego, arrastre otro módulo Make API Call (Realizar llamada a API) en el estado nuevo.
- En el módulo Make API Call (Realizar llamada a API), seleccione el perfil que acaba de crear en el menú desplegable.
- En el campo Endpoint (Punto final), incluya lo siguiente: gridpoints/{{states.true.call_api.make_api_call.response.properties.gridId}}/{{states.true.call_api.make_api_call.response.properties.gridX}},{{states.true.call_api.make_api_call.response.properties.gridY}}/forecast
- Configure el campo Method (Método) con GET.
Guarde el flujo de trabajo.
Brandfolder Image
Referencias de datos para la llamada al pronóstico
Si desea obtener las referencias de datos utilizadas en el extremo anterior, desencadene el flujo de trabajo nuevamente. Asegúrese de que la fila modificada o agregada tenga la fecha de hoy para que la casilla de verificación cambie a marcada.
Cuando haya creado la nueva fila y guardado la hoja, busque la última ejecución en Run Log (Registro de ejecución) y expanda el último paso: Call API (Llamar a API): Make API Call (Realizar llamada a API). En Output (Salida) > Properties (Propiedades), busque los campos gridId, gridX y gridY. Luego, puede usar estas referencias en la URL para la llamada al servicio meteorológico.
Paso 8: Configurar el módulo Update Row (Actualizar fila)
Ahora que puede obtener datos meteorológicos con el flujo de trabajo, el último paso es actualizar la hoja con el pronóstico.
Agregar los ID de hoja y de la fila
- Active el flujo de trabajo nuevamente. Asegúrese de que la fila modificada o agregada tenga la fecha de hoy para que la casilla de verificación cambie a marcada.
- Agregue otro estado debajo del último módulo de llamada a la API y asígnele el nombre Update Row (Actualizar fila).
- Busque el módulo Update Row (Actualizar fila) o búsquelo expandiendo Integrations (Integraciones)> Smartsheet > Update Row (Actualizar fila).
- Desde Run Log (Registro de ejecución), expanda el desencadenador de la última ejecución y busque los valores del ID de hoja y el ID de fila .
- Utilice las referencias de datos para definir los campos Sheet ID (ID de hoja) y Row ID (ID de fila) para el módulo Update Row (Actualizar fila).
Agregar la referencia de datos detallados del pronóstico
- Regrese a Run Log (Registro de ejecución) y expanda el último paso (el último de los dos módulos Make API Call [Realizar llamada a API]). Los datos del Servicio Meteorológico de Estados Unidos, incluidas las previsiones meteorológicas de siete días, proporcionan una variedad de información.
- Busque el clima actual en Output (Salida) > Properties (Propiedades) > Periods (Períodos) > 0.
- Para este flujo de trabajo, debe usar la referencia a detailedForecast. Copie la referencia de datos.
- Abra de nuevo el módulo Update Row (Actualizar fila) y expanda la sección Cells (Celdas).
- Pegue la referencia en el campo Value # (Valor N.º) . El valor pegado debe ser: {{states.Get Forecast.call_api.make_api_call.response.properties.periods.0.detailedForecast}}
- En el campo Key #1 (Clave N.º 1), ingrese el nombre de la columna Pronóstico del clima.
- Guarde el flujo de trabajo.
Si quiere asegurarse de que el flujo de trabajo no falle si el Servicio Meteorológico de EE. UU. no puede devolver información, puede ajustar la referencia de datos en campo Value # (Valor N.º) a: {{states.Get Forecast.call_api.make_api_call.response.properties.periods.0.detailedForecast||Unable to fetch weather data}}
De esta manera, se garantiza que el módulo actualice la fila con el texto detrás de los símbolos “||” si no hay datos en detailedForecast.
Flujo de trabajo completado
El flujo de trabajo se ejecuta cada vez que agrega una nueva fila (ya sea hacia la izquierda o hacia la derecha de la unión). También se ejecuta cada vez que la fecha de hoy es la fecha establecida en una fila existente. La columna Pronóstico del clima de su hoja se completa automáticamente si el flujo de trabajo desciende por la rama izquierda de la unión o si la casilla Hoy está marcada.