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
街口支付QR Code
支付寶QR Code
街口支付QR Code
微信支付QR Code
comments powered by Disqus