in functions/source/lex_custom_lambda/chatbot_utils.py [0:0]
def create_bot(bot, lex_resources_prefix):
bot_exists = True
if 'version' in bot.keys():
del bot['version']
if 'slotTypes' in bot.keys():
del bot['slotTypes']
bot['intents'] = bot_intents
bot['name'] = lex_resources_prefix + bot['name']
logger.info("Bot ****************************************")
logger.info(json.dumps(bot))
try:
get_bot_response = lex_client.get_bot(name=bot['name'], versionOrAlias='$LATEST')
except lex_client.exceptions.NotFoundException as ex:
bot_exists = False
logger.error("Exception during get bot lex API call : " + str(ex))
except Exception as ex:
logger.error("Exception during get bot lex API call : " + str(ex))
raise
if bot_exists:
checksum = get_bot_response['checksum']
try:
put_bot_response = lex_client.put_bot(checksum=checksum, processBehavior='BUILD', **bot)
#logger.info('PUT BOT Response..............' + json.dumps(put_bot_response))
except Exception as ex:
logger.error("Exception during put bot lex API call : " + str(ex))
raise
else:
try:
put_bot_response = lex_client.put_bot(processBehavior='BUILD', **bot)
#logger.info('PUT BOT Response..............' + json.dumps(put_bot_response))
except Exception as ex:
logger.error("Exception during put bot lex API call : " + str(ex))
raise
return bot['name']