Contenuto principale

Questa pagina è stata tradotta con la traduzione automatica. Fai clic qui per vedere l’originale in inglese.

Send Alert

Crea un avviso e-mail con HTTP POST

Richiesta

Metodo HTTP

POST

URL

https://api.thingspeak.com/alerts/send

Parametri URL

Nessun parametro disponibile

Intestazioni

Sono obbligatorie le intestazioni ThingSpeak-Alerts-API-Key e Content-Type . L'intestazione Accept è facoltativa.

NomePrioritàDescrizioneTipo di valore
ThingSpeak-Alerts-API-KeyNecessario

Specifica la chiave API degli avvisi, che puoi trovare nel tuo profilo. Questa chiave è diversa dalle chiavi API del canale e API dell'utente.

stringa

Content-TypeNecessario

  • application/json

  • application/x-www-form-urlencoded

stringa

Parametri del corpo

NomePrioritàDescrizioneTipo di valore
subjectOpzionale

Specificare l'oggetto del messaggio e-mail, fino a 60 caratteri.

stringa

bodyOpzionale

Specificare il corpo del messaggio e-mail, fino a 500 caratteri.

stringa

Risposta

Successo

Codice di stato HTTP

202 Accepted

Errore

È possibile utilizzare l'intestazione Accept per controllare i dettagli forniti con i messaggi di errore. Fornisci all'intestazione Accept il valore application/json,application/problem+json e il server restituirà messaggi di errore dettagliati insieme al codice di risposta HTTP standard.

Per l'elenco completo dei possibili errori HTTP, vedere Codici di errore.

Esempi

espandi tutto

Utilizzare POSTMAN per effettuare richieste HTTP utilizzando l'API RESTful per ThingSpeak.

Crea un avviso con un oggetto e un corpo dettagliati.

  1. Creare la richiesta POST. In POSTMAN, seleziona POST dall'elenco dei verbi HTTP e inserisci https://api.thingspeak.com/alerts/send nella barra degli indirizzi.

  2. Inserisci le intestazioni. Selezionare la scheda Headers. Inserisci queste coppie chiave-valore.

    ChiaveValore
    Thingspeak-Alerts-API-KeyXXXXXXXXXXXXXXXX
    Content-Typeapplication/json

  3. Inserisci le informazioni sul corpo. Selezionare la scheda Body e selezionare raw. Inserisci questo codice JSON.

    {
        "subject": "ThingSpeak Alert email",
        "body": "The water level has reached its limit"
    }

La risposta è in formato JSON. Il valore di risposta del server è 202 OK, che indica una richiesta accettata. L'e-mail viene inviata poco dopo.

Utilizzare MATLAB® per generare un avviso quando il valore medio in un canale supera una soglia impostata. Questo esempio utilizza il canale 276330 ThingSpeak, che contiene dati in tempo reale sulla temperatura dell'ufficio nel campo 7. Tieni presente che puoi scrivere il seguente codice in qualsiasi ambiente MATLAB, inclusi MATLAB Analysis e desktop MATLAB.

Imposta la chiave API degli avvisi e l'URL per la richiesta. La chiave API degli avvisi si trova in Account > My Profile.

Leggere i dati dal canale e calcolare il valore medio dei dati.

data = thingSpeakRead(276330,"NumMinutes", 100);
aveTemp = mean(data(:, 7));

Imposta la chiave API degli avvisi e l'URL per la richiesta. La chiave API degli avvisi si trova in Account > My Profile.

apiKey = 'XXXXXXXXXXXXXXXX';
alertURL = "https://api.thingspeak.com/alerts/send";

La richiesta di invio degli avvisi richiede un'intestazione della chiave API. Compila weboptions in modo che webwrite possa scrivere correttamente la tua richiesta HTTP. Crea anche il corpo e l'oggetto dell'email.

Suggerimento

Quando si crea un avviso in MATLAB utilizzando webwrite, l'intestazione Content-Type richiesta viene specificata automaticamente.

options = weboptions("HeaderFields", ["ThingSpeak-Alerts-API-Key", apiKey ]);
alertBody = sprintf("The temperature is %0.2f°F.", aveTemp);
alertSubject = sprintf("🌡 Temperature exceeded 60.0°F!");

Se la temperatura è superiore a 60 °F, invia un avviso.

if aveTemp > 60.0
    webwrite(alertURL, "body", alertBody, "subject", alertSubject, options);
end    

Il timestamp utilizzato nell'e-mail è nel fuso orario impostato nelle Impostazioni ThingSpeak, che puoi trovare in Account > My Profile. Puoi utilizzare la chiamata API Get Alert History per monitorare lo stato della tua email.

Ora puoi utilizzare l'app TimeControl per programmare l'esecuzione di questo codice a intervalli regolari. Vai su Apps > TimeControl e seleziona nuovo TimeControl. Impostare Frequency su Ricorrente e Recurrence su 100 minuti. Selezionare Action come analisi MATLAB e scegliere il nome dell'analisi MATLAB scritta nel passaggio precedente. Salva il TimeControl.

Quando la temperatura media supera i 60 ℉, riceverai un'e-mail da ThingSpeak.

Limitazioni

  • Gli utenti hanno un limite di 2 avvisi ogni 30 minuti. Il limite di velocità viene applicato al momento della richiesta, non al momento dell'invio dell'e-mail. Se si supera il limite di richieste, l'API restituisce il codice di risposta 429.