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);
發送ImageMap訊息
輸入底下程式碼,發送具有2個action的ImageMap Message:
var ImgMap = new isRock.LineBot.ImagemapMessage();
ImgMap.baseSize = new System.Drawing.Size(1040, 1040);
ImgMap.baseUrl = new Uri("https://i.imgur.com/leKztCj.png");
ImgMap.actions.Add(new isRock.LineBot.ImagemapMessageAction()
{
text = "鶯歌",
area = new isRock.LineBot.ImagemapArea(0, 0, 500, 1040)
});
ImgMap.actions.Add(new isRock.LineBot.ImagemapMessageAction()
{
text = "八德",
area = new isRock.LineBot.ImagemapArea(500, 0, 1040, 1040)
});
//發送訊息
bot.PushMessage(UserId, ImgMap);