¿Quieres usar IFTTT para crear nuevos temas, publicaciones y mensajes privados? ¡Empecemos!
Mediante el uso de Maker Webhooks del servicio IFTTT, podemos realizar llamadas a la API de Discourse. Para ello, primero debemos generar claves API. Puedes crear claves API desde el panel de administración en /admin/api/keys.
También podemos generar claves API específicas para cada usuario a través de las páginas de administración de usuarios.
Ahora crea un nuevo applet en IFTTT y luego selecciona el servicio de activación que prefieras. En este ejemplo, estoy utilizando el servicio de Google Calendar.
\u003cimg src="//assets-meta-cdck-prod-meta.s3.dualstack.us-west-1.amazonaws.com/original/3X/3/4/341b41d93de97b271496b99dcc53d21df4089ac4.png" width="591" height="409"\u003e
Luego, selecciono el activador Cualquier evento nuevo agregado.
\u003cimg src="//assets-meta-cdck-prod-meta.s3.dualstack.us-west-1.amazonaws.com/original/3X/a/9/a92552c97474e03de602f8f5b134e4d3929bc76b.png" width="690" height="330"\u003e
Para conectar tu activador con Discourse, elige Maker Webhooks como servicio de acción y Realizar una solicitud web como acción.
\u003cimg src="//assets-meta-cdck-prod-meta.s3.dualstack.us-west-1.amazonaws.com/original/3X/c/9/c9522a31c798594cadafc8f3962b0eb4cccc6a13.png" width="681" height="500"\u003e
Ahora rellena los campos de acción como se muestra a continuación.
-
URL (requerido):
https://discourse.example.com/posts.json -
Método (requerido):
POST -
Tipo de contenido:
application/json -
Encabezados adicionales:
Api-Key: [TU_CLAVE_API]
Api-Username: [USUARIO_API]
\u003e
Importante: Las credenciales API deben enviarse como encabezados HTTP (Api-Key y Api-Username), no como parámetros de consulta en la URL. Discourse no acepta la autenticación mediante clave API a través de parámetros de consulta en solicitudes POST. El servicio Maker Webhooks de IFTTT admite encabezados personalizados: utiliza el campo Encabezados adicionales para agregarlos.
- Cuerpo:
{
"title": "{{Título}}",
"raw": "{{Descripción}}\\n\\nLugar: {{Lugar}}\\nEn: {{Inicio}} - {{Fin}}",
"category": 4,
"created_at": "{{FechaCreación}}"
}
\u003cimg src="//assets-meta-cdck-prod-meta.s3.dualstack.us-west-1.amazonaws.com/original/3X/7/7/77365735ed9f95d460f2de4c16bcb13dbfda9ea0.png" width="194" height="500"\u003e
En el texto del cuerpo verás muchos campos con corchetes dobles {{ }}. Estos campos (fuentes de contenido) variarán según los activadores de cada servicio. Selecciónalos desde el botón Ingrediente que aparece abajo.
Puedes editar los campos title y raw en el cuerpo JSON según necesites, incluyendo texto adicional. Encuentra el ID de categoría en la URL /site.json de tu sitio y colócalo en el campo de categoría. Ahora haz clic en el botón Crear acción para crear el applet. Después de crear el applet, puede tardar un poco en estar activo.
¡Listo
! Ahora se creará un nuevo tema cada vez que se agregue un nuevo evento en tu Google Calendar
.
Para crear una respuesta a un tema existente en lugar de uno nuevo, el cuerpo debe modificarse como se muestra a continuación (usando topic_id en lugar de category):
{
"title": "{{Título}}",
"raw": "{{Descripción}}\\n\\nLugar: {{Lugar}}\\nEn: {{Inicio}} - {{Fin}}",
"topic_id": 4,
"created_at": "{{FechaCreación}}"
}
Para crear un nuevo mensaje privado:
{
"title": "{{Título}}",
"raw": "{{Descripción}}\\n\\nLugar: {{Lugar}}\\nEn: {{Inicio}} - {{Fin}}",
"target_usernames": "discourse1,discourse2",
"archetype": "private_message",
"created_at": "{{FechaCreación}}"
}
Con este mismo método, puedes realizar solicitudes a la API de Discourse mediante cualquier otro servicio de acción de IFTTT.
