1.22.0
What's Changed
Update with pip:
pip3 install -U pywa
- [handlers] introducing new way to help split flow endpoint logic to multiple handlers (see example)
- [client] adding
add_flow_request_handler
method to registerFlowRequestHandler
s - [flows] pop
flow_token
fromFlowCompletion
.response - [docs] update examples
from pywa import WhatsApp, types
wa = WhatsApp(...)
@wa.on_flow_request("/my-flow")
def my_flow_handler(_: WhatsApp, flow: types.FlowRequest) -> types.FlowResponse | None:
...
@my_flow_handler.on(action=types.FlowRequestActionType.INIT)
def on_init(_: WhatsApp, request: types.FlowRequest) -> types.FlowResponse:
...
@my_flow_handler.on(action=types.FlowRequestActionType.DATA_EXCHANGE, screen="SIGN_UP")
def on_signup(_: WhatsApp, request: types.FlowRequest) -> types.FlowResponse:
...
@my_flow_handler.on(
action=types.FlowRequestActionType.DATA_EXCHANGE,
screen="LOGIN",
data_filter=lambda _, data: not user_repository.exists(data["email"]),
)
def if_not_registered(_: WhatsApp, request: types.FlowRequest) -> types.FlowResponse | None:
...
Full Changelog: 1.21.0...1.22.0