發表文章

目前顯示的是 3月, 2019的文章

使用MS Bot Framework建立一隻支援LINE Bot的對談機器人

圖片
令人期待的事情總是拖得比較久。 但MS Bot Framework支援LINE Bot的這一天總算是來臨了。 先說說為何大夥們會希望Bot Framework支援LINE? 其中最基本的因素大概是Bot Framework目前已經支援多種Channel、本身又內建狀態管理機制、可以很方便的串接自然語言對談和撰寫程式碼,這讓開發人員有機會,只需要寫一次Bot核心Business Logic的code,就讓前端同時支援Web/Skype/FB Messenger/LINE/Telegram…等多種IM: 過去Bot Fx是沒有支援LINE這個Channel的,在眾多開發人員的催促下,微軟從善如流的照做了…好,我們這就來看看Bot Fx如何支援LINE? 首先,請在Azure Portal上用最基本的方式(Web App Bot)建立一支Bot: 稍微留意一下底下的輸入畫面: 現在的Azure Portal,常常在我們建立一個資源時,同時建立很多資源。這啥意思? 例如我們要建立一個支援LINE的Bot,但其實他後面有Azure Web App,Storage,甚至LUIS或QnA Maker(看你的選擇),所以這一建常常一堆資源出現,因此我們都會建議讀者把這些資源建立在同一個新開的資源群組(Resource Group),以便於日後 要刪一起刪 方便維護,請參考上圖2。 至於機器人範本,我們建議選擇Echo Bot,先維持簡單就好(上圖5)。 建立好之後,我們立刻到這個資源來看看: 到了該資源之後,我們可以先點選頻道,你會看到預設狀況下已經有一個頻道(Web Chat)在跑步了…(唉,跑什麼步啊…是running啦…) 你可以點選在WebChat中測試,系統會用Web UI讓您測試: 沒錯,他跑起來了,就是一個Echo Bot… 接著,我們要讓他支援LINE,請進入頻道設定,輸入下圖中1,2的資訊: 等等,上面的『頻道秘密』和『頻道存取權杖』是什麼? 如果你有建立過LINE Bot應該就知道(沒建立過可以參考 這邊 ),它是你可以從LINE Bot後台找到的 Channel Secret和Channel access token啦(btw, 建立的LINE Bot必須支援Push): 別忘了,剛才上一張圖中的WebHook URL(標示3),你必須回填到LINE Bot的