第12 屆iT邦幫忙鐵人賽系列文章 (Day30)
終於走到這一天了,每次都覺得鐵人賽過程都生不如死,但寫完30天候總有一種成就感,技術跟文章不難,難的是30天養成一個固定的習慣阿!
回到第一天文章所講的:所用到的技術預計採用 .NET Core 3.1、Html/CSS/JavaScript、Line API 、Azure的一些服務…等等 (但寫這篇文章時完全還沒實作XD…只能說待訂)
這次寫完30天也收穫良多,主要也是挑一些之前比較少碰的東西順便玩玩看
把 Line 的 Api 文件又完整K了一遍,並一個一個寫成 .NET Core 的版本, 之前比較沒碰過的是 Line Pay/Line Beacon
寫得過程中看到 vue 海賊王版本推出 (vue 3.0),起了專案實踐了一些功能,來看看它的架構
用了 Razor Page,讓我回到 ASP.NET WebForm 的復古感
玩了一些 Azure 服務,Azure Storage、QnA Maker,其中 Azure SignalR Service 是之前比較沒玩過的
把之前自己婚禮用的 chatbot 改一版,順便要給接下來結婚的朋友用 XD 真實的把所做的Side Project給用上
邊看文件邊寫SDK出來,並開源出來
本篇就來講講最後一哩路,怎麼發佈到 NuGet 上吧!
我將這次系列邊走邊看得的程式稍作整理,建立一個 .NET Core 的函示庫專案
在 VS 按右鍵套件
或者可以使用CLI : dotnet pack
編輯套件的資訊
release 編譯後,可以看到 bin\release 有 nupkg 檔案
接著到 nuget.org 註冊一個帳號,並新增 Api Key
點選 Copy ,
在 bin\release 執行
dotnet nuget push NetCoreLineBotSDK.0.1.3.nupkg --api-key <Nuget API Key> --source [https://api.nuget.org/v3/index.json](https://api.nuget.org/v3/index.json)
等一段時間,就能看到 NuGet 的連結啦~
https://www.nuget.org/packages/NetCoreLineBotSDK/
這篇再來快速做一次一個Line Chatbot Hello World
安裝套件
Install-Package NetCoreLineBotSDK
Startup.cs 新增 AddLineBotSDK
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddLineBotSDK(Configuration);
}
appsettings.json 增加token,這些怎麼拿? 看這篇
"LineSetting": {
"ChannelSecret": "<Your Line Channel Secret>",
"ChannelAccessToken": "<Your Line Channel Access Token>"
}
新增一個 Web Api
繼承 LineBotApp,針對不同事件 override 處理
照這篇文章用 ngrok Run 起來,URL設定於 Line Develop 後台,這樣就完成啦
本次 Nuget 連結:https://www.nuget.org/packages/NetCoreLineBotSDK/
Github 連結:https://github.com/kyleap/NetCoreLineBotSDK
版本先定為 v0.1.0 QQ 因為還不夠成熟,一方面還沒有實作完所有功能,基本的例外處理與參數的驗證都還沒加上,但鐵人賽這只是的開始,主要也是希望用自己的SDK來應對之後的開發,再來也會繼續撥空往 v1.0.0 推進~
本系列文章索引在第一篇:用.NET Core與Line Bot製作婚禮機器人
歡迎來下週三的社群日分享~
https://chatbots.kktix.cc/events/meetup-024
已報名 :D