def _import_slot_types()

in templates/custom-resources/lexutils.py [0:0]


    def _import_slot_types(self):
        ''' create/update slot types
        '''
        for slot_type in self._bot_definition['slot_types']:
            name = slot_type['name']
            version = '$LATEST'
            if self._slot_types.get(name):
                logger.info('updating slot type: {}'.format(name))

                try:
                    get_slot_type_response = self._lex_client.get_slot_type(
                        name=name, version=version
                    )
                except Exception as e:
                    logger.error('Lex get_slot_type call failed')
                    logger.error(e)
                    raise
                checksum = get_slot_type_response['checksum']
                try:
                    self._lex_client.put_slot_type(
                        checksum=checksum, **slot_type
                    )
                    logger.info('successfully updated slot type: {}'.format(name))
                except Exception as e:
                    logger.error('Lex put_slot_type call failed')
                    logger.error(e)
                    raise
            else:
                logger.info('creating slot type: {}'.format(name))
                try:
                    self._lex_client.put_slot_type(**slot_type)
                    logger.info('sucessfully created slot type: {}'.format(name))
                except Exception as e:
                    logger.error('Lex put_slot_type call failed')
                    logger.error(e)
                    raise