LINE 的 BOT API Trial Account可透過 LINE 連結現有系統或服務,設立能傳送或接收 API 驅動訊息的 BOT 帳號,開發出 LINE 使用者與企業間雙向溝通的 API 功能。
https://business.line.me/
https://developers.line.me/bot-api/getting-started-with-bot-api-trial
大型網站架構..net 架構師.rabbitMQ.redis.行動開發.APP開發教學.PHP Laravel開發..net core C# 開發.架構師之路.Delphi開發.資料庫程式.進銷存.餐飲POS系統
LINE 的 BOT API Trial Account可透過 LINE 連結現有系統或服務,設立能傳送或接收 API 驅動訊息的 BOT 帳號,開發出 LINE 使用者與企業間雙向溝通的 API 功能。
https://business.line.me/
https://developers.line.me/bot-api/getting-started-with-bot-api-trial
作用: 一般的灑水系統是時間自動到時灑水,但與實際狀況不符。可以利用土壤溼度計偵測土壤的溼度再予以灌溉。
材料: Arduino *1 、麵包版*1、16*2 LCD*1 、土壤溼度計*1、溫溼度計*1、繼電器*1、太陽能電子板*1、抽水馬達*1
程式:
#include
#include
#define dht_dpin A1 // 溫濕度資料腳位
LiquidCrystal_I2C lcd(0x27, 16, 2); // 顯示器
byte bGlobalErr;
byte dht_dat[5];
int relay = 10; //繼電器腳位為10
void setup() {
InitDHT();
delay(300);
lcd.begin();
lcd.backlight();
lcd.print(“Lin Shou Shan”);
pinMode(relay,OUTPUT); //定義繼電器腳位10為輸出
}
void loop() {
ReadDHT();
lcd.clear();
switch (bGlobalErr){
case 0:
String TT,HH;
HH = String(dht_dat[0])+’.’+String(dht_dat[1]);
TT = String(dht_dat[2])+’.’+String(dht_dat[3]);
lcd.setCursor(0, 0);
lcd.print(“H:”+HH+” T:”+TT); // 第一行顯示空氣溼度/溫度
}
lcd.setCursor(0, 1);
int aa;
aa = analogRead(0);
lcd.print(“Value:”+String(analogRead(0))); // 第二行顯示土壤溼度值
if (aa < 300){ // 濕度小於範圍就啟動澆水
autowatering();
}
delay(10000); // 10秒執行一次
}
void autowatering(){
digitalWrite(relay,HIGH); //開啟馬達
delay(5000); // 抽水三秒
digitalWrite(relay,LOW); //關閉繼電器
delay(1000);
}
void InitDHT(){
// 初始化溫溼度計
pinMode(dht_dpin,OUTPUT);
digitalWrite(dht_dpin,HIGH);
}
void ReadDHT(){
bGlobalErr=0;
byte dht_in;
byte i;
digitalWrite(dht_dpin,LOW);
delay(20);
digitalWrite(dht_dpin,HIGH);
delayMicroseconds(40);
pinMode(dht_dpin,INPUT);
dht_in=digitalRead(dht_dpin);
if(dht_in){
bGlobalErr=1;
return;
}
delayMicroseconds(80);
dht_in=digitalRead(dht_dpin);
if(!dht_in){
bGlobalErr=2;
return;
}
delayMicroseconds(80);
for (i=0; i<5; i++)
dht_dat[i] = read_dht_dat();
pinMode(dht_dpin,OUTPUT);
digitalWrite(dht_dpin,HIGH);
byte dht_check_sum =
dht_dat[0]+dht_dat[1]+dht_dat[2]+dht_dat[3];
if(dht_dat[4]!= dht_check_sum)
{bGlobalErr=3;}
};
byte read_dht_dat(){
byte i = 0;
byte result=0;
for(i=0; i< 8; i++){
while(digitalRead(dht_dpin)==LOW);
delayMicroseconds(30);
if (digitalRead(dht_dpin)==HIGH)
result |=(1<<(7-i));
while (digitalRead(dht_dpin)==HIGH);
}
return result;
}
數位經濟行業
一直陪著Delphi 成長的老字號報表工具FastReport 也支援了Delphi 10.1 Berlinhttps://www.fast-report.com/en/news/373/
Delphi Berlin可以在不同平台裝置上執行,那程式可以依不同平台裝置跑嗎?
答案是可行的~只要透過條件編譯就可以了 範例如下
{$IFDEF MSWINDOWS} LABEL1.Text := Label1.Text + '(電腦版)'; {$ENDIF} {$IFDEF ANDROID} LABEL1.Text := Label1.Text + '(安卓版)'; {$ENDIF} {$IFDEF OSX} LABEL1.Text := Label1.Text + '(MAC版)'; {$ENDIF} {$IFDEF IOS} LABEL1.Text := Label1.Text + '(IOS版)'; {$ENDIF}
REST Debugger這個工具是Embarcadero公司免費釋放給開發REST相關服務的工程師做為測試、除錯用的工具。例如我們想從Sonsterr這個網站取得吉他譜~
一、從Songsterr的API網址
https://www.songsterr.com/a/wa/api
從裡面知道http://www.songsterr.com/a/ra/ 後面帶songs.json即可
二、開啟REST Debugger
將http://www.songsterr.com/a/ra 填入url
進入Parameters頁籤,在Resource填入songs.json,接著按Add按鈕,填入Name pattern value:伍佰,然後按apply確認
最後按Send request按鈕取得內容即可