[心得] 使用Claudia.js製作Facebook機器人

作者: ichico (細雪。)   2016-12-17 10:21:17
Claudia.js是一個可以把Node.js/Javascript 的Microservice
簡單地部署到AWS Lambda的工具。
只要一行command就會幫你處理好AWS的IAM/Lambda的設定,
甚至是BOT的configuration,非常方便。
因為這個工具目前中文的介紹似乎還不多,
所以小的想拋磚引玉先來個簡單的中文介紹如何使用Claudia製作FB機器人,
請版上各位年薪千萬的大大們鞭小力一點。
Blog無廣告音樂好讀版
http://kaoruiscoding.blogspot.tw/2016/12/claudiajsfacebook.html
以前我們常常會需要一些Web Service幫我們處理一些簡單的GET/POST,
這些Web Service可能很簡單並不複雜,甚至不需要UI,
不過它總是需要一個host來立足,於是你可能就必須要找一台主機,
如果是Windows的話還要有IIS
(然後忍受IIS偶爾的衝康跟無止盡的windows update)
所以當AWS推出了Lambda,身為一個Infra暴弱的Dev,真的會要給AWS一個大大的讚!
這才是真正的SASS精神啊。畢竟我們不需要為了喝牛奶而去養一頭牛你說是吧。
Lamdba讓程式開發人員可以專心的在程式的邏輯上面,
將每個function獨立出來計費可以讓阮囊羞澀的獨立開發者與startup
不需要負擔主機的維運費用,
並且有精美的dashboard可以統計各個function的狀態,真的是非~常~的美好。
BUT,這世界上總是有個BUT,Lambda要寫python/node.js方便是方便,
不過在部署的時候還是得設定IAM的Role,function才能正常運行。
如果是AWS的菜鳥(尤其是Infra跟我一樣爆爛的)看到IAM的設定應該會很茫然。
於是現在就有很多Lambda的部署工具,比方說Python用的Kappa,
以及現在我想介紹的Claudia.js。
Claudia.js其實就是用AWS的Node.js framework將Lamdba的部署自動化,
IAM以及Lambda的設定都在Claudia.js當中完成。
之後如果要更新code,也只要一個指令就能完成,
而且不需要登入AWS Console,是不是很方便啊。
以下就來介紹怎麼透過Claudia.js自動部署microservice
並在Facebook上面做一個機器人。
首先你必須要申請一個AWS帳號(不然你是要部署到哪裡去),
在此就不贅述如何申請了。
設定環境
因為Claudia.js是用來Deploy Node.js的microservice,
所以你的電腦也要裝Node.js(這不是廢話嗎)
Node.js預設就有npm(Node.js的package管理工具)因此以下會提到npm指令,
但不需要另外安裝。
安裝Node.js
Windows版
Command:
sudo curl http://nvm-latest.herokuapp.com | bash
手動安裝:到官網安裝最新版的Node.js
安裝完後在Command line工具中執行
node -v
就可以檢查Node.js是否正確安裝。
Mac版
雖然Mac的Homebrew好用到令人流淚,但因為node.js版本更新非常快速,
因此推薦使用nvm安裝。透過nvm安裝Node可以很簡單的輕鬆切換Node.js版本。
如果你有安裝XCode,可以透過XCode來安裝nvm
$ xcode-select
作者: jerry771210 (說在多也沒用)   2016-12-17 10:50:00
太威了
作者: lipojack (賀賀阿喜)   2016-12-17 11:38:00
作者: jjwei ( <囧> )   2016-12-17 12:46:00
push!
作者: MagicTouch   2016-12-17 12:48:00
感謝分享~
作者: Ekmund (是一隻小叔)   2016-12-17 12:53:00
喔喔這個讚
作者: blackcan (太平李榮浩)   2016-12-17 12:57:00
感謝分享
作者: wddx (i7MOMO)   2016-12-17 13:09:00
感謝大大分享!
作者: saivantist (GGSAI)   2016-12-17 13:45:00
讚讚
作者: SmallDruid (小d)   2016-12-17 14:02:00
好玩欸
作者: jimmy689 (吉米蛆蛆)   2016-12-17 14:34:00
家豪推
作者: ZC (***********************)   2016-12-17 15:08:00
感謝
作者: ian90911 (xopowo)   2016-12-17 17:40:00
作者: drajan (EasoN)   2016-12-17 22:40:00
作者: xxhomey   2016-12-17 22:45:00
作者: srxrrr (幹!我是肌董)   2016-12-17 23:46:00
推推!!!!
作者: NvidiaCUDA (深度學習救台灣)   2016-12-17 23:47:00
作者: jay123peter (蕭瑟風雅)   2016-12-18 02:07:00
作者: bruce723 (阿官)   2016-12-18 09:21:00
作者: yongb (火系見習魔法師 )   2016-12-18 14:54:00
PUSH
作者: viper9709 (阿達)   2016-12-18 16:58:00
推~感謝分享
作者: vidcina (最討厭下雨)   2016-12-19 10:11:00
把朋友加到粉絲頁面的tester就可以收到了
作者: kyocartoon (Kyo)   2016-12-19 19:05:00
作者: yuanyu90221 (菜菜鳥)   2016-12-19 22:23:00
作者: markbex (馬克杯)   2016-12-21 19:01:00
感謝原po!!
作者: youccu (UCCU)   2016-12-22 10:01:00
謝分享

Links booklink

Contact Us: admin [ a t ] ucptt.com