

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Connect 客户 API 创建或管理规则时，为某些参数指定变量
<a name="contact-lens-variable-injection"></a>

当您使用 Connect Customer API（例如[CreateRule](https://docs.aws.amazon.com/connect/latest/APIReference/API_CreateRule.html)或 [UpdateRule](https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdateRule.html)）以编程方式创建或管理规则时，您可以为某些参数指定变量。当触发操作时，将根据[EventSourceName](https://docs.aws.amazon.com/connect/latest/APIReference/API_RuleTriggerEventSource.html)参数的值在运行时解析变量。

例如，假设您正在设置任务操作，并且希望添加更多上下文。以下示例说明了如何能够使用变量注入在任务的 `Description` 字段中包含联系的 ID 和座席的 ID：
+ 客户对电话呼叫不满意。在与联系 `$.ContactLens.PostCall.ContactId` 中的座席 `$.ContactLens.PostCall.Agent.AgentId` 的对话过程中检测到脏话

当触发操作时，他的字符串将解析为“客户对电话呼叫不满意”。在与联系 87654321-1234-1234-1234-EXAMPLEID345" 中的座席 12345678-1234-1234-1234-EXAMPLEID012 的对话过程中检测到脏话

下表列出了每个事件源以及用于可支持变量注入的字段的 JSONPath。


| EventSourceName | JSONPath 引用 | 
| --- | --- | 
| OnPostCallAnalysisAvailable | $.ContactLens.PostCall.ContactId<br />$.ContactLens.PostCall.Agent.AgentId<br />$.ContactLens.PostCall.Queue.QueueId | 
| OnRealTimeCallAnalysisAvailable | $.ContactLens.RealTimeCall.ContactId<br />$.ContactLens.RealTimeCall.Agent.AgentId<br />$.ContactLens.RealTimeCall.Queue.QueueId | 
| OnPostChatAnalysisAvailable | $.ContactLens.PostChat.ContactId<br />$.ContactLens.PostChat.Agent.AgentId<br />$.ContactLens.PostChat.Queue.QueueId | 
| OnSalesforceCaseCreate | $.ThirdParty.Salesforce.CaseCreate.CaseNumber<br />$.ThirdParty.Salesforce.CaseCreate.Name<br />$.ThirdParty.Salesforce.CaseCreate.Email<br />$.ThirdParty.Salesforce.CaseCreate.Phone<br />$.ThirdParty.Salesforce.CaseCreate.Company<br />$.ThirdParty.Salesforce.CaseCreate.Type<br />$.ThirdParty.Salesforce.CaseCreate.Reason<br />$.ThirdParty.Salesforce.CaseCreate.Origin<br />$.ThirdParty.Salesforce.CaseCreate.Subject<br />$.ThirdParty.Salesforce.CaseCreate.Priority<br />$.ThirdParty.Salesforce.CaseCreate.CreatedDate<br />$.ThirdParty.Salesforce.CaseCreate.Description | 
| OnZendeskTicketCreate | $.ThirdParty.Zendesk.TicketCreate.Id<br />$.ThirdParty.Zendesk.TicketCreate.Priority<br />$.ThirdParty.Zendesk.TicketCreate.CreatedAt | 
| OnZendeskTicketStatusUpdate | $.ThirdParty.Zendesk.TicketStatusUpdate.Id<br />$.ThirdParty.Zendesk.TicketStatusUpdate.Priority<br />$.ThirdParty.Zendesk.TicketStatusUpdate.CreatedAt | 