iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 11
0
Everything on Azure

使用 Microsoft Conversational AI Tools - 打造新时代的UI界面系列 第 11

[11]準備上綫 - chatbot發佈到Azure App Service

在上一篇我們把所有的程式用Dialog重構了之後,對於chatbot開發暫時到了一個段落。當然,目前功能還非常的雛形,但是以目前介紹的東西已經足夠寫出一個好的chatbot,因此各位可以自由發揮。

接下來我們要開始看看上綫的部分。當chatbot開發完了之後,該怎麽讓他上綫?需要搭配什麽服務。這篇將會看第一個部分,把chatbot先host在azure的app service上面。

上綫需要做一些什麽?

在講上綫之前,我們先來看看到目前爲止,在開篇提到的架構目前在什麽位置上面。

架構圖以及目前位置
透過上圖,我們可以看出目前爲止我們專注的都在右邊開發的部分,那接下來上綫我們就需要注意左邊的Azure Bot Service的部分。

chatbot 要上綫,會需要幾個部分:

把chatbot本身部署上去 - 到目前爲止開發的chatbot,其實就是一個web api的服務。我們需要找到一個地方能夠host我們這個服務。
用azure bot service的channel registration注冊我們chatbot host在哪裏 - 從上面的圖可以之後,我們有個對應各個channel的服務,這個就是channel registration
在對應channel設定 - 舉例來説,如果我們想在FB放上我們的chatbot,或者slack放上chatbot,這些需要在channel的使用端做一些設定。
在這一篇我們將專注在第一點,也就是把chabot部署上去。既然我們稍後會使用到Azure的bot service,那麽部署在Azure就是一個很好的選擇,加上Visual Studio和Azure整合上非常方便,因此,我們將部署我們的chatbot 到azure的PaaS服務,App Service上面。

把chatbot發佈到app service上面

這篇我不會介紹如何申請azure。如果您目前沒有任何訂閲,您可以去官網申請一個30天試用(立即建立免費的 Azure 帳戶)來完成接下來的操作。
首先,在專案點下右鍵,然後選擇Publish:

devenv_2018-07-15_20-15-40.png
選擇publish的截圖
在彈出的畫面,左邊選擇App Service,然後右邊選擇Create New,然後選擇下面的publish:

2018-07-15_20-16-49.png
建立app service的截圖
接下來我麽要建立會部署的App Service資訊:

右上角可以設定你azure訂閲對應的帳號,這邊切換到有你訂閲的即可
AppName是app service的名稱,將會影響到預設的網址。因此如果已經有人用了,會沒辦法取一樣的名稱
Subscription是選擇你要部署的訂閲,如果說你的帳號有多個訂閲就是這裡切換
Resourc Group可以把你的azure資源用一個邏輯層包在一起,之後如果這些服務不需要了話,可以一次快速刪掉。如果建立新的,可以點旁邊的New,不然就是用下拉選取
Hosting Plan則是hosting那臺的機器規格,會影響到價錢。一樣,如果要新建立就選擇New。這邊我選了一臺在East Asia,也就是香港機房的機器,離我們近一些
最後選擇Create
devenv_2018-07-15_20-19-52.png
建立app service并且發佈的設定畫面
按下Create之後,我們就需要稍等一下,他會建立機器并且幫我們把程式推上去。成功之後,會自動開啓瀏覽器,瀏覽到我們網站的網址。

到這一步就是完成chatbot程式碼的部署。

到Azure portal看看建立的app service

如果有需要管理chatbot的服務機器,可以透過到azure的portal(http://portal.azure.com),然後從我們的Resource Group可以看到多了一個App Service:

chrome_2018-07-15_20-32-35.png
Resource Group目前有的服務
點進去之後,有幾個部分按鈕可能會使用到(都在上面):

Browse會開啓chatbot服務的網址,之後設定會需要這個網址
Stop如果服務不需要,可以透過這個按鈕關掉服務,關掉之後,要在啓用這個按鈕會變成Start
Get publish profiles - 可以從azure portal建立好app service之後,再從這邊取得publish profile,然後讓專案透過這個profile發佈上azure的app service。不過VS已經整合的很好了, 因此不太需要自己這麽麻煩分開做
chrome_2018-07-15_20-34-16.png
管理app service的界面

結語

在這篇介紹了Azure的App Service的服務,并且看了如何把chatbot的程式發佈到azure的app service。

也簡單的介紹了如何控制那臺app service的服務。

在下一篇,將來看看如何把這篇部署上去的chatbot的服務注冊到bot channel registration裡面。


上一篇
[10]用IDialog全部重構 - 階段性總結
下一篇
[12]準備上綫 - 用Bot Channel Registration注冊chatbot
系列文
使用 Microsoft Conversational AI Tools - 打造新时代的UI界面30

尚未有邦友留言

立即登入留言