發表文章

目前顯示的是有「中華電信IoT」標籤的文章

使用mosquitto-client接收/發送mqtt訊息

這裡簡單展示如何接收發送mqtt訊息 使用的是IOT大平台上的heartbeat功能, 文件參考 這裡  

設定networkSecurityConfig讓APP可用http存取特定domain

  在用APP測試iot大平台時,有部份api是以http來存取的, android現在版本有限制http的連線, 所以需要加domain才能存取,可參考 官方說明 我這裡用的network_security_config.xml如下 <? xml version ="1.0" encoding ="utf-8" ?> <network-security-config> <base-config> <trust-anchors> <certificates src ="system" /> </trust-anchors> </base-config> <domain-config cleartextTrafficPermitted ="true" > <domain includeSubdomains ="true" > iot.cht.com.tw </domain> </domain-config> </network-security-config> 並在AndroidManifest.xml中的application tag的屬性中加入 android :networkSecurityConfig ="@xml/network_security_config"

使用IoT大平台語音辨識/語音轉文字(STT)功能

圖片
步驟1. 登入IoT大平台會員 Step1. Login CHT IoT platform 我想這不需要多介紹... 步驟2. 取得IoT大平台的API金鑰 Step2. Register X-API-API key for STT/TTS 登入大平台後,右上角個人圖像,點下去會顯示[API金鑰管理] 或是直接前往網址 https://iot.cht.com.tw/iot/appkey 申請金鑰時預設是全部都可以使用,如果你只是要用STT功能,找到如下圖所示的chtlasr國語語音辨識服務部分勾選即可。 步驟3. 開始使用 Step3. Ready for use the speech-to-text api API的說明頁https://iot.cht.com.tw/iot/developer/intelligence 辨識包含三個步驟: (1) 取得ASR ID  (2) 傳送語音資料, 並獲得辨識結果 (3) 結束辨識 我下面假定你步驟2取得的x-api-key是 aaaaaaaa-bbbb-cccc-dddd-123456789ab (1) 取得ASR ID curl -v -i \     -X POST \     -H "X-API-Key: aaaaaaaa-bbbb-cccc-dddd-123456789ab " \     -H "Accept: application/json" \ https://iot.cht.com.tw/apis/CHTIoT/chtlasr/v2/MyServlet/tlasr?Action=connect 正常的話伺服器會回應http 200,內容會中會包ASR ID( 紅色粗體 標示){"ResultStatus":"Success","AsrReferenceId":" tlasr_116017588_20190709_145925058_009 ","ApiProcessingTime":"2019-07-09T14:59:25.058_2019-07-09T14:59:25.339_281ms...

中華電信IOT大平台的Android App遭遇問題

圖片
中華電信IoT大平台的Android專案展示App https://github.com/yuzheng/android-iot-app 遭遇問題1:Android Studio版本問題 修改android-iot-app/app/build.gradle (1) 移除專案原先buildToolsVersion (2) 改build.gradle的相依library的語法   androidTestCompile改androidTestImplementation   compile改implementation 遭遇問題2:無法解析專案,缺少chtiotlib Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve project:chtiotlib. Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath': Could not resolve project:chtiotlib. Unable to resolve dependency for ':app@debugUnitTest/compileClasspath': Could not resolve project:chtiotlib. ... 這是因為專案有使用到git submodule,就是用來與IoT大平台連線用的lib: chtiotlib  建議要先學習一下git submodule的用法,可參考 這裡 。 git submodule的設定檔案在.gitmodules,裡面會顯示submodule的目錄和對應的url來源。 更新submodule使用git submodule update可更新,只是我update有遭遇目錄有檔案存在,無法寫入的錯誤,所以就把chtiotlib裡面的檔案都刪掉再update就可以。 遭遇問題3:無法連線proxy.cht.com.tw 開啟gradle.properties把systemProp.http.proxyHost和systemProp.http.prox...