0

TwitterストリーミングAPIを監視するthingspeakチャネル(フィード)を作成しました。設定した一致基準で新しいツイートが送信されると、フィードが更新されます。フィードが更新されたときにピン13を1秒間ハイに設定するArduinoスケッチの作成に取り組んでいます。GETリクエストは機能していますが、フィードを解析して、新しい更新を受信したかどうかを確認する方法がわかりません。

出発点として、thingspeakが提供するスケッチを使用しています。このスケッチは、フィードの更新を確認し、ツイートからキーワードを取得し、そのキーワードに基づいてライトの色を変更するように設計されています。スケッチのほとんどを変更して、GEライトライブラリに関連するパーツを元のパーツから削除しました。私の問題は、ループで何をチェックする必要があるかを理解することです。これが私が取り組んできたスケッチです:http://pastebin.com/NP13A2Ht

4

1 に答える 1

0

ループ内には、次のものがあります。

if (client.available()) {
    char c = client.read();
    Serial.print(c);
}

これは、ThingSpeak からの応答を読み取るコードのセクションです。

「while」ループを使用してさらに文字を読み取り、「indexOf」を使用してキーワードの文字列をテストできます。

サンプルコードは次のとおりです。

if(client.available() > 0)
{  
    delay(100); 

    String response;
    char charIn;

    do {
        charIn = client.read(); // read a char from the buffer
        response += charIn; // append that char to the string response
    } while (client.available() > 0); 

    // Check the string if it contains the word "test"
    if (response.indexOf("test") > 0)
    {  
        // Do something!
    }
}
于 2013-03-13T20:00:45.460 に答える