使用動作建構工具為 Google 助理設計動作 (第 2 級)

1. 總覽

Google 助理開發人員平台可讓您建立軟體,在超過 10 億部裝置上擴充 Google 助理 (虛擬個人助理) 的功能,包括智慧音箱、手機、汽車、電視、耳機等。使用者可以與 Google 助理對話,完成購物或預約車輛等事項。開發人員可以透過 Google 助理開發人員平台,輕鬆建立及管理使用者與第三方服務之間,令人愉悅且有效的對話體驗。

本程式碼研究室涵蓋中級概念,可協助您使用 Google 助理開發應用程式,並以第 1 級程式碼研究室建立的動作為基礎。強烈建議您先完成第 1 級程式碼研究室,再開始進行本程式碼研究室。

在本程式碼研究室中,您建構的動作會根據使用者選擇的輔助工具,預測他們在神話之地 Gryffinberg 冒險的命運。

建構項目

在本程式碼研究室中,您將建構進階的對話動作,並具備下列功能:

  • 收集使用者資料,並視值而定修改對話提示
  • 提出後續問題,進一步延伸對話
  • 建立遊戲迴圈,讓使用者在收到幸運餅乾後再次與動作互動

開始建構前,請在支援 Google 助理的裝置上說出「Ok Google,跟命運與財富對話」,與即時 Action 互動。回訪使用者透過這項動作的預設路徑如下:

dd6f5c61296b8b50.png

eba043f546aa8c51.png

課程內容

  • 如何使用位置收集使用者資料
  • 如何使用條件為場景新增邏輯
  • 如何新增遊戲迴圈
  • 如何新增支援路徑

軟硬體需求

本程式碼研究室的先決條件包括:

強烈建議您熟悉 JavaScript (ES6),雖然這不是必要條件,但有助於瞭解本程式碼研究室的完成程式碼。

2. 繼續建構對話式介面

第一個程式碼研究室中,您建立了一個簡單的對話式動作,其中包含單一場景 Start

在本程式碼研究室中,您將擴充動作的對話。在下列各節中,您將設定動作執行下列操作:

  • 在使用者想聽取運勢時,轉換至新的 Fortune 場景
  • 詢問使用者想在旅程中選擇哪種輔助工具
  • 根據使用者的選擇提供客製化運勢

建立Fortune場景

在本節中,您將建立 Fortune 場景,並定義使用者在對話期間如何轉換至該場景。

如要建立名為「Fortune」的新場景,請按照下列步驟操作:

  1. 開啟程式碼研究室第 1 級的 Actions 專案。
  2. 按一下導覽列中的「開發」
  3. 在「場景」下方,按一下「開始」場景。
  4. 按一下「yes」意圖 (「When yes is matched」方塊) 開啟選項。
  5. 清除「傳送提示」即可移除提示。
  6. 在「轉場效果」部分,按一下下拉式選單,然後點選文字方塊並輸入 Fortune
  7. 按一下「新增」。這會建立名為「Fortune」的新場景。此外,當使用者想聽取運勢時,也會新增從 Start 場景到 Fortune 場景的轉場效果。

56682a0c7459b98c.png

定義 Fortune 場景的對話邏輯

在本程式碼研究室中,您將設定 Fortune 場景,向使用者詢問「What do you choose to help you on your quest, a dragon, a translator, or a compass?」(您要選擇哪項工具來協助完成任務?是龍、翻譯機還是指南針?)您可以使用「運算單元填充」功能,在繼續操作前收集使用者的必要資訊。

你的動作會提供三種輔助工具的運勢:龍、翻譯機和指南針。如要設定動作,讓系統在使用者輸入內容中識別這三種選項,您必須建立新的型別

您可以在場景的填寫空位階段使用型別,定義要向使用者索取的資訊。當 NLU 引擎在使用者輸入內容中偵測到相符的 slot 時,會將該 slot 擷取為型別參數,方便您在場景中執行相關邏輯。

建立 available_options 類型

在本節中,您將建立名為 available_options 的新型別,指定使用者可選擇的三個選項 (dragon、translator 和 compass),以回應提示。您也可以為這些選項定義幾個同義詞,以防使用者說出類似的內容。在後續章節中,您會將 available_options 型別新增至 slot,指定要取得使用者的選擇。

如要建立 available_options 類型,請按照下列步驟操作:

  1. 點按導覽列中的「類型」
  2. 按一下「+」(加號),輸入 available_options,然後按下 Enter
  3. 點選 available_options 開啟選項。

類型會設定為資訊的鍵/值組合,其中是類型名稱,則是該鍵的同義字。定義鍵時,系統會自動將其新增為值。

如要新增使用者可選擇的三個選項,請按照下列步驟操作:

  1. 捲動至「新增項目」部分。
  2. 在「New entry」(新項目) 欄位中輸入 dragon,然後按下 Enter。這項操作會建立 dragon 金鑰。
  3. 在「新增值」欄位中輸入 hydra,然後按下 Enter,將其新增為值 (同義字)。接著,針對值 lizard 重複執行這個步驟。
  4. 新增其餘鍵和對應值:
  • translator | translatorcommunicatormachinedecodertranslate
  • compass | compassdirectionguide

8333b1b67445f21.png

  1. 按一下 [儲存]

現在,動作會將 available_options 視為龍、翻譯人員和指南針,並可辨識幾個對應的同義字。

設定運算單元填充

接著,您需要在 Fortune 場景中設定填寫欄位。如要設定填寫空位邏輯,請按照下列步驟操作:

  1. 在導覽列的「場景」下方,按一下「Fortune」
  2. Fortune 場景中,按一下「Slot filling」+ (加號)
  3. 在「Enter slot name」(輸入廣告空間名稱) 欄位中,新增 chosenOptions 做為廣告空間名稱。
  4. 在「選取類型」下拉式清單中,選取 available_options 做為時段類型。
  5. 勾選「這個時段為必選」核取方塊。

a461b906476e244.png

  1. 選取「傳送提示」,然後新增下列訊息和建議晶片:
candidates:
  - first_simple:
      variants:
        - speech: >-
            What do you choose to help you on your quest, a dragon, a
            translator, or a compass?
    suggestions:
      - title: 'Dragon'
      - title: 'Translator'
      - title: 'Compass'
  1. 按一下 [儲存]

您已將 available_options 類型新增至該位置,這會告知 Action 您需要先從使用者收集哪些資訊 (他們選擇的輔具),才能繼續進行。您也在該位置設定了提示,使用者到達場景的填寫位置階段時,系統會將提示加入提示佇列。

請注意,當您將插槽命名為 chosenOptions 時,「自訂插槽值回寫」欄位會更新為相同名稱 ($session.params.chosenOptions)。您可以在 Actions Builder 和用戶端程式庫的完成動作中,透過該名稱存取這個參數。

設定 scene.slots.status == "FINAL" 條件

新增時段後,條件 scene.slots.status == "FINAL"會自動加入條件清單。

條件 scene.slots.status == "FINAL" 會檢查是否已填滿所有空位。填滿所有空位後,條件可以觸發 Webhook、轉換至新場景,或將提示新增至提示佇列。

在本節中,您將設定 scene.slots.status == "FINAL",在填滿所有位置後,將提示新增至提示佇列。

如要將這個提示新增至 FINAL 條件,請按照下列步驟操作:

  1. 按一下 scene.slots.status == "FINAL" 開啟選項視窗。
  2. 選取「傳送提示」,然後新增下列提示:
candidates:
  - first_simple:
      variants:
        - speech: You picked $session.params.chosenOptions.
  1. 按一下 [儲存]

在模擬工具中測試動作

此時,您已定義使用者應選取哪些選項來填入該時段。從使用者取得這項資訊後,動作應提供參照使用者所選特定選項的提示。

如要測試動作,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」(輸入) 欄位中按一下或輸入 Talk to my test app,然後按下 Enter
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。(或者,您也可以點選「是」建議方塊。)

a899d45c542668f6.png

  1. 按一下、輸入或說出 dragon。系統應會提示「You picked dragon」(你選了龍)。

在下一個部分中,您可以為使用者可選取的每項輔助功能自訂提示。

使用條件自訂提示

在這個部分中,您可以為使用者可選擇的每個選項新增條件,並為每個條件新增自訂提示。

自訂dragon幸運籤餅

如要更新條件並自訂提示,讓使用者選擇「dragon」時顯示,請按照下列步驟操作:

  1. 按一下導覽列中的「開發」
  2. 在導覽列中,按一下「Fortune」場景。
  3. 按一下 scene.slots.status == "FINAL" 開啟選項視窗。
  4. 將條件陳述式更新為:scene.slots.status == "FINAL" && session.params.chosenOptions == "dragon"
  5. 選取「傳送提示詞」
  6. 在程式碼編輯器中,將提示更新為以下幸運餅乾內容:
candidates:
  - first_simple:
      variants:
        - speech: >-
            The people of Gryffinberg will be awestruck by the beauty and power
            of the ancient dragon. Much to your dismay, the townspeople fall
            into dispute over who will receive the honor of riding the dragon
            first. You return home from your quest without everlasting glory or
            a dragon.
  1. 按一下 [儲存]

d31767232ad908bd.png

現在,當使用者說出「龍」或類似的字詞時,你的動作會根據該選取項目提供運勢。接著,新增其餘兩個選項。

自訂translator幸運籤餅

如要新增條件並自訂使用者選擇「翻譯人員」時的提示,請按照下列步驟操作:

  1. 按一下「條件」旁邊的 + (加號)
  2. scene.slots.status == "FINAL" && session.params.chosenOptions == "translator" 新增至 else if 欄位。
  3. 選取「傳送提示」
  4. 在程式碼編輯器中新增下列提示:
candidates:
  - first_simple:
      variants:
        - speech: >-
            With the help of the translator, the rival factions in Gryffinberg
            are finally able to communicate with each other and resolve their
            disputes. You will complete your quest to restore peace in the town.
            The translator will be used on many subsequent journeys across the
            earth. After its work is done, it retires honorably to a premier
            location in the Gryffinberg History Museum.
  1. 按一下 [儲存]

c1af65e70dbf3dfe.png

自訂compass幸運籤餅

如要新增條件並自訂使用者選擇「指南針」時的提示,請按照下列步驟操作:

  1. 按一下「條件」旁邊的 + (加號)
  2. 在「else if」文字方塊中新增 scene.slots.status == "FINAL" && session.params.chosenOptions == "compass"
  3. 選取「傳送提示」
  4. 在程式碼編輯器中新增下列提示:
candidates:
  - first_simple:
      variants:
        - speech: >-
            The compass will help you find the mystical and ancient Library of
            Gryffinberg. Among its infinite stacks of dusty books, you find one
            entitled "Wisdom of the Ages". By the time you've read the
            50,000-page tome, the townspeople have forgotten their problems. You
            will write a second edition of "Wisdom of the Ages", but have
            limited commercial success.
  1. 按一下 [儲存]

在模擬工具中測試動作

此時,Action 應根據使用者選取的選項,提供客製化運勢。

如要測試動作,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」欄位中輸入 Talk to my test app,然後按下 Enter 鍵。
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。或者,按一下「是」建議晶片。
  4. 按一下、輸入或說出 Translator

29e17f950bd0dd71.png

您應該會收到「翻譯人員」選項的相應運勢。

3. 新增遊戲迴圈

在本節中,您將設定 Action,讓使用者選取其他選項,並在選取後聽到不同的運勢。這項變更類似於遊戲結束時顯示的「要再玩一次嗎?」訊息。如要建構這個迴圈,您可以重複使用先前建立的 yesno 意圖,並將這些意圖新增至名為 Again 的新場景。

建立Again場景

在本節中,您會建立新的 Again 場景,並新增提示,詢問使用者是否要選取其他選項。

如要建立 Again 場景,請按照下列步驟操作:

  1. 按一下導覽列中的「開發」
  2. 按一下「場景」下方的 + (加號)
  3. 輸入 Again,然後按下 Enter 鍵。
  4. 按一下導覽列中的 Again 場景。
  5. 按一下「On enter」旁邊的「+」(加號)
  6. 選取「傳送提示」,然後新增下列提示和建議方塊:
candidates:
  - first_simple:
      variants:
        - speech: >-
            That is what I see for you. Would you like to choose a different option and
            explore another future?
    suggestions:
      - title: 'Yes'
      - title: 'No'
  1. 按一下 [儲存]

Fortune 轉場到 Again 場景

使用者收到運勢後,對話必須轉換至新的 Again 場景。

如要從 Fortune 場景新增轉場效果至 Again 場景,請按照下列步驟操作:

  1. 按一下「Fortune」場景。
  2. 按一下第一個條件 (scene.slots.status == "FINAL" && session.params.chosenOptions == "dragon") 開啟選項視窗。
  3. 捲動並選取「轉場效果」下方的 Again
  4. 按一下 [儲存]
  5. 按一下第二個條件,開啟選項視窗。
  6. 捲動並選取「轉場效果」下方的 Again
  7. 按一下 [儲存]
  8. 按一下第三個條件,開啟選項視窗。
  9. 捲動並選取「轉場效果」下方的 Again
  10. 按一下 [儲存]

在模擬工具中測試動作

此時,Action 應在使用者收到運勢後,向他們顯示下列提示:「這就是我為你看到的運勢。你想選擇其他選項,探索其他未來嗎?」

如要測試動作,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」欄位中輸入 Talk to my test app,然後按下 Enter 鍵。
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。或者,按一下「是」建議晶片。
  4. 按一下、輸入或說出 dragon

b299e9fed9aedb69.png

您應該會收到龍年選項的運勢和 Again 提示。

新增意圖並轉換至 Again 場景

在本節中,您會將 yesno 意圖新增至 Again 場景,讓動作瞭解使用者是否要選擇新選項。您也可以為 yesno 意圖新增適當的轉場效果。yes 意圖會轉換為 Fortune 場景,而 no 意圖則會轉換為系統場景 End conversation

如要將意圖和轉場效果新增至 Again 場景,請按照下列步驟操作:

  1. 按一下導覽列中的「開發」
  2. 按一下 Again 場景。
  3. 按一下「使用者意圖處理」旁邊的「+」(加號)
  4. 從意圖下拉式選單中選取「是」
  5. 從「轉場效果」下拉式選單中選取 Fortune
  6. 按一下 [儲存]

c2efba35ea881b0d.png

  1. 按一下「使用者意圖處理」旁邊的「+」(加號)
  2. 從意圖下拉式選單中選取「否」
  3. 從「轉移」下拉式選單中選取「結束對話」
  4. 選取「傳送提示」,並在程式碼編輯器中新增下列提示:
candidates:
  - first_simple:
      variants:
        - speech: >-
            It pleases me that you are satisfied with your choice. Best of luck on your quest. Farewell.
  1. 按一下 [儲存]

在模擬工具中測試動作

現在,動作應該可以瞭解使用者是否要選擇新選項或結束對話。

如要測試 yes 意圖,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」欄位中輸入 Talk to my test app,然後按下 Enter 鍵。
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。或者,按一下「是」建議晶片。
  4. 點按、輸入或說出其中一個選項。
  5. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。

5d0690332efe2e29.png

系統應會顯示提示:「你希望誰協助你完成任務?是龍、翻譯員還是指南針?」

如要測試 no 意圖,請按照下列步驟操作:

  1. 點按、輸入或說出其中一個選項。
  2. 在輸入欄位中輸入 No,然後按下 Enter 鍵。

你應該會收到 End conversation 提示:「很高興你對自己的選擇感到滿意。祝你順利完成任務。Farewell.

4. 新增支援路徑

您已建構大多數使用者在動作中採取的路徑。不過,使用者可能會在 Fortune 場景中,對「你選擇哪項工具來協助完成任務?是龍、翻譯機還是指南針?」提示做出回應,但選擇的工具並非提供的選項。

在本節中,您可以設定動作,瞭解使用者何時選擇「魔法」、「金錢」、「馬」或「手機」,並在使用者選擇其中一個選項時,提示他們從原始的三個選項中選取一個。如要設定這項邏輯,您需要建立新的 type,其中包含其他選項和新的意圖 other_option,當使用者說出其中一個選項時,系統就會比對意圖。您也需要在 other_option 意圖中註解訓練詞組,以識別及擷取意圖參數

當 Google 助理的自然語言處理 (NLU) 引擎在使用者輸入內容中偵測到相符的參數時,就會將該值擷取為型別參數,方便您在場景中執行相關邏輯。在本程式碼研究室中,您會設定動作,擷取使用者選擇的輔助工具,並在提示中參照該選擇。

建立 unavailable_options 類型

您現在可以建立 unavailable_options 類型,其中包含各種不同選項,讓動作能識別使用者輸入內容中的資料。

如要建立 unavailable_options 類型,請按照下列步驟操作:

  1. 按一下導覽列中的「開發」
  2. 按一下「類型」下方的 + (加號)
  3. 輸入 unavailable_options,然後按下 Enter 鍵。
  4. 點選 unavailable_options 開啟選項。
  5. 在「Add entries」(新增項目) 區段中,輸入下列項目和對應值:

horse

horsestallionsteed

magic

magicenchantedspells

money

moneycashgold

phone

phonecellapps

鍵/值資料表應如下所示:

c9e119e0f5fb2a47.png

  1. 按一下 [儲存]

建立 other_option 意圖

接著,建立名為 other_option 的意圖,並加入包含 unavailable_options 類型選項的訓練詞組。當使用者選取 unavailable_options 類型中包含的選項時,系統就會比對這個意圖。

如要建立及設定 other_option 意圖,請按照下列步驟操作:

  1. 按一下「自訂意圖」下方的「+」(加號)
  2. 輸入 other_option,然後按下 Enter 鍵。
  3. 按一下 other_option 開啟視窗。
  4. 新增下列訓練詞組,每輸入完一個項目就按下 Enter 鍵:
  • I want to use spells
  • I really really want to use a phone
  • magic!
  • cash
  • I want to ride a horse
  1. 在「新增意圖參數」部分,將參數名稱更新為 chosenUnavailableOption
  2. 按一下 [儲存]

輸入訓練詞組時,Actions Builder 會辨識 unavailable_options 類型的 spellsphonemagiccashhorse,並自動醒目顯示 (註解) 這些字詞。Actions Builder 會在「新增意圖參數」部分自動新增意圖參數,如下圖所示。

意圖參數可讓您擷取選項名稱,並在提示中使用該選項。

df61d4489f0910.png

other_option 意圖新增至 Fortune 場景

您現在有一個意圖 other_option,可處理使用者指定非原始選項的選項。在本節中,您會將 other_option 意圖新增至 Fortune 場景。您可以根據使用者的輸入內容,使用意圖參數自訂提示。

如要將 other_option 意圖新增至 Fortune 場景,請按照下列步驟操作:

  1. 按一下「Fortune」場景。
  2. 按一下「使用者意圖處理」旁邊的「+」(加號)
  3. 從意圖下拉式選單中選取 other_option
  4. 選取「傳送提示」,然後新增下列提示:
candidates:
  - first_simple:
      variants:
        - speech: >-
            I have seen the future and a $intent.params.chosenUnavailableOption.original
            will not aid you on your journey. 

運算式 $intent.params.chosenUnavailableOption 是指意圖參數物件,$intent.params.chosenUnavailableOption.original 則是指該物件的值。original property 是指使用者指定的原始輸入內容。

  1. 按一下 [儲存]

4bab1efbe21056aa.png

當使用者在 Fortune 場景中說出 unavailable_options 類型列出的選項時,系統會比對 other_option 意圖,並將提示加入提示佇列。由於沒有指定轉場效果,場景執行迴圈會繼續重新評估條件階段。chosenOptions 接著,該位置會將提示新增至提示佇列,並傳送給使用者。

在模擬工具中測試動作

現在,當使用者選取 unavailable_options 類型中列出的其中一個選項時,您的動作應會適當回應,並指定使用者選取的輔助工具。接著,動作應提示使用者選擇其中一個原始選項 (龍、翻譯機或指南針)。

如要在模擬器中測試動作,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」欄位中輸入 Talk to my test app,然後按下 Enter 鍵。
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。或者,按一下「是」建議晶片。
  4. 在「Input」欄位中輸入 magic,然後按下 Enter 鍵。

3a42c33eca435f32.png

使用者選擇「magic」時,您可能會發現提示聽起來不正確,因為前面有「a」冠詞。您將在後續章節中解決這個問題。

新增 unavailable_options 處理常式

如要在 unavailable_options 類型中適當的選項前加上「a」冠詞,您可以在出貨邏輯中設定事件處理常式,檢查使用者選擇的選項是否需要加上「a」。首先,您需要在控制台中設定動作,以呼叫處理常式。

如要新增 unavailable_options 處理常式,請按照下列步驟操作:

  1. 按一下導覽列中的「開發」
  2. 按一下 Fortune 場景。
  3. 在「使用者意圖處理」下方,按一下「When other_option is matched」(當系統比對到 other_option 時) 開啟視窗。
  4. 取消勾選「傳送提示」核取方塊。
  5. 選取「呼叫 Webhook」核取方塊。
  6. 在事件處理常式的文字方塊中輸入 unavailable_options

52a0fba115f1b377.png

  1. 按一下 [儲存]

更新及部署完成

您已設定動作來呼叫 unavailable_options 事件處理常式,現在可以更新執行要求中的處理常式並部署。

如要更新執行要求,請按照下列步驟操作:

  1. 按一下導覽列中的「Webhook」
  2. greeting 處理常式下方新增下列程式碼:
app.handle('unavailable_options', conv => {
  const option = conv.intent.params.chosenUnavailableOption.original;
  const optionKey = conv.intent.params.chosenUnavailableOption.resolved;
  let message = 'I have seen the future and ';
  if(optionsNeedA.has(optionKey)){
    message = message + 'a ';
  }
  message = message + `${option} will not aid you on your journey. `;
  conv.add(message);
});
  1. const app = conversation(); 下方新增下列程式碼:
const optionsNeedA = new Set();
optionsNeedA.add('horse').add('phone');
  1. 按一下「儲存出貨資訊」
  2. 按一下「Deploy Fulfillment」(部署完成)。部署完成後,編輯器上方會顯示「您的 Cloud 函式部署作業已是最新版本」訊息。

瞭解程式碼

unavailable_options 處理常式會執行下列動作:

  • conv 物件取得 option 資料,並將 option 指派給 original 屬性,這是使用者的原始輸入內容
  • optionKey 指派給 resolved 屬性,這是 unavailable_options 類型的鍵
  • 檢查 optionKey 是否為需要「a」的選項之一;如果是,則建構訊息時會加上「a」
  • 透過 conv.add(message) 新增訊息

在模擬工具中測試動作

現在,Action 應會根據使用者從 unavailable_options 類型中選擇的項目,調整提示是否需要加上「a」冠詞。

如要測試動作,請按照下列步驟操作:

  1. 在導覽列中,按一下「測試」
  2. 在「Input」(輸入) 欄位中按一下或輸入 Talk to my test app,然後按下 Enter
  3. 在「Input」欄位中輸入 Yes,然後按下 Enter 鍵。或者,按一下「是」建議晶片。
  4. 在「Input」欄位中輸入 magic,然後按下 Enter 鍵。
  5. 在「Input」欄位中輸入 horse,然後按下 Enter 鍵。

54ee24c5c3c56e.png

您的動作應在「horse」選項前加上「a」冠詞,同時建構提示,但「magic」選項前不加「a」冠詞。

清除專案所用資源 (建議)

為避免產生可能的費用,建議您移除不打算使用的專案。如要刪除在本程式碼研究室中建立的專案,請按照下列步驟操作:

  1. 如要刪除 Cloud 專案和資源,請完成「關閉 (刪除) 專案」一節列出的步驟。
  1. 選用:如要立即從 Actions 控制台中移除專案,請參閱「刪除專案」。如果未完成這個步驟,專案會在約 30 天後自動移除。

5. 恭喜!

您已學會建構 Google 助理動作所需的中階技能。

涵蓋內容

  • 如何使用 Node.js 執行要求資料庫開發對話式動作
  • 如何使用「位置」收集使用者資料
  • 如何使用條件在場景中新增邏輯
  • 如何新增遊戲迴圈
  • 如何新增支援路徑

瞭解詳情

如要進一步瞭解如何為 Google 助理建構動作,請參閱下列資源:

在 Twitter 上追蹤 @ActionsOnGoogle,隨時掌握最新公告,並使用 #AoGDevs 分享您開發的內容!

意見回饋問卷調查

離開前,請填寫簡短的問卷調查,分享你的體驗。