Class: Google::Apis::DialogflowV2::GoogleCloudDialogflowV2CallMatcher

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dialogflow_v2/classes.rb,
lib/google/apis/dialogflow_v2/representations.rb,
lib/google/apis/dialogflow_v2/representations.rb

Overview

Represents a call matcher that describes criteria for matching incoming SIP calls to a conversation. When Dialogflow get a SIP call from a third-party carrier, Dialogflow matches the call to an existing conversation by either: * Extracting the conversation id from the Call-Info header, e.g. Call-Info: ;purpose=Goog-ContactCenter- Conversation. * Or, if that doesn't work, matching incoming SIP headers against any CallMatcher for the conversation. If an incoming SIP call without valid Call-Info header matches to zero or multiple conversations with CallMatcher, we reject it. A call matcher contains equality conditions for SIP headers that all have to be fulfilled in order for a SIP call to match. The matched SIP headers consist of well-known headers (To, From, Call-ID) and custom headers. A CallMatcher is only valid if it specifies: * At least 1 custom header, * or at least 2 well-known headers.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDialogflowV2CallMatcher

Returns a new instance of GoogleCloudDialogflowV2CallMatcher.



5601
5602
5603
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5601

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#call_id_headerString

Value of the Call-ID header to match. If empty or unspecified, we don't match to the Call-ID header. Corresponds to the JSON property callIdHeader

Returns:

  • (String)


5573
5574
5575
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5573

def call_id_header
  @call_id_header
end

#custom_headersGoogle::Apis::DialogflowV2::GoogleCloudDialogflowV2CallMatcherCustomHeaders

Custom SIP headers. See the description of headers in the RFC. Corresponds to the JSON property customHeaders



5579
5580
5581
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5579

def custom_headers
  @custom_headers
end

#from_headerString

Value of the From header to match. If empty or unspecified, we don't match to the From header. Corresponds to the JSON property fromHeader

Returns:

  • (String)


5586
5587
5588
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5586

def from_header
  @from_header
end

#nameString

Output only. The unique identifier of this call matcher. Format: projects// locations//conversations//callMatchers/. Corresponds to the JSON property name

Returns:

  • (String)


5592
5593
5594
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5592

def name
  @name
end

#to_headerString

Value of the To header to match. If empty or unspecified, we don't match to the To header. Corresponds to the JSON property toHeader

Returns:

  • (String)


5599
5600
5601
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5599

def to_header
  @to_header
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5606
5607
5608
5609
5610
5611
5612
# File 'lib/google/apis/dialogflow_v2/classes.rb', line 5606

def update!(**args)
  @call_id_header = args[:call_id_header] if args.key?(:call_id_header)
  @custom_headers = args[:custom_headers] if args.key?(:custom_headers)
  @from_header = args[:from_header] if args.key?(:from_header)
  @name = args[:name] if args.key?(:name)
  @to_header = args[:to_header] if args.key?(:to_header)
end