

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 設定 Amazon Connect 中的規則型身分解析的比對規則
<a name="setup-matching-rule-examples"></a>

## 限制
<a name="setup-matching-rule-example-limits"></a>

您可以從標準設定檔中選擇任何屬性來比較類似的設定檔。例如，您可以選擇電話號碼、電子郵件地址和姓名，以及自訂屬性。

您可以使用下列限制來建立規則式匹配流程規則：
+ 15 個規則層級
+ 每個規則層級最多可以包含 15 個設定檔屬性

## 提示
<a name="setup-matching-rule-example-tips"></a>

若要改善對唯一設定檔的鎖定，並避免合併非重複的設定檔，建議使用下列秘訣：
+ 納入至少一個可唯一識別客戶，且客戶之間不太可能相同的高基數屬性，例如電話號碼、電子郵件地址或帳號。
+ 如果設定檔屬性可能屬於不具高基數屬性的不同身分，請避免使用。
  + 帶有**名字**、**姓氏**的**電話號碼**，相較於只有**名字**、**姓氏**的組合而言是更強大的規則。
+ 如果在一個規則層級中，該規則的所有設定檔屬性都是低基數屬性 (可能屬於超過 500 個不同設定檔的屬性)，則 Customer Profiles 不會嘗試比對設定檔。如果您在網域建立期間設定規則，您的 DLQ 將會收到下列 SQS 訊息：
  + 規則層級 x 的所有屬性都與 500 筆以上的記錄關聯。
+ 始終先啟用 **僅限相符**，檢查相符結果，如果您滿意相符結果，則僅透過設定 **MaxAllowedRuleLevelForMerging** 來啟用合併。

## 解決設定檔合併中的設定檔衝突
<a name="setup-matching-rule-example-resolve-conflicts"></a>

您可以定義當來自兩個或多個類似設定檔的屬性值不同 (例如位址記錄衝突) 時使用哪個記錄。

**上次更新時間戳記**

依據預設，設定檔衝突由時近來管理。當兩個或兩個以上的類似設定檔的值之間發生衝突時，將會選擇最近更新的屬性。

**具有上次更新時間戳記的來源**

可讓您將特定物件類型的記錄排定為資料來源的優先順序，以管理設定檔衝突。當兩個或兩個以上類似的設定檔的值發生衝突時，會從指定的物件類型中選擇最近更新的屬性。

如果您的物件類型中未指定時間戳記，則會使用記錄擷取至客戶設定檔的日期。如果您未設定任何整合，則無法使用具有上次更新時間戳記的來源。當您新增整合時，您的物件類型將可作為此選項的來源使用。

## 設定檔衝突缺少時間戳記
<a name="setup-matching-rule-example-missing-timestamp-for-profile-conflicts"></a>

如果您有自訂物件類型對映，則會顯示「缺少時間戳記」訊息。

使用 [PutProfileObjectType](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_PutProfileObjectType.html) API，將下列新屬性新增至您的自訂物件類型：
+ `Fields.sourceLastUpdatedTimestamp`
+ `sourceLastUpdatedTimestampFormat`

如果未指定時間戳記屬性，您可以繼續建立合併條件，不過，系統會使用記錄擷取至客戶設定檔時的預設時間戳記。建議您在建立合併條件之前新增屬性。

如果您已經定義了自訂物件類型，並且想要更新您的自訂物件類型，我們每週都會使用 `Fields.sourceLastUpdatedTimestamp` 來執行排程回填。若要選擇加入排定的回填，請執行下列步驟：

1. 使用 [PutProfileObjectType](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_PutProfileObjectType.html) API 更新您的自訂設定檔物件類型。

1. 更新自訂設定檔物件類型後，請開立 [AWS Support 票證](https://console.aws.amazon.com/support/home)。

1. AWS 將代表您排程回填。排定的回填會執行至 2022 年 2 月底。

或者，您可以刪除，然後為您的網域 (使用自訂物件類型) 重新建立擷取/連接器。您的所有資料都將使用更新的物件類型重新導入，並將從其中解析出 `Fields.sourceLastUpdatedTimestamp`。

## 範例：比對的運作方式
<a name="setup-matching-rule-example-how-matching-works"></a>

### ONE\_TO\_ONE 的範例
<a name="setup-matching-rule-example-one-to-one"></a>

您可以選擇 `ONE_TO_ONE` 作為 `AttributeMatchingModel`。選擇 `ONE_TO_ONE` 時，系統只有在子類型完全相符時匹配。

**例如**：

您正在使用 `EmailAddress` 和 `BusinessEmailAddress` 來表示 `EmailAddress` 類型。`AttributeMatchingModel` 為 `ONE_TO_ONE`。

**您的比對規則為**：

```
Rule Level 1: EmailAddress, LastName, FirstName
Rule Level 2: AccountNumber
```

```
Profile A:
EmailAddress: 1@email.com
BusinessEmailAddress: john@company.com
LastName: Doe
FirstName: John
AccountNumber: account1234
```

```
Profile B:
EmailAddress: 2@email.com
BusinessEmailAddress: john@company.com
LastName: Doe
FirstName: John
AccountNumber: account1234
```

設定檔 A 和設定檔 B 在規則層級 1 相符，因為 `EmailAddress` 類型、`LastName` 和 `FirstName` 相符。

### MANY\_TO\_MANY 的範例
<a name="setup-matching-rule-example-many-to-many"></a>

您可以選擇 `MANY_TO_MANY` 作為 `AttributeMatchingModel`。選擇 `MANY_TO_MANY` 時，系統可以跨屬性類型的子類型比對屬性。

**例如**：

您正在使用 `EmailAddress` 和 `BusinessEmailAddress` 來表示 `EmailAddress` 類型。`AttributeMatchingModel` 為 `MANY_TO_MANY`。

**您的比對規則為**：

```
Rule Level 1: EmailAddress, LastName, FirstName
Rule Level 2: AccountNumber
```

```
Profile A:
EmailAddress: 1@email.com  (match with Profile B’s BusinessEmailAddress)
BusinessEmailAddress: john@company.com
LastName: Doe
FirstName: John
AccountNumber: account1234
```

```
Profile B:
EmailAddress: 2@email.com
BusinessEmailAddress: 1@email.com (match with Profile A's EmailAddress)
LastName: Doe
FirstName: John
AccountNumber: account1234
```

設定檔 A 和設定檔 B 在規則層級 1 相符，因為 `EmailAddress` 類型、`LastName` 和 `FirstName` 相符。