Class: Google::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRule

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

Overview

A rule is a condition-action pair * A condition defines when a rule is to be triggered. * An action specifies what occurs on that trigger. Currently rules only work for controls with SOLUTION_TYPE_SEARCH.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudRetailV2alphaRule

Returns a new instance of GoogleCloudRetailV2alphaRule.



5188
5189
5190
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5188

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

Instance Attribute Details

#boost_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleBoostAction

A boost action to apply to results matching condition specified above. Corresponds to the JSON property boostAction



5124
5125
5126
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5124

def boost_action
  @boost_action
end

#conditionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaCondition

Metadata that is used to define a condition that triggers an action. A valid condition must specify at least one of 'query_terms' or 'products_filter'. If multiple fields are specified, the condition is met if all the fields are satisfied e.g. if a set of query terms and product_filter are set, then only items matching the product_filter for requests with a query matching the query terms wil get boosted. Corresponds to the JSON property condition



5134
5135
5136
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5134

def condition
  @condition
end

#do_not_associate_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleDoNotAssociateAction

Prevents query_term from being associated with specified terms during search. Example: Don't associate "gShoe" and "cheap". Corresponds to the JSON property doNotAssociateAction



5140
5141
5142
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5140

def do_not_associate_action
  @do_not_associate_action
end

#filter_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleFilterAction

  • Rule Condition: - No Condition.query_terms provided is a global match. - 1 or more Condition.query_terms provided are combined with OR operator. * Action Input: The request query and filter that are applied to the retrieved products, in addition to any filters already provided with the SearchRequest. The AND operator is used to combine the query's existing filters with the filter rule( s). NOTE: May result in 0 results when filters conflict. * Action Result: Filters the returned objects to be ONLY those that passed the filter. Corresponds to the JSON property filterAction


5151
5152
5153
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5151

def filter_action
  @filter_action
end

#ignore_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleIgnoreAction

Prevents a term in the query from being used in search. Example: Don't search for "shoddy". Corresponds to the JSON property ignoreAction



5157
5158
5159
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5157

def ignore_action
  @ignore_action
end

#oneway_synonyms_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleOnewaySynonymsAction

Maps a set of terms to a set of synonyms. Set of synonyms will be treated as synonyms of each query term only. query_terms will not be treated as synonyms of each other. Example: "sneakers" will use a synonym of "shoes". " shoes" will not use a synonym of "sneakers". Corresponds to the JSON property onewaySynonymsAction



5165
5166
5167
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5165

def oneway_synonyms_action
  @oneway_synonyms_action
end

#redirect_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleRedirectAction

Redirects a shopper to a specific page. * Rule Condition: - Must specify Condition.query_terms. * Action Input: Request Query * Action Result: Redirects shopper to provided uri. Corresponds to the JSON property redirectAction



5172
5173
5174
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5172

def redirect_action
  @redirect_action
end

#replacement_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleReplacementAction

Replaces a term in the query. Multiple replacement candidates can be specified. All query_terms will be replaced with the replacement term. Example: Replace "gShoe" with "google shoe". Corresponds to the JSON property replacementAction



5179
5180
5181
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5179

def replacement_action
  @replacement_action
end

#twoway_synonyms_actionGoogle::Apis::RetailV2alpha::GoogleCloudRetailV2alphaRuleTwowaySynonymsAction

Creates a set of terms that will be treated as synonyms of each other. Example: synonyms of "sneakers" and "shoes": * "sneakers" will use a synonym of "shoes" . * "shoes" will use a synonym of "sneakers". Corresponds to the JSON property twowaySynonymsAction



5186
5187
5188
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5186

def twoway_synonyms_action
  @twoway_synonyms_action
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
# File 'lib/google/apis/retail_v2alpha/classes.rb', line 5193

def update!(**args)
  @boost_action = args[:boost_action] if args.key?(:boost_action)
  @condition = args[:condition] if args.key?(:condition)
  @do_not_associate_action = args[:do_not_associate_action] if args.key?(:do_not_associate_action)
  @filter_action = args[:filter_action] if args.key?(:filter_action)
  @ignore_action = args[:ignore_action] if args.key?(:ignore_action)
  @oneway_synonyms_action = args[:oneway_synonyms_action] if args.key?(:oneway_synonyms_action)
  @redirect_action = args[:redirect_action] if args.key?(:redirect_action)
  @replacement_action = args[:replacement_action] if args.key?(:replacement_action)
  @twoway_synonyms_action = args[:twoway_synonyms_action] if args.key?(:twoway_synonyms_action)
end