4.5. Saving and Loading
Saving
def visits() -> DialogueFlow:
transitions = {
'state': 'start',
'`It\'s your` #VISITS `visit!`': 'end'
}
macros = {
'VISITS': MacroVisits()
}
df = DialogueFlow('start', end_state='end')
df.load_transitions(transitions)
df.add_macros(macros)
return dfclass MacroVisits(Macro):
def run(self, ngrams: Ngrams, vars: Dict[str, Any], args: List[Any]):
vn = 'VISITS'
if vn not in vars:
vars[vn] = 1
return 'first'
else:
count = vars[vn] + 1
vars[vn] = count
match count:
case 2: return 'second'
case 3: return 'third'
case default: return '{}th'.format(count)Loading
Last updated
Was this helpful?