Main Content

本页采用了机器翻译。点击此处可查看英文原文。

使用 MATLAB 中的 TalkBack App 进行队列命令

TalkBack 使任何设备都可以根据排队的命令进行操作。此示例演示如何使用 MATLAB® 中的 TalkBack App 以及内置 MATLAB 函数(例如 webread 和 )对命令进行排队$$$$。示例,如果您有一扇带有无线网络和运动传感器的门,您可以对打开和关闭门的命令进行排队。当门感应到有人在附近时,打开门。指定时间后,关门。在 ThingSpeak™ 中,使用 MATLAB 分析 App 编写 MATLAB 代码。

webread 与 TalkBack 结合使用

获取 TalkBack 命令

您可以使用 webread 发送 HTTP GET请求来获取 TalkBack 命令。

指定 TalkBack App 和 TalkBack 命令的 ID。您可以在 TalkBack 应用页面中找到 TalkBack 应用 ID、命令 ID 和 TalkBack API 密钥。

% TalkBack app ID
TalkBack_ID = '7991';
% TalkBack command ID
Command_ID = '1322093';
% TalkBack app API key
TalkBack_apikey = 'I586FE13SXIN9ZET';

指定 api_key 查询参数。webread 将 Web 服务查询参数名称和值附加到 url

url = strcat('https://api.thingspeak.com/talkbacks/',TalkBack_ID,'/commands/',Command_ID,'.json');
data = webread(url,'api_key',TalkBack_apikey)

点击 Save and Run 以在 MATLAB 分析 App 中运行 MATLAB 代码。

webread 以结构数组形式返回搜索结果页面的 JSON 对象。

data = 
                id: 1322093
    command_string: 'OPENDOOR'
          position: 2
       executed_at: []
        created_at: '2016-04-13T20:08:58Z'

命令 'OPENDOOR' 现在打开启用 Wi-Fi 的门。

POST TalkBack 命令

您可以使用 webread 发送 HTTP POST请求,使用 weboptions 通过 TalkBack App 添加 TalkBack 命令。

url =  strcat('https://api.thingspeak.com/talkbacks/',TALKBACK_ID,'/commands.json');
options = weboptions('RequestMethod','post');
data = webread(url,'api_key','I586FE13SXIN9ZET','command_string','OPENDOOR',options)

点击 Save and Run 以在 MATLAB 分析 App 中运行 MATLAB 代码。以下输出显示在 Output 部分:

data = 
                id: 1328190
    command_string: 'OPENDOOR'
          position: 7
       executed_at: []
        created_at: '2016-04-14T18:26:45Z'

命令 'OPENDOOR' 现在打开启用 Wi-Fi 的门。

使用 webwrite 与 TalkBack

编写 TalkBack 命令

使用 TalkBack App 创建 TalkBack 命令。打开新的 MATLAB 分析 App ,使用 webwrite 将命令写入 TalkBack App 。

使用您的 TalkBack ID、命令 ID 和 TalkBack API 密钥呼叫 webwrite。您可以在 TalkBack 应用页面中找到 TalkBack 应用 ID、命令 ID 和 TalkBack API 密钥。

% TalkBack app ID
TalkBack_ID = '7991'; 
% TalkBack command ID
Command_ID = '1322093'; 
% TalkBack app API key
TalkBack_apikey = 'I586FE13SXIN9ZET'; 
url =  strcat('https://api.thingspeak.com/talkbacks/',TALKBACK_ID,'/commands.json');
response = webwrite(url,'api_key',TALKBACK_APIKEY,'command_string','CLOSEDOOR')

点击 Save and Run 以在 MATLAB 分析 App 中运行 MATLAB 代码。以下输出显示在 Output 部分:

response =
                id: 1333480
    command_string: 'CLOSEDOOR'
          position: 10
       executed_at: []
        created_at: '2016-04-15T13:30:42Z'

命令 'CLOSEDOOR' 现在关闭启用 Wi-Fi 的门。

将 TalkBack App 命令编写为表单编码字符数组

或者,您可以将 TalkBack API 密钥和命令编码为表单编码的字符数组。

数据 = ['api_key=',TalkBack_apikey,'& command_string=','CLOSEDOOR'];
响应 = webwrite(url,数据)

点击 Save and Run 以在 MATLAB 分析 App 中运行 MATLAB 代码。以下输出显示在 Output 部分:

response =
                id: 1333835
    command_string: 'CLOSEDOOR'
          position: 11
       executed_at: []
        created_at: '2016-04-15T14:50:53Z'

命令 'CLOSEDOOR' 现在关闭启用 Wi-Fi 的门。

将 TalkBack App 命令编写为 JSON 对象

或者,您可以将命令作为 JSON 对象写入 TalkBack App 。创建一个结构,其中字段是您的 TalkBack 键和命令。使用 weboptions 指定媒体类型为 'application/json'

数据 = struct('api_key',TalkBack_apikey,'command_string','CLOSEDOOR');
选项 = weboptions('MediaType','application/json');
响应 = webwrite(url,数据,选项)

点击 Save and Run 以在 MATLAB 分析 App 中运行 MATLAB 代码。以下输出显示在 Output 部分:

响应=
 ID:1334587
命令字符串:'关门'
位置:12
执行时间:[]
创建于:'2016-04-15T17:45:31Z'

命令 'CLOSEDOOR' 现在关闭无线网络启用门。

另请参阅

(MATLAB) | (MATLAB) | (MATLAB)

相关主题