SDN x Cloud Native Meetup #29 活動心得
前言
本次活動連結:https://www.meetup.com/CloudNative-Taiwan/events/271350471/
這次一樣是線上小聚的方式為大家帶來精彩的活動,自從碩班畢業之後對於 Cloud Native 接觸的頻率就越來越低,最多是在工作上可能會擦邊學到相關的內容,較多面向程式開發上,那也因為剛好有機會可以跟上活動時間,既然以前有相關經歷那就來參加看一下大家現在都在討論些什麼新知識 🙂。
標籤
本次活動連結:https://www.meetup.com/CloudNative-Taiwan/events/271350471/
這次一樣是線上小聚的方式為大家帶來精彩的活動,自從碩班畢業之後對於 Cloud Native 接觸的頻率就越來越低,最多是在工作上可能會擦邊學到相關的內容,較多面向程式開發上,那也因為剛好有機會可以跟上活動時間,既然以前有相關經歷那就來參加看一下大家現在都在討論些什麼新知識 🙂。

大家好,我是 NiJia
下半年度辛苦來參加小聚的各位了,最後一季場地一直變更,因為每次小聚都有熱情的夥伴提供場地給小聚,也一起尋找最適合各位的一個場地,若造成困擾小弟深感抱歉 <(_ _)>
2019 年度活動資訊請參考 ➡️Chatbot Taiwan GitHub
| Topic | Speaker | Link |
|---|---|---|
| What's new in LIFF v2 and TECHPULSE 2019 preview | Evan Lin | link |
| Bottender 一路走來 | 林承澤(C.T Lin) | link |
| 如何使用 kamigo 快速開發 LINE bot | 林家煜(NiJia Lin) | link |
當時 LIFF v1 只能透過 Deep link 的方式讓很多需要 Web view 的動線設計上增加了許多困擾,而在 v2 上線後改善了這方面的問題,且也對外公布支援 Query string 讓開發者可以帶參數進去(雖然之前就已經在偷用了 😆),雖然很不幸的因為 iOS 的政策問題導致 Scan QR code 的功能在接下來的版本硬生生被拔除,但整體下來其實 LIFF v2 對於在 LINE 上開發功能的朋友可以更有彈性的去應用了。

Bottender 是在某次小聚聊到時才知道原來有這麼酷的開源專案,我覺得最特別的除了可以支援多平台之外,就是 console 模式了,像我最近做的 ABL 台灣隊賽程機器人就只使用到純文字的功能,在console模式下很快速的就把功能弄好,部署時只要把相關 Key 放進去功能就完成了,這部分是真的很驚艷 😆
上週去參加 GDG Hackthon 時介紹給其他寫前端的朋友使用,從來沒寫過後端的他們也覺得使用上真的很快就上手,所以有寫Javascript的朋友不妨參考試試囉!

當初因為訓練時沒有一個可以幫我儲存記錄的地方,因此想到想做 LINE bot 來解決我的問題,但同時我又不喜歡處理一大堆 JSON 的問題,因此選用 Kamigo 作為我開發 bot 的框架,除了框架幫忙轉打請求轉到對應的controller讓我不用寫一堆if else以外,最好用的功能就是 Kamiflex 了,當我們在 Flex Message Simulator 弄了一堆 JSON 出來時,同時我們需要從資料庫拉資料出來組裝產生大量的 JSON,在組裝時程式碼會很髒亂,所以使用 Kamiflex 來幫忙轉譯讓我在寫 Flex message 時可以更像在寫 Ruby code,讓整個 JSON 可能幾千行瞬間被濃縮成 100 行時這段 Flex message 在維護時也能更好的維護。

User->LINE: message
LINE->Route: webhook
Route->Kamigo: event notify
Kamigo->Controller: send params
Controller->View: send DB data
View->Kamigo: generator flex template
Kamigo->Route: send template
Route->LINE: response
LINE->User: reply
| Topic | Speaker | Link |
|---|---|---|
| LINE Push / Message 開發經驗談 | Caesar Chi | |
| 邊緣人救星!用 Laravel 打造私人定製的聊天機器人 | 李小胖 | link |
| Chatbot builder | Penny Sun | link |
我平時就有在看一些社群行銷朋友分享他們是如何對行為下標籤tag以及發放對應內容給使用者進而提升購買力,在 Caesar 大大的快速了解到這些商業行為背後的開發經驗為何,從設計到大量推送所需注意的問題以及服務器之間的溝通問題...在這次的議程中讓我學到很多付費內容才會聽到的題材,讓我對於 Push message 這件事情的做法與思路又重新被教育了一次 😆

這次要請到一個月有一半時間都在參加小聚的小聚王小胖來為各位分享如何用Laravel做一隻專為自己客製化的機器人,雖然 Live demo 過程中了魔咒,好險後來也解決的一些 live demo 才會遇到的問題 🤣,總之若有使用 php 的朋友歡迎參考簡報哦~

最後由 LINE 的資料工程師-Penny 為我們帶來在 LINE techpulse 上的議程,從介紹中 NLU 部分看起來功能會像是 Dialogflow 一樣,而在其他的部分則是提供一個介面讓使用者可以更快速的在網頁上設定自己想要的機器人樣式,只是目前功能只提供給合作的商家,期待未來 release 時的效益 🚀

官方帳號已經有套用囉!想收到啲一手資訊或是想玩玩的朋友可以掃描加入 👾

所有小聚資訊接收藏在 -> Chatbot Taiwan GitHub 上哦!
| Speaker | Topic | Link |
|---|---|---|
| 陳佳新 | LINE Beacon,數位導覽的小幫手! | |
| Eric | Flex box, 一起收集分享 Flex message | link |
| 徐郁涵 | 食農飽可夢 | |
| 郭佳甯 | 午餐隊長 | link |
| Speaker | Topic | Link |
|---|---|---|
| Calvin | LINE Beacon,數位導覽的小幫手! | link |
| JT | ChatOps & Rasa | link |
| NiJia | ABL 台灣隊查詢機器人 | link |
| 郭佳甯 | Bottender & Kamigo 介紹 | link1、link2 |
除了內容豐富的主議程外,閃電秀就是在每個社群最特別的部分了,從每次的閃電秀中都讓我對於 side project 的想法又重新被定義了一番,常常會看到很多不同的應用情境以及特殊的用法,歡迎大家踴躍報名閃電秀來互相交流,多方交流或許有機會蹦出不一樣的想法並讓機器人的其他用途 😁
在舉辦每次的小聚活動都希望可以給每個來的朋友最豐富的內容,以及提供 Lighting talk 的舞台讓有作品的朋友可以上來分享,而最近有與其他社群的朋友聊到,發現似乎把議程塞太緊,導致影響到會眾與講者交流以及回家休息的時間,所以之後的小聚改善這個狀況並調整時間,再麻煩大家多支持 Chatbot Taiwan🚀🚀🚀

大家好,我是 NiJia,很榮幸被邀...是本來就負責 Chatbot meetup 的 Co-organizer,連續兩天參加了 meetup 真的是揮灑自己熱情兩邊跑(好 High),希望藉由社群的分享讓大家可以吸收到不同的新知!
這次活動場地感謝 溫明輝 教授幫 chatbot 借了台北商業大學的場地,而台北商業大學最近有跟 LINE PROTOSTAR 聯合舉辦了 ”LINE Chatbot 對話機器人設計大賽”,覺得自己的機器人不錯嘛?歡迎大家踴躍報名參賽哦!
長期支持 Chatbot 社群的 Evan 大大為大家帶來陣子 LINE 的更新內容,像我這種開發者最期待的就是 LIFF v2 終於上線了 🎉,當中增加了很多種應用讓嗷嗷待哺的工程師們終於可以生出更多種不一樣的應用啦,
詳細參考: https://engineering.linecorp.com/ja/blog/liff-v2/
試玩新功能:

身為卡米粉的我終於再度聽到卡米哥的議程啦,這次介紹的是從 COSCUP 之後一直更新的 kamigo,並完全使用這個套件做的寵物協尋機器人,此議程就已這隻機器人為主體介紹。
在實作網頁的過程中最長需要弄的東西不外乎就是表單驗證、搜尋以及分頁,因為 kamigo 是讓使用者經由 LIFF 幫忙將表單回傳成一份 JSON 至使用者的的對話欄上,
再轉介給 controller 去解析並儲存進資料庫,但若使用者在操作的過程中少輸入會不會一樣送出?
此時 kamigo 透過 rails 原生既有的 validates 來驗證表單欄位內容,並藉由 Turbolinks ajax + js.erb 讓表單在送出時先透過 ajax 打到後端驗證,若驗證失敗後則回傳告知 LIFF 哪個欄位有問題,這個方法也讓我使用到這個套件的肌肉仔可以透過 rails 的鬼神方法幫我驗證表單,如此一來在表單的確認上就沒問題啦!🎉
順手捐星星,救救卡米狗: https://github.com/etrex/kamigo
接著由 Cloud Native Taiwan User Group Co-organizer - Kyle Bai 為大家帶來講題,藉由故事的敘述讓大家知道他是為甚麼啟動這個 idea 出來,並靈活運用圖片演示對話流程(筆記),並因為打遊戲的困擾決定做一個機器人來解決朋友問題,運用 container 的技術來封裝 chatbot App,再用 k8s 透過 N 台機器來管理 container 讓它獲得不死之握能力,確保服務的可用性與延展性。
最後再透過 live demo 的方式讓會眾們一飽眼福,若是對於 Cloud Native 相關技術有興趣的朋友別忘了加入社群,或是你已經有相關主題遲遲沒地方講?趕快搭上線讓你有舞台可以發揮 😎
這部分就參考 Evan 大大的文章
身為通勤學的作者也是自由工作者的 KoKo 每次都熱情參加 Chatbot 的活動 👏,本次邀請來帶大家認識 LINE Pay,透過詳細的介紹 LINE Pay 帶著大家一步一步做並提醒大家當中需要注意的部分,有部分的會眾是金融相關背景也特地來了解 LINE Pay 的各種機制,透過 KoKo 解釋後讓會眾更清楚裡頭眉眉角角,此時真的是感受到滿滿的熱情,講者跟會眾踴躍的討論也讓整個活動更活絡,想了解更多議題的歡迎來許願或是來當講者體驗一下中部人真正的活力啊!
COSCUP 就來擔任 Chatbot Taiwan 講者的 Jimmy,本次來分享他包起來的 servo 的容器服務,主要原因是因為在開發機器人時大家都習慣用 ngrok,只是每次都要重新執行重新貼到 LINE Bot 或 LIFF 上,如此繁雜的步驟現在只要透過 container 以及自定義的 DNS 每次只要 docker 啟動後 Domain 啟動後即可開始寫機器人,根本不需要再進後台重新填寫,只能說工程師沒有極限啊!
透過 Jimmy 將 serveo 打包的 container 就不會有連線不穩定的問題(我有經歷過 🤣),這邊需要注意的問題 serveo 有 ssh 連線數的問題,但一般來說在開發人數不會太多,這樣理論上已經很夠用了~
若對這服務有興趣的話:https://github.com/taichunmin/docker-serveo
身為中部負責人的佳新,介紹 LINE 的工具 - Flex Message Simulator,因為應用大量的 flex message 在自家產品「彰化旅行+」上,透過 LINE 的工具讓我們使用 flex message 上能夠叫得心應手。
近期加入 chatbot 志工的 EJ 製作了一個可以透過 chatbot 管理 chatbot 的服務,將使用者所註冊機器人的 secret 以及 token 放入後,就能訂閱 ptt 特定作者的文章,當作者只要發文就會透過 push message 通知訂閱的人,若這邊 500 則免費訊息用完的話就建議使用者在開新的 🤣
最後則是我前一陣子分享過的健身記錄機器人-肌肉仔,引入了最新更新的 flex message 站牌樣板,讓健身者在訓練的每筆紀錄變得更漂亮,讓健身者可以像是公車一樣一步一步的往下一站走!
肌肉仔還是會持續更新,有興趣的朋友別忘了幫小弟按個星星 ⭐️ 鼓勵我繼續前進 😃
臺北臺中連著兩天舉辦真的是很累,但是看到大家踴躍的互動讓我覺得不虛此行,接下來還需要大家的熱情支持,讓我們繼續辦下去 🚀
Chatbot Taiwan 在台北、台中皆有一個月一次的定期聚會,致力於提供並討論聊天機器人的相關應用,每回小聚將安排講者主題分享、新知討論,環繞 Chatbot 與 AI,及大家共同關心的話題。歡迎大家踴躍分享、自由與會眾交流,同時也期望大家可以在分享中得到收獲。
歡迎各位報名、推薦講者以及閃電秀,介紹自己開發的 chatbot 並分享 chatbot 相關的議題,若有相關需要合作歡迎與我聯繫 https://m.me/linnijia。