COSCUP x RubyConf TW 2021

用 Machinat 框架打造全平台的對話體驗
08-01, 10:00–10:30 (Asia/Taipei), TR209
Language: 漢語


Translate Title

Build All-Platform Chat UI/UX With Machinat.js

Talk Length

30

您是否知悉並同意如採遠端形式分享,需提供預錄影片(您需同意大會才能接受您的稿件) – yes Target audience

Chatbot Developers
Javascript Developers
React.js Developer

Difficulty

中階

講者所屬的公司或組織名稱

Machinat LLC

講者所屬社群

Chatbot Developer

other info

GitHub: https://github.com/lrills

slido url

https://app.sli.do/event/b1tot1si

hackmd url

https://hackmd.io/@coscup/rkgpLTvCO/%2F%40coscup%2FB1qqITw0O

Abstract

Chatbot 對使用者是最為簡單親近的一種應用程式, 但對開發者要面對的是比 GUI Based App 更多的技術挑戰。要在對話平台打造良好的 UI/UX,你可能會遇到以下問題:

  • 處理使用者時序上難以預料的各種輸入。
  • 在回覆裡同時要使用各種文字、圖片以及 GUI Widget。
  • 在無狀態的伺服器端卻要處理有狀態的對話流程。
  • 要使用額外的 webview 來提供更完善的功能與體驗。
  • 各種功能都必須支援複數對話平台才能達到90%以上覆蓋率。

這些全新的技術挑戰與我們熟悉的 GUI App 開發模式相當不同,我們需要一個全新的解決方案。Machinat 框架提供以下特點,協助開發跨平台且功能強大的對話式 App:

  • One App For All Chat Platform
  • 支援完整的對話平台原生功能。
  • 使用宣告式 API 打造對話 UI 以及對話流程。
  • 跨平台的 Chat UI Component。
  • 與對話平台帳號整合的 webview。

在這個議程裡你會知道 Machinat 如何幫助開發者打造一個跨平台對話式 App,包含跨平台 UI、對話流程、語意辨識,以及對話內嵌的 webview。

English Abstract

Chatbot is the most easy-to-use app format to get in touch with users. But making good UI/UX in chat is never easy, here are some technical problems you might meet:

  • Handle more complex and more unpredictable user input.
  • Interact using Conversational UI and Graphical UI at the same time.
  • Manage conversation flow in a stateless backend.
  • Support multiple platforms to reach most of users.
  • Embed a webview for more features and even better experiences.

These challenges are pretty new and very different from the GUI based Mobile Apps or Web Apps. Machinat.js provide some advantages to help you building cross-platform chat UI/UX:

  • Make one app, serve on all chat platforms.
  • Declarative API for in-Chat UI & Conversation Flow.
  • Keeps all native features form the original chat platforms.
  • Make cross-platform UI component with JSX.
  • Embedded webview within the chat.

In this talk, you'll see how to build a cross-platform bot with interactive features (like a note app), and integrated with a webview in chatroom.