rpc通訊可以從裝置向
伺服器端上報訊息,也可以通過伺服器下發命令給裝置,這種通訊又叫rrpc,這次我們來介紹和實踐一下rrpc的命令通訊;
通過服務端下發命令模擬裝置指示燈的開關,來測試rrpc通訊。
1.由於使用
阿里雲的
phpgit clone
2.編寫使用者介面的php檔案,乙個用來提供使用者選擇開燈還是關燈;
小白學習iot
<?php
echo "
指示燈控制:
";$str = $_server["query_string"];
echo "";
echo "
";?>
3.再編寫乙個控制開燈和關燈的php檔案,這裡用到了php的sdk中的core和iot兩個目錄,檔案**如下,具體的意思為接收介面來的指示燈控制
資訊,然後
配置好ak,sk,產品key,裝置名稱,把控制資訊通過base64編碼後傳送給裝置,最後收到裝置的反饋資訊,並顯示在網頁上。:
小白學習iot
<?php
echo "
指示燈控制:
";$str = $_server["query_string"];
if($str =="led=on")
if($str =="led=off")
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/config.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/acsrequest.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/acsresponse.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/rpcacsrequest.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/iacsclient.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/defaultacsclient.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-core/autoloader/autoloader.php';
include_once 'aliyun-openapi-php-sdk/aliyun-php-sdk-iot /request/v20160104/revertrpcrequest.php';
$iclientprofile = defaultprofile::getprofile("cn-shenzhen","你自
己的ak", "你自己的sk");
$client = new defaultacsclient($iclientprofile);
$request = new iot\request\v20160530\revertrpcrequest();
$request->setproductkey(產品key);
$request->setdevicename("裝置名稱");//裝置名稱
$request->settimeout(5000); //超時時間,單位毫秒.如果超過這個時間裝置沒反應則返回"timeout"
$request->setrpccontent(base64_encode($led));
//推送給裝置的
資料.資料要求二進位制資料做一次base64編碼.(示例裡面是"helloworld"編碼後的值)
$response = $client->getacsresponse($request);
//print_r("\r\n");
//print_r($response->rpccode);
if(isset($response->rpccode))else
}echo "
";?>
4.最後,還需要在模擬裝置端執行示例程式才可以正常執行:
這是檢視裝置端,可以看到已經接收到on的資訊了;
附件為相關編碼檔案:
[ 此帖被魔咒626在2017-06-14 21:33重新編輯 ]
小白學習IOT之模擬裝置RRPC命令下發
rpc通訊可以從裝置向伺服器端上報訊息,也可以通過伺服器下發命令給裝置,這種通訊又叫rrpc,這次我們來介紹和實踐一下rrpc的命令通訊 通過服務端下發命令模擬裝置指示燈的開關,來測試rrpc通訊。git clone 2.編寫使用者介面的php檔案,乙個用來提供使用者選擇開燈還是關燈 小白學習iot...
1 阿里雲IOT學習,裝置接入 web應用
需要用到的工具 1.阿里雲iot平台 2.nodejs 3.visual studio code 阿里雲iot平台為廣大物聯網開發者提供了豐富的服務和應用介面,作為學習,我們實現乙個名為hello燈的專案 hello燈 1.開關控制 2.顯示文字控制 首先,我們要確保已經開通了阿里雲物聯網平台 進入...
小白之深度學習入門
深度學習最近這幾年炒的特別熱,而且在計算機視覺方面應用廣泛,故而決定學習了解一波。那麼,第乙個問題就來了,什麼是機器學習?哇咔咔,這個光看名字就知道了,就是讓機器具有人類不斷學習的能力,並且解決我們現有的一些問題。先來說幾個簡單的概念 特徵 就是物體的屬性,我們人類經過學習之後,可以很快的將簡單的特...