Skip to content

Commit 8415a7a

Browse files
committed
Use custom built in intent file if defined
1 parent 169eeaa commit 8415a7a

1 file changed

Lines changed: 41 additions & 9 deletions

File tree

lib/BotManager/client.rb

Lines changed: 41 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -211,20 +211,43 @@ def register_bots_with_lex
211211

212212
next unless @lex_valid_amazon_intents.include? builtin_intent[:type]
213213

214-
intent_name = generate_lex_full_name builtin_intent[:name]
214+
if @builtin_intents[builtin_intent[:type]].nil?
215215

216-
lex_intent = Lex::BuiltInIntent.new builtin_intent[:type], intent_name
216+
intent_name = generate_lex_full_name builtin_intent[:name]
217217

218-
fulfillment_activity = builtin_intent[:fulfillment_activity]
218+
lex_intent = Lex::BuiltInIntent.new builtin_intent[:type], intent_name
219219

220-
if !fulfillment_activity.nil? && !fulfillment_activity.empty?
221-
lex_fulfillment_activity = Lex::CodeHookFulfillmentActivity.new fulfillment_activity[:uri]
222-
lex_intent.set_fulfillment_activity lex_fulfillment_activity
223-
end
220+
fulfillment_activity = builtin_intent[:fulfillment_activity]
221+
222+
if !fulfillment_activity.nil? && !fulfillment_activity.empty?
223+
lex_fulfillment_activity = Lex::CodeHookFulfillmentActivity.new fulfillment_activity[:uri]
224+
lex_intent.set_fulfillment_activity lex_fulfillment_activity
225+
end
226+
227+
version = @lex_manager.register_intent lex_intent
224228

225-
version = @lex_manager.register_intent lex_intent
229+
lex_bot.register_intent intent_name, version
226230

227-
lex_bot.register_intent intent_name, version
231+
else
232+
233+
custom_builtin_intent = @builtin_intents[builtin_intent[:type]]
234+
235+
intent_name = generate_lex_full_name custom_builtin_intent.name
236+
237+
lex_intent = Lex::BuiltInIntent.new builtin_intent[:type], intent_name
238+
239+
fulfillment_activity = custom_builtin_intent.lex[:fulfillment_activity]
240+
241+
if !fulfillment_activity.nil? && !fulfillment_activity.empty?
242+
lex_fulfillment_activity = Lex::CodeHookFulfillmentActivity.new fulfillment_activity[:uri]
243+
lex_intent.set_fulfillment_activity lex_fulfillment_activity
244+
end
245+
246+
version = @lex_manager.register_intent lex_intent
247+
248+
lex_bot.register_intent intent_name, version
249+
250+
end
228251

229252
end
230253

@@ -603,6 +626,15 @@ def register_interaction_model_with_alexa
603626

604627
language_intent = BotManager::Alexa::LanguageModel::Intent.new intent_name
605628

629+
if !@builtin_intents[intent_name].nil?
630+
631+
custom_builtin_intent = @builtin_intents[intent_name]
632+
633+
custom_builtin_intent.sample_utterances.each do |utterance|
634+
language_intent.add_sample utterance
635+
end
636+
end
637+
606638
language_intents[intent_name] = language_intent
607639

608640
end

0 commit comments

Comments
 (0)