[Day25] 透过GCP实作(1/4):透过Cloud Function直接拉取资料

接下来这几天,将会带领各位以GCP的架构的视角。
向各位阐述我们先前进行的DialogFLow Fulliment操作实际上的架构图是什麽
而你可以在这个基础上进行怎样的设计来建构更好的流程。

先前实作所建构的架构

在数天前的实作教学中:

我们藉由内建在DialogFlow的Inline Editor,
在Cloud Function上建立DialogFlow Fullfiment。
从GCP的架构来看,我们可以得到下方这张图:
diagram-1
从这张示意图,我们可以理解Google助理与我们的Action是如何互动的,

当使用者透过Google助理与我们的Action互动後,
Google助理会辨识用户输入的语音,并将辨识後得到的文字转传给DialogFlow。
执行自然语言处理的DialogFlow会寻找对应的Intent,并设法给予相对应的回应。
如果指定的Intent被设定以Fullfiment来处理回应,则DialogFlow会将撷取到的参数送往Fullfiment。
并由Fullfiment的程序码进行逻辑盼判断来产生回应。
上述的说明也可以透过这张图来表示:
diagram-2

透过Cloud Function直接拉取资料

假定你所使用的资料是Open API。
那麽,你可以透过处理DialogFLow Fullfiment的Cloud Function直接拉取资料。
从GCP的角度,现在你的专案架构会变成以下形式:
diagram-3

例如

介接《萌典》的 OPEN API 所建构的Action

下一步...

在明天的文章中,将会说明如何进行前後端分离。
使两个不同的Cloud Function分别专注於不同的任务上,
而这麽做可以为我们带来甚麽好处。


<<:  纯手工打造UART版资料清洗工具之 Pyside2 GUI 大补帖 - Part A

>>:  Day 25 - HBuilder X 产生 apk

[ Day 04 ] Virtual DOM ? ReactDOM ?

还记得我们在 Day 02 的时候有跟大家提到 React.js 是使用 Virtual DOM ...

【Day 15】从零开始的 Debug 生活 - Debugger 原理

环境 Windows 10 21H1 x64dbg Aug 2 2020, 13:56:14 IDA...

Day 12:摆放控制项(一)

视窗应用软件开发其中一个环节是版面设计。JUCE 有几种控制版面的作法,本篇介绍如何使用 juce:...

使用 Effect Hook( Day17 )

上一篇介绍过 State Hook 用来储存状态,Effect Hook 则用来处理 functio...

Day 22 rspec-rails 介绍!

该文章同步发布於:我的部落格 今天我们会把 RSpec 安装进入 Rails 里面,以及一些基本的...