跳轉到主要內容
本教學課程將逐步引導您建立規則,在玩家變更其聯絡電子郵件地址時傳送驗證電子郵件。

需求

這是進階教學課程。請確認已符合所有需求,否則您將無法完成本教學課程。
  • 若要使用電子郵件範本傳送自訂電子郵件,您需要擁有自己的 SMTP 伺服器,並具備使用者名稱和密碼。在依照我們的教學課程使用附加元件設定 SMTP 伺服器操作之前,請先確認您有自己的 SMTP 伺服器。
您可以使用 Gmail 進行測試,但使用 Gmail 時,每天最多只能傳送 2,000 封電子郵件。
  • 需要具備如何建立玩家的基本知識,因為在呼叫帳戶復原邏輯之前,需要有具備使用者名稱和密碼的玩家。
  • 如果您不熟悉 Game Manager,請閱讀 Game Manager 快速入門,因為電子郵件範本是在其中建立的。
  • 需要具備如何使用玩家設定檔的知識,以確認聯絡電子郵件已新增至玩家的設定檔。請在取得玩家設定檔教學課程中了解如何取得玩家的設定檔,並確認您已在遊戲的 Client Profile Options 下允許 Contact email addresses。
  • 本教學課程需要建立規則,因此最好先了解規則的運作方式。

步驟 1 - 建立電子郵件範本

我們首先要建立帳戶復原電子郵件範本。
  • 從左側功能表選取 Content。
  • 前往 Email Templates 索引標籤。
  • 選取 NEW EMAIL TEMPLATE 按鈕。
Game Manager - Content - Email Templates 現在新增 New Email Template,依下列方式填寫欄位,並將 Error Callback URL 保留空白:
  • Template name:MyFirstEmailVerificationTemplate
  • Template type:Email Verification
  • Email subject:Verify your email
  • Email body:(依下列方式輸入)
  • From Name:您想在電子郵件 From 欄位中顯示的名稱。
  • From Email Address:您想在電子郵件 From 欄位中顯示的電子郵件地址。這必須是 SMTP 伺服器允許您用來傳送電子郵件的電子郵件網域。
某些電子郵件伺服器 (例如 Gmail) 會忽略此欄位,並從 SMTP 伺服器所設定的帳戶傳送。

需要記住的幾件事

  • 電子郵件本文中的 $ConfirmationUrl$ 會產生一個自訂 URL,選取該 URL 時,會追蹤使用者已選取該 URL,然後發出重新導向至 Callback URL。在此案例中,它被插入到錨點標記中。
  • Callback URL 是玩家選取 Confirmation URL 連結後,PlayFab 將重新導向的 URL。它可以是一個靜態頁面,告知使用者已成功確認其電子郵件。在此案例中,我們將重新導向至 https://www.example.com。
Game Manager - Content - Email Templates - 新電子郵件範本 填寫表單後,選取 SAVE EMAIL TEMPLATE 按鈕,您會被重新導向回包含電子郵件範本清單的頁面。請記下電子郵件範本的識別碼,因為步驟 4 將會用到。 Game Manager - Content - 電子郵件範本識別碼

步驟 2 - 建立在聯絡電子郵件更新時傳送電子郵件的規則

接下來,我們將建立一個規則,在玩家每次更新其聯絡電子郵件時傳送驗證電子郵件。在 Game Manager 中:
  • 在左側功能表中選取 Automation。
  • 選取 Rules 索引標籤。
  • 選取 NEW RULE。
  • 在 Rule Name 欄位中填入您的 Rule VerifyUpdatedEmail。
  • 從 Event Type 下拉式清單中,選取 com.playfab.player_updated_contact_email。
  • 在 Actions 標題下,選取 +ADD ACTION。
Game Manager - Automation - 新規則 - 新增動作 從 Type 下拉式清單中選擇 Send Email。
  • Email template 下拉式清單應已填入步驟 1 中建立的範本 MyFirstEmailVerificationTemplate。
  • 如果沒有,請從下拉式清單中選取 MyFirstEmailVerificationTemplate。
Game Manager - Automation - 新規則 - 儲存動作

步驟 3 - 將聯絡電子郵件新增至玩家

下一個步驟需要一個現有的玩家帳戶。 我們使用 AddOrUpdateContactEmail 將聯絡電子郵件新增至玩家。
玩家設定檔中的 Contact Email 欄位與玩家設定檔中的 Login Email 欄位不同,即使兩者可能包含相同的電子郵件地址。每當您傳送電子郵件給玩家時,它只會傳送至聯絡電子郵件地址。

C# 程式碼範例

在下列範例中,我們會登入玩家,然後使用 AddOrUpdateContactEmail 新增聯絡電子郵件。請確認與玩家相關聯的電子郵件地址是您可以存取的地址。
‘AddOrUpdateContactEmail’ 成功後,com.playfab.player_updated_contact_email 事件會觸發規則,PlayFab 會自動傳送驗證電子郵件。不需要另外執行傳送電子郵件的步驟。

步驟 4 - 確認聯絡電子郵件已新增至玩家的設定檔

接下來,確認聯絡電子郵件已新增至玩家的設定檔。登入 Game Manager,然後前往 Players Profile 頁面。 您應該會看到該玩家列出的 Contact Email,且 Verification Status 為 Pending。
如果尚未傳送驗證電子郵件,Verification Status 可能為 Unverified,但一旦傳送電子郵件,就會轉為 Pending 狀態。
Game Manager - 玩家設定檔 - 聯絡電子郵件 - 驗證擱置中 您也可以呼叫 GetPlayerProfile,並在 PlayerProfileViewConstraints 中將 ShowContactEmailAddresses 設定為 True,以顯示玩家現在擁有我們剛新增的聯絡電子郵件。

步驟 5 - 檢查電子郵件是否已傳送

最後,我們可以檢查帳戶復原電子郵件是否已傳送。 您可以做的第一件事,是在 Game Manager 中前往玩家的 PlayStream:
  • 在左側功能表中選取 Players。
  • 在 Players 索引標籤上,前往 PlayStream 區域。
  • 它應該會顯示 Sent Email Event。
Game Manager - Players - PlayStream - 已傳送電子郵件事件 選取事件上的 Info 圖示,應該會顯示類似下列的 JSON。
若要驗證您是否確實收到電子郵件,請前往您在步驟 3 中建立之玩家的電子郵件。應該會有一封類似下列的電子郵件。 驗證您的電子郵件 - 電子郵件 如果您檢查該電子郵件中的 URL,會看到它看起來類似下列 URL。
當玩家選取該 URL 時,會發生三件事:
  1. PlayFab 會產生一個名為 auth_token_validated 的新 PlayStream 事件。這就是您得知玩家已選取電子郵件中該 URL 的方式。
    • 您可以使用該事件觸發動作,例如授與玩家金幣或項目。
  2. 由於此電子郵件範本是特殊的 Email Verification 範本,PlayFab 接著會將玩家的電子郵件標示為已驗證。
  3. PlayFab 會傳回一個重新導向 URL,將玩家帶往回呼 URL 網站。
    • 您可以在此網站上顯示靜態的 Thanks for verifying your email 訊息,或更精緻的內容。重新導向 URL 看起來類似這樣:https://www.example.com/?token=2346241B7C277796。
    • 請選取電子郵件中的 URL。
    • 您會被帶到 example.com 網站。
    • 使用 Game Manager 檢視您的玩家設定檔。
    • 您會看到 Verification status 已變更。
Game Manager - 玩家設定檔 - 聯絡電子郵件 - 驗證已確認

結論

本教學課程到此結束。您已了解如何設定 SMTP 伺服器、建立電子郵件範本,以及建立會傳送電子郵件給玩家以驗證其電子郵件地址的規則。 如果您對本教學課程有任何問題或意見反應,請在我們的社群 Discord 中告訴我們。
最後修改於 2026年10月8日