Alan Tsai 的學習筆記


學而不思則罔,思而不學則殆,不思不學則“網貸” 記錄軟體開發的點點滴滴 著重於微軟技術、網頁開發、DevOps、C#, Asp .net Mvc、Azure、AI、Chatbot、Docker、Data Science

[chatbot + AI = 下一代操作模式][12]準備上綫 - 用Bot Channel Registration注冊chatbot

[chatbot + AI = 下一代操作模式][12]準備上綫 - 用Bot Channel Registration注冊chatbot.jpg
圖片來源:https://pixabay.com/en/books-spine-colors-pastel-1099067/ 

在上一篇([11]準備上綫 - chatbot發佈到Azure App Service)介紹了如何用visual studio把chatbot部署到了Azure的PaaS服務,App Service。

這一篇將來看另外一個部分,也就是如何把chatbot和不同的channel連接在一起的服務,Azure Bot Service裡面的Bot Channel Registration (以下簡稱Channel Registration)。

Azure Bot Service的Channel Registration

再來回顧一下整個Azure Bot Service的架構。從下圖可以看到,在Channel和Chatbot之間有個轉換格式的Connector Service。這個Connector Service從服務體現來説就是Channel Registration。


Channel Registration在整個架構的位置

簡單來説,Channel Registration有點像是把Channel和Chatbot鏈接在一起的膠水,有了這個我們可以設定我們那個chatbot要和那些channel連接。

建立Channel Registration

要建立Channel Registration首先要開啓Azure的Portal(https://portal.azure.com

透過左上角的Create Resource -> 搜索 bot channel registration

chrome_2018-07-16_19-35-20.png
搜索channel registration

在清單裡面點選Bot Channel Registration然後按下Create

接下來會輸入一些channel registration的訊息:

  • Bot Name - 隨便取,後面可以修改 - 最好不要和其他服務名稱一樣,避免建立Micorosft App Id/Password的時候出錯。
  • Subscription - 建立在那個訂閲
  • Resource Group - 這邊就選擇和Chatbot App Service一起,方便之後刪掉
  • Pricing tier - 目前有2個等級F0 是免費,F1則是付費。兩個最大差異是 F1有SLA保證,然後F0有送出的訊息數限制
  • Message Endpoint - 這個是設定我們chatbot發布到app service的網址 - 這個先留空,等一下再設定
  • Application Insight - 這個系列不會介紹做分析的部分,因此這裏選擇了Off

chrome_2018-07-16_20-03-35.png
建立channel registration的畫面截圖

填寫完成之後,就按下Create即可。

設定Channel Registration

當我們的Channel Registration建立出來了之後,有2個地方需要做設定:

  1. 對應的Chatbot Message Endpoint
  2. chatbot設定和channel一樣的Microsoft AppId/Password

設定好了之後,可以設定那些channel要開啓使用。

設定對應的Chatbot Message Endpoint

還記得上一篇app service部署之後怎麽取得網址的方式,只需要在那個網址後面加上/api/messages就是我們chatbot的message endpoint。

開啓建立出來的channel registration,選擇Settings,然後可以在Message Endpoint輸入你的chatbot網址。

chrome_2018-07-16_20-05-09.png
設定 Message Endpoint

設定好了,按下存檔即可。

chatbot設定和channel一樣的Microsoft AppId 和 Password

在上一步設定了mesage endpoint,可以想象一下如果可以隨時輸入任意網址做注冊的話,那麽誰知道這個服務是不是合法可以使用。

因此,chatbot需要有些設定,能夠驗證這個服務是自己。

Channel Registration裡面有一個Microsoft AppId/Password,可以從 Settings裡面的Microsoft App Id,點下Manage進入:

chrome_2018-07-16_20-14-06.png
開啓Microsoft App Id的manage畫面

點下去之後會開啓管理畫面,可以按下產生新密碼來產生一組密碼:

  1. 點下去產生新的密碼
  2. 這個會是BotId
  3. 應用程式識別碼就是要的MicrosoftAppId
  4. 產生的新密碼只會顯示1次,如果沒有記錄下來,下次再建立一次就好。這個就是MicrosoftAppPassword
chrome_2018-07-16_20-22-32.png
設定畫面

接下來要去chatbot的App Service裡面設定剛剛取得的3個值:

  1. 輸入Setting篩選出Application Settings
  2. 點選Application Settings
  3. App Setting Name輸入 BotId
  4. App Setting Name輸入 MicrosoftAppId
  5. App Setting Name輸入 MicrosoftAppPassword
chrome_2018-07-16_20-23-06.png
設定app service

測試目前的設定

如果上面的設定都沒有問題,那麽chatbot就已經設定好了。不過要確認目前設定有沒有問題可以透過Channel Registration裡面的Test in web chat

如果Test in web chat有出現錯誤,那麽就要檢查一下上面兩步的設定有沒有問題。

chrome_2018-07-16_20-32-33.png
測試channel設定有沒有問題

結語

在這一篇,介紹了如何在Azure上面建立出了一個Bot Channel Registration的服務,并且如何做必須要的設定。

設定好了之後,透過Test in web chat的方式測試是否設定上面有問題。

不過到目前爲止還是沒辦法讓一般使用者使用chatbot,原因是還沒有介紹如何設定channel 連接。

下一篇([13]上綫 - 開啓web control channel)將來看看最容易設定的channel,web control。


如果文章對您有幫助,就請我喝杯飲料吧
街口支付QR Code
街口支付QR Code
台灣 Pay QR Code
台灣 Pay QR Code
Line Pay 一卡通 QR Code
Line Pay 一卡通 QR Code
街口支付QR Code
支付寶QR Code
街口支付QR Code
微信支付QR Code
comments powered by Disqus