PS D:\> md linetest
PS D:\> cd linetest
PS D:\linetest> dotnet new console
系統會出現類似底下畫面...
The template "Console Application" was created successfully.
Processing post-creation actions...
Running 'dotnet restore' on D:\linetest\linetest.csproj...
正在判斷要還原的專案...
已還原 D:\linetest\linetest.csproj (251 ms 內)。
Restore succeeded.
接著執行底下指令, 安裝 LineBotSDK 套件...
PS D:\linetest> dotnet add package linebotsdk
系統會出現類似底下畫面...
PS D:\linetest> dotnet add package linebotsdk
正在判斷要還原的專案...
Writing C:\Users\...\AppData\Local\Temp\tmpC537.tmp
info : 正在將套件 'linebotsdk' 的 PackageReference 新增至專案 'D:\linetest\linetest.csproj'。
info : 正在還原 D:\linetest\linetest.csproj 的封裝...
info : GET https://api.nuget.org/v3-flatcontainer/linebotsdk/index.json
info : OK https://api.nuget.org/v3-flatcontainer/linebotsdk/index.json 1088 毫秒
info : 套件 'linebotsdk' 與專案 'D:\linetest\linetest.csproj' 中的所有架構相容。
info : 已將套件 'linebotsdk' 版本 '2.2.23' 的 PackageReference 新增至檔案 'D:\linetest\linetest.csproj'。
info : 正在認可還原...
info : 正在將資產檔案寫入磁碟。路徑: D:\linetest\obj\project.assets.json
log : 已還原 D:\linetest\linetest.csproj (3.16 sec 內)。
安裝完成後我們順便建置(Build)一下,看結果如何:
PS D:\linetest> dotnet build
Microsoft (R) Build Engine for .NET Core 16.6.0+5ff7b0c9e 版
Copyright (C) Microsoft Corporation. 著作權所有,並保留一切權利。
正在判斷要還原的專案...
已還原 D:\linetest\linetest.csproj (712 ms 內)。
linetest -> D:\linetest\bin\Debug\netcoreapp3.1\linetest.dll
建置成功。
0 個警告
0 個錯誤
經過時間 00:00:05.39
如果可以順利建置,你應該會收到類似上面這樣的訊息。
透過底下指令,開啟 VS Code進入開發環境
請在命令列輸入 code (空格) .
PS D:\linetest> code .
PS D:\linetest>
完成後會看到類似上面的畫面。
建立bot物件實體
輸入底下程式碼,建立bot instance (請將token與UserId換為你自己的)
var ChannelAccessToken = "___token___="; //Channel Access Token
var UserId = "___UserId__"; //收訊者
var bot = new isRock.LineBot.Bot(ChannelAccessToken);
發送ButtonsTemplate
輸入底下程式碼,發送具有三個action的Buttons Template Message:
//建立Actions
var Actions = new List<isRock.LineBot.TemplateActionBase>();
Actions.Add(new isRock.LineBot.MessageAction() //MessageAction
{
label = "標題-文字回覆",
text = "文字回覆"
});
Actions.Add(new isRock.LineBot.UriAction() //UriAction
{
label = "標題-開瀏覽器",
uri = new Uri("https://www.google.com")
});
Actions.Add(new isRock.LineBot.PostbackAction() //PostbackAction
{
label = "標題-按了沒反應?(postback)",
data = "abc=aaa&def=111"
});
//建立發送訊息
isRock.LineBot.ButtonsTemplate btnMsg =
new isRock.LineBot.ButtonsTemplate()
{
thumbnailImageUrl = new Uri("https://i.imgur.com/5JKErL4.png"),
text = "ButtonsTempalte的文字",
title = "ButtonsTempalte的標題",
actions = Actions,
};
//發送訊息
bot.PushMessage(UserId, btnMsg);