巴哈姆特 Chatbot 之亂:用 Ruby on Rails 接收 Webhook

六月底的時候發現巴哈姆特似乎想為他們推出的 Messaging APP (哈哈姆特)舉辦一個聊天機器人的比賽,看到之後想說還算蠻有趣的,所以我就跟朋友很隨意的組成一個團隊來開發。

跟大多數我們熟悉串接 Chatbot 的機制是類似的,我們可以用 Webhook 的方式接收一個來自使用者發送的訊息,然後再透過程式處理後回傳訊息給使用者。

部署你的第一個 Ruby on Rails 網站(八)

前面幾篇文章已經把所有關於 Ruby 和資料庫都設定完成,最後一個階段就是要把 Nginx 設定好,並且讓 Let’s Encrypt 可以正確的被設定,讓網站支援 SSL 功能。

部署你的第一個 Ruby on Rails 網站(七)

現在伺服器還沒辦法下載到 Ruby on Rails 專案的原始碼用來部署,這一篇會介紹該如何把原始碼下載回來,並且在伺服器上將相關的 Ruby Gem 都安裝好。

部署你的第一個 Ruby on Rails 網站(六)

經過前面五篇的教學,我們距離將 Ruby on Rails 部署到伺服器上越來越接近了。上一階段我們在本機段將部署的設定做完之後,這一篇文章會回到伺服器將部署所需的設定補齊,讓 Capistrano 可以正確的將程式碼部署到伺服器。

部署你的第一個 Ruby on Rails 網站(五)

第四篇為止,我們已經有了可以運行 Ruby on Rails 的環境,不過到底該怎麼在伺服器上跑起來呢?

絕對不是把程式碼複製到伺服器這種簡單的做法,或者說這樣的做法在更新上是很沒有效率的!

部署你的第一個 Ruby on Rails 網站(四)

第一篇第二篇的說明,加上第三篇我想大家已經對編譯自己的環境稍為熟悉。

為了要可以用 Passenger 作為網站伺服器,我們需要自行編譯 Nginx 讓他可以使用 Passenger 模組。

部署你的第一個 Ruby on Rails 網站(三)

經過第一篇第二篇的說明,我想大家現在應該都有辦法順利的透過 SSH 進入自己的伺服器。

在第二篇的最後,我們針對 Ruby 環境預先做了準備,接下來就是安裝 Ruby 環境的時候了!

使用 Turbolinks 時 Google Analytics 並沒有正確運作

最近因為在五倍紅寶石配合同事做官網的 SEO 優化,比較常見的行銷工具像是 Google Analytics 之類的就一起拿出來玩。

實驗的對象首選當然是自己的網站,不過在調整的時候卻發現有一些情況有點異常。

部署你的第一個 Ruby on Rails 網站(二)

延續上一篇文章的內容,我們需要先在伺服器上進行設定,讓伺服器可以正確的安裝 Ruby 環境。如此一來,我們才能夠將 Ruby on Rails 部署到伺服器上面。

為了完成這些前置作業,我們還需要針對伺服器的設定進行完善的準備才行。

部署你的第一個 Ruby on Rails 網站(一)

最近在公司發現其實不少同事都還沒有實際部署過一台伺服器的經驗,在有人負責 DevOps 的情況下,也許真的不太需要。又或者因為還是初級工程師的關係,沒有那個權限可以去安裝一次伺服器。甚至其實一直都使用著 Heroku 或者 AWS CodeDeploy 等服務的便利性,而沒有嘗試自己安裝一次。

不管是基於甚麼原因,總之先來安裝一次吧!