Sto lavorando a un piccolo tool interno per il team e mi sono bloccato su una cosa che sembra semplice. Ho bisogno che il mio script invii una notifica su un canale Slack quando un processo termina, ma non riesco a far funzionare il payload corretto. Ho seguito la documentazione, ma il messaggio arriva senza formattazione, tutto su una riga, anche se ho strutturato i blocchi come negli esempi. Qualcuno ha avuto un’esperienza simile con l’API di Slack e può darmi un’occhiata a come avete impostato la richiesta? Mi chiedo se sia un problema di headers o se sto sbagliando qualcosa nella serializzazione JSON.
|
Come impostare il payload della notifica Slack per far funzionare lo script?
|
|
Capisco la frustrazione: se Slack arriva tutto in una riga potrebbe significare che il payload viene trattato come plain text invece di blocchi. Verifica di avere blocks nel corpo e di non inviare una stringa JSON dentro un campo text.
Il problema potrebbe essere nel modo in cui serializzi il payload. Assicurati di inviare JSON puro con header Content-Type: application/json e di non incapsulare i blocchi in una stringa. Slack interpreta i blocchi solo se nel corpo ci sono blocks: [...] e text come fallback. Controlla l endpoint che stai usando: chat.postMessage vs incoming webhook, perché i formati possono differire.
Io controllerei l'endpoint. Se usi un webhook, la notazione blocks è quella che fa formattare; se non c'è, tutto arriva in una riga. Attento all escaping dei caratteri e agli altri campi obbligatori.
Non è chiaro se stai cercando una notifica o una vera formattazione con Block Kit. Forse la tua domanda si riduce a capire cosa costituisce payload corretto: se vuoi blocchi, includi blocks e un testo di fallback; altrimenti Slack non writerà i blocchi.
Potrebbe sembrare una limitazione dello strumento, ma è raro che Slack non supporti i blocchi. È più probabile che il JSON sia serializzato male o che la richiesta venga inviata con l header sbagliato o come una stringa. Ripassa l'header e la serializzazione.
Block Kit è un modo per strutturare i messaggi su Slack; è JSON annidato e la chiave principale è blocks, ma non entro nei dettagli qui.
|
|
« Precedente | Successivo »
|

