winterjung / chatterbox

Python library for Kakaotalk chatbot
MIT License
77 stars 16 forks source link

Question: Different behavior of fallback than described in the README #9

Open krepe-suZette opened 6 years ago

krepe-suZette commented 6 years ago

:memo: Description

:computer: System

:fire: Error

action="*" 인 rule 이 있는 상태일때 failback 함수의 action을 만족하더라도 action="*"이 달린 함수가 실행이 됩니다. 이게 README 파일에 잘못 적힌것인지, 구현이 잘못된것인지 모르겠네요.

:eyes: Expected behaviour

기대했던 동작은 README.md에 적힌대로 유저가 어떤 상태에 있더라도 원하는 dest로 이동을 하는 것이였는데 그렇지 않네요.

:building_construction: Steps to recreate

image 처음에 chatter 객체 만들때 fallback=True 해뒀습니다.

image 이 그림판으로 그린 그림처럼 만들었습니다.

winterjung commented 6 years ago

자세한 이슈 리포팅 감사합니다!

fallback 함수는 현재 state와 action에 맞는 규칙이 없을 때 마지막으로 호출되는 함수로 위와 같은 경우에 모든 input이 action=*, src="자유 입력"을 만족하므로 cancel 함수가 평가되지 않고있습니다. fallback 함수의 의도는 action=*과 같은 규칙이 없을 때 최소한의 탈출 장치였습니다.

flask_advance.py에 나와있는 예제를 참고해 dest를 분리해주신다면 원하시는 대로 동작할 수 있을듯합니다. README에 적힌 설명이 불충분했는데 곧 업데이트 하겠습니다.