как обработать подтверждение формы rasa или отклонение от actions.py - PullRequest
0 голосов
/ 22 января 2020

на основе приведенной ниже истории:

## certif deny_repeat_affirm_stop
* greet
  - utter_greet
* request_certificate
  - certificate_form
  - form{"name": "certificate_form"}
  - form{"name": null}
  - utter_did_that_help
* deny
  - utter_ask_again
* request_certificate
  - certificate_form
  - form{"name": "certificate_form"}
  - form{"name": null}
  - utter_did_that_help
* affirm
  - utter_noworries
* goodbye
  - utter_goodbye
  - action_restart

мне нужно опубликовать (остальные api) форму в сервисе, как я могу это сделать из actions.py, когда пользователь подтверждает:

* подтвердите

я ищу уловку или что-то еще, что может помочь мне прочитать * подтверждение в actions.py

1 Ответ

1 голос
/ 27 января 2020

Для этого можно использовать пользовательские действия .

Ваш файл domain.yml должен выглядеть следующим образом:

intents:
    - affirm

actions:
    - action_affirm

Ваш файл story.md должен выглядеть следующим образом:

* affirm
    - action_affirm

Ваш файл actions.py должен выглядеть следующим образом:

from rasa_core_sdk import Action
from rasa_core_sdk.events import SlotSet

class ActionAffirm(Action):
    def name(self):
        return 'action_affirm'

    def run(self, dispatcher, tracker, domain):

            #Do Something you want


        ...
...