def _add_special_input(self, text): special_input = text.split('=')[0].strip() text = text.split('=')[1].strip() table = StringUtils.get_table_from_input(text) builder = CategoricalTableBuilder(special_input) for key, value in table.items(): builder.add_row(key, value) self._system.add_content(builder.build())
def _add_incremental_utterance(self, text): follow_previous = text.startswith('/') incomplete = text.endswith('/') text = text.replace('/', '').strip() table = StringUtils.get_table_from_input(text) # TODO: Use Thread self._system.add_content( Assignment(self._system.get_settings().user_speech, 'busy' if incomplete else 'None')) self._system.add_incremental_user_input(table, follow_previous) if not incomplete: self._system.get_state().set_as_committed( self._system.get_settings.user_input)
def AddToChatLogUser(self): umsg = self.userinput.text().strip() if self._system._paused: self.userinput.setText("") else: self.userinput.setText("") if umsg is '': return if '/' in umsg: self._add_incremental_utterance(umsg) elif '=' in umsg: self._add_special_input(umsg) else: self._system.add_user_input( StringUtils.get_table_from_input(umsg))