以通訊軟體為核心,LINE 持續發展圍繞用戶生活的各種服務,同時也抱持著開放的態度,積極與不同的平台或開發工具串聯。因此,我們鼓勵、更贊助 LINE 的工程師參與各式各樣的外部研討會,激發更多創意或合作的可能性,並於會後撰寫見聞,分享給 LINE Engineering Blog 的讀者們。
《LINE 強力徵才中!》與我們一起 Close the Distance 串聯智慧新世界 >> 詳細職缺訊息
大家好,我是 LINE Taiwan 的 Technical Evangelist – Evan Lin。這次很開心受到 chatbot 社群的邀請,參加 Chatb10ts meetup 聊天機器人小小聚 10 @ 天瓏書局 Coding Space 的聚會活動,並於活動中分享 LINE API 更新與個人開發的心得。在此,也透過本文分享參與本活動的心得,希望透過社群分享的力量,讓聊天機器人的開發動能更加強大。
- 社群 Chatbots Meetup:https://chatbots.kktix.cc/
- 本次活動網頁:活動網址
由於 Chatbots Meetup 本身屬於社群自主性的活動,裡面也有許多社群朋友贊助的閃電秀。本次活動的所有內容也是相當的難得與有趣,也希望能夠透過本篇文章讓大家稍微了解 Chatbots Meetup 社群閃電秀的魅力。

Write Image Proxy Server for LINE Bot in Go / 資深開發技術推廣工程師 Evan Lin
投影片
首先,先跟與會者分享新的 LINE Login API 更新,以及透過更新後的 API 所撰寫的範例網站 https://login-tester-evan.herokuapp.com/。 透過兩個新的變更,讓開發者更有彈性的開發 LINE Login 相關應用。 以下列出相關細節:
1. ui_locales:
- Parameter:
ui_locales
- Type:
- String
- Required:
- Optional
- Description:
- Display language for LINE Login screens. Specify as one or more RFC 5646 (BCP 47) language tags, separated by spaces, in order of preference. Corresponds to the
ui_locales
parameter defined in the “Authentication Request” section of OpenID Connect Core 1.0.
- Display language for LINE Login screens. Specify as one or more RFC 5646 (BCP 47) language tags, separated by spaces, in order of preference. Corresponds to the
懶人包: 透過輸入 ui_locales
可變更 LINE Login 顯示語言,比如說:
ja-JP
: 日文ko-KR
: 韓文zh-CN
: 中文th-TH
: 泰文
2. amr:
技術細節: https://developers.line.biz/en/docs/line-login/web/integrate-line-login/#spy-getting-an-access-token
- Property:
amr
- Type:
- Array of strings
- Description:
- List of authentication methods used by the user. Contains one or more of:
pwd
:Log in with email and passwordlineautologin
:LINE automatic login (including through LINE SDK)lineqr
: Log in with QR codelinesso
:Log in with single sign-on
- List of authentication methods used by the user. Contains one or more of:
懶人包:** 如果透過 JWT 來 decode payload,可看得到使用者透過哪些方式進行 LINE Login,比如說:
pwd
: 密碼登入lineautologin
: LINE 自動登入 …linesso
:Log in with single sign-on
第二個部分介紹如何透過 Golang 來開 Image Proxy Server。當初開發 Image Proxy Server 的契機是開發寵物領養機器人 – “流浪動物需要你” 的聊天機器人。流浪動物的收容資訊都是透過 Open Data 所提供,裡面的圖片是 http
而不是 https
。在這裡分享了透過 Heroku 的開發方式來建置一個 Image Proxy Server,不需要任何伺服器的費用,就可以將 http
圖片轉換為https
圖片。
相關的開源程式碼在:https://github.com/kkdai/img-cache-server
更多相關內容:
- 20190626 LINE Login API update
- [LINE][Golang] LINE Login v2.1 new parameter and properties 2019/06/26
- https://github.com/kkdai/line-social-sdk-go
- https://github.com/kkdai/line-login-go
- 流浪動物需要你 LINE Bot
- https://github.com/kkdai/img-cache-server
LINE@ 2.0 的 Offline to Online (LIFF + Richmenu + Push 機制) / LINE API Expert –Caesar Chi
投影片
第一位 LINE API Expert – Caesar Chi 帶來相當實際的運用案例,由於今年四月,LINE 官方帳號 2.0 正式上線,許多客戶希望能更有效的運用 LINE@ 帳號,達到更好的使用者轉換率,而 Caesar 分享在實務上如何透過 LIFF + RichMenu + Push 機制,讓廠商能更有效率的轉換,並且也跟開發者們分享在官方帳號 2.0 轉換後的一些小技巧。
LINE Bot on Cloud Run: 使用 line/line-bot-sdk-go / LINE API Expert – CL Sung
投影片
第二位 LINE API Expert 分享相當硬底子的開發經驗,透過了 LINE Bot 在 Cloud Run 上部署 LINE Bot 。
一開始講者分享了當初為什麼會踏入 Golang 的開發過程與 Go 的 Vendor 機制演變 – 從 Go 1.5 的 Vendor 到 Go 1.11的 Go Modules,以及 https://github.com/line/line-bot-sdk-go 的參與貢獻開發過程。
接下來,透過一個小型 LINE Chatbot 的專案(一個回應使用者輸入,並且可以透過 AWS 與 GCP 提供的功能,來偵測臉部辨識的聊天機器人)講解如何透過 Google Cloud Run 來開發 LINE Chatbot 。
講者分享兩段透過 GCP 與 AWS 雲端服務以偵測臉部的相關範例程式碼,而其他聊天機器人所需要的相關處理程式碼也都帶過一次,完成聊天機器人開發上所有需要的部分。
部署上,講者先說明開發者所熟知,透過 ngrok 來部署聊天機器人的方式,接著,透過 docker-compose 的方式來部署,並且透過 docker 特有的 Multiple Stage Build 方式,來縮小部署的執行檔案。
最後,介紹 Google Cloud Run 的部署方式,透過 Container 的方式來實現 Serverless 的技術,讓你的 LINE Chatbot 變得更有效率與更經濟。
上線之後,講者也分享了實務上很常使用到的「三寶」- Logging、Tracing 跟 Metrics。解釋了在這次提供的案例中,如何加入 Stackdriver 的 Logging 與 Tracing,可惜時間不夠無法完整討論到 stackdriver 的 monitoring。
閃電秀
介紹完三位講者後,接下來就是介紹這個社群最有魅力的部分 – 閃電秀。所有的閃電秀內容可以參考這篇共筆文章 https://beta.hackfoldr.org/chatbot/,由於都是五分鐘的閃電秀,主要內容快速用條列介紹給各位:
- Is your bot ALIVE? / petertc
- 相關影片與投影片:
- 內容說明:
- 講者分享如何有效監控你的聊天機器人,並能精確的確認 chatbot 有正常運作。透過跑自動化測試的好幫手 http://doc.sikuli.org 也就是圖片的自動化測試工具,來監測你的聊天機器人是否有正常運作。
- Chatbot O2O 案例分享 / EJay
- 內容說明:
- 透過 LINE Chatbot 與動態網頁,跟現場參加活動的會眾互動。透過問卷調查的方式來贈送小獎品。蠻有趣的,可惜沒有相關影片與投影片。
- 內容說明:
- Chatbot 待辦小精靈 / Jeffrey
- 相關影片與投影片:
- 內容說明:
- 講者分享了自己開發的 chatbot “代辦小精靈”,透過五項代辦事項,希望讓使用者可以更有效率的處理待辦事項。也分享了未來將有更多相關工具的開發計畫。
- 收藏小幫手 – 金魚腦救星 / Zz Chen
- 相關影片與投影片:
- 內容說明:
- 透過 LINE Chatbot 可以結合 Google drive 幫忙使用者存取與暫存所有工作用的檔案,蠻有趣的小幫手工具。
- 從台幣匯率機器人延伸至團購 LIFF / Melix
- 相關影片與投影片:
- 內容說明:
- 相當有創意的應用,原本是開發一個出國幫忙記錄匯率的小幫手,由於不少人有代購的需求,轉變成代購小幫手的工具,開發成 LIFF 之後,透過鏈結的分享,也搖身一變成為團購使用的小工具,相當建議各位看看影片介紹。
- 迷你綠洲 LINE 智慧淨水器 / McGee
- 內容說明:
- 分享透過淨水器產品,如果需要更換濾心可以透過 LINE Chatbot 通知。由於牽扯商業宣傳就不提供,請有興趣的去看共筆。
- 內容說明:
- 自幹一個 Flex Message Editor / Ding
- 內容說明:
- 很棒的工具, Bot Designer 雖然是很方便的工具,但是使用上收到不少的建議,於是講者自行開發了另外一套 FLEX MEssage Editor,功能相當不錯,可惜是商業作品也不方便宣傳。
- 內容說明:
活動小結
社群分享永遠是讓創意激盪的最佳方式,而 Chatbots Meetup 是一個很熱情且充滿創造力的社群組織。也希望更多有創意的開發者願意加入 LINE Chatbot 的開發行列,更希望能熱情的參與社群活動,一起分享最有趣的想法。
立即加入「LINE開發者官方社群」官方帳號,就能收到第一手Meetup活動,或與開發者計畫有關的最新消息的推播通知。▼
「LINE開發者官方社群」官方帳號ID:@line_tw_dev
關於「LINE 開發社群計畫」
LINE 今年年初在台灣啟動「LINE 開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,預計全年將舉辦 30 場以上的活動。歡迎讀者們能夠持續回來查看最新的狀況。詳情請看 2019 年LINE 開發社群計畫活動時程表 (持續更新)https://engineering.linecorp.com/zh-hant/blog/line-taiwan-developer-relations-2019-plan/)