1.1 Microsoft Bot Framework 簡介
Microsoft Bot Framework 設計了一個開發對談機器人的框架,目的將訊息的問答處理、對話流程管理等這些在開發對話機器人時需要處理的部份,有明確的物件或是開發流程,即便在不同的平台上寫對談機器人都能遵照著這樣的框架來進行開發。
Microsoft Bot Framework 主要包含兩個部份:
- Bot Builder: Bot Builder 就是用來開發基於 Microsoft Bot Framework 的對談機器人所用的 SDK,目前有 C# 以及 Node.js 兩個版本(本書主要以 Node.js 版本講解)。Bot Builder SDK 是按照 Bot Connector 所制定的通訊協定(基於 HTTP)來實作,這代表您也可以照著相同的方式自行開發其它程式語言的版本,或者就直接處理 Bot Connector 的通訊。
- Bot Connector: Bot Connector 是整個 Microsoft Bot Framework 的核心,簡單地說,它負責使用者與對談機器人中間的橋樑——使用者的訊息透過它傳遞到對談機器人上;而對談機器人的回應也透過它再傳遞給使用者。Bot Connector 做為一個中間者角色,其最大的特色就是能夠抽象通訊平台(如:Facebook Messenger、Skype、Slack 等等),讓機器人的開發不僅可以共用與通用在不同的通訊平台之外,更保留了擴充更多通訊平台甚至是應用程式型式的可能性。
由此可知,使用 Microsoft Bot Framework 來開發對談機器人的好處,除了有一套明確的架構參考之外,更能省下跨通訊平台開發或專案管理的開發維運成本。
參考資源
- About the Bot Framework [Microsoft Docs]
- Bot Builder SDK [GitHub]