我创建了一个thingspeak频道(Feed)来监控Twitter流媒体API。一旦我发送了一条新的推文,我的Feed会根据我设置的匹配条件进行更新。我正在编写Arduino sketch,当我的Feed更新时,它会将引脚13设置为高电平一秒钟。我有一个有效的GET请求,但我不知道如何解析Feed并检查它是否收到了新的更新。
作为一个起点,我使用a sketch provided by thingspeak设计用于检查其Feed以获取更新,从推文中获取关键字,并根据该关键字更改灯光颜色。我已经修改了大部分草图,从原版中删除了与GE光库相关的部分。我的问题是理解我的循环中需要检查的内容。这是我一直在研究的草图:http://pastebin.com/NP13A2Ht。
答案 0 :(得分: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!
}
}