Intent trigger from custom action

I am trying to trigger another intent from a custom action, and i am able to do that but process takes lot of time to response. Can you help me, how can i reduce the process time or any other option to do it.

sorry, which process?

During custom action running , I trigger an another intent just before dispatch response.

EX - class ActionReactToReminder(Action): “”“Reminds the user to call someone.”""

def name(self) -> Text:
    return "action_react_to_reminder"

async def run(
    self,
    dispatcher: CollectingDispatcher,
    tracker: Tracker,
    domain: Dict[Text, Any],
) -> List[Dict[Text, Any]]:

    name = next(tracker.get_latest_entity_values("name"), "someone")
    response = requests.post(http://localhost:50001/conversations/{conversation_id}/trigger_intent",
                                         json={"name": intent_name}, headers={"Content-Type": "application/json"})
    if response.status_code == 200:
         response_json = json.loads(resp.content.decode('utf-8'))
    dispatcher.utter_message(f"Remember to call {name}!")

    return []

Hey @Ghostvv ! I have a doubt and I need help quickly. Is there any way I can contact you quickly?

@Akanksha1 could you please explain what are you trying to achieve?

@rishikesh2651 please post your problem on the forum, someone from rasa team will help you when they have time

During a form action running, it request for a slot after that whatever user write bot takes it as a slot filling data. But I want that if user write data which is already from our existing intent then bot should take it as an intent not as slot filling data.

Ex - Intent data - 1. greet 2. book restaurant

Conversation -

Normally Happen !.) user - hi bot - hi, how can i help you user - book restaurant bot - tell me no. of persons user - 2 bot - time user - 12pm bot - restaurant booked successfully

2.) user - hi bot - hi, how can i help you user - book restaurant bot - tell me no. of persons user - hi bot - please rephrase your sentence

What i want 3.) user - hi bot - hi, how can i help you user - book restaurant bot - tell me no. of persons user - hi bot - hi, how can i help you

I assume you’re using a form. Did you take a look at our docs on how to handle unhappy paths?

I tried to implement unhappy path but Not working.

Stories.md -

unhappy_path

  • request_restaurant
    • restaurant_form
    • form{“name”: “restaurant_form”}
  • greet
    • utter_greet
    • form{“name”: null}
## unhappy_path

* request_restaurant
  - restaurant_form
  - form{“name”: “restaurant_form”}
* greet
  - utter_greet
  - restaurant_form
  - form{“name”: null}

you need to predict restaurant_form after utter_greet again

Tried with same story still not working.

stories.md

ubhappy_path

  • ask_faq
    • search_content_form
    • form{“name”: “search_content_form”}
  • greet
    • action_greet_name
    • search_content_form
    • form{“name”: null}

rasa_core logs after requesting intent greet

2020-08-11 16:27:17 DEBUG rasa.nlu.classifiers.diet_classifier - There is no trained model: component is either not trained or didn’t receive enough training data.

2020-08-11 16:27:17 DEBUG rasa.nlu.selectors.response_selector - Adding following selector key to message property: default

2020-08-11 16:27:17 DEBUG rasa.core.processor - Received user message ‘hi’ with intent ‘{‘name’: ‘greet’, ‘confidence’: 0.9962007403373718}’ and entities ‘[]’

2020-08-11 16:27:17 DEBUG rasa.core.processor - Logged UserUtterance - tracker now has 38 events.

2020-08-11 16:27:17 DEBUG rasa.core.policies.memoization - Current tracker state [{‘intent_ask_faq’: 1.0, ‘prev_action_listen’: 1.0}]

2020-08-11 16:27:17 DEBUG rasa.core.policies.memoization - There is a memorised next action ‘31’

2020-08-11 16:27:17 DEBUG rasa.core.policies.fallback - NLU confidence threshold met, confidence of fallback action set to core threshold (0.3).

2020-08-11 16:27:17 DEBUG rasa.core.policies.form_policy - There is an active form ‘search_content_form’

2020-08-11 16:27:17 DEBUG rasa.core.policies.ensemble - Predicted next action using policy_3_FormPolicy

2020-08-11 16:27:17 DEBUG rasa.core.processor - Predicted next action ‘search_content_form’ with confidence 1.00.

2020-08-11 16:27:17 DEBUG rasa.core.actions.action - Calling action endpoint to run action ‘search_content_form’.

the logs are correct, the FormPolicy always predicts form first, then if the intent is rejected by the form, because it cannot fill requested slot, rasa open source will try to predict another action

How can i implement it, so that form will reject the intent and can not fill requested slot. Because in the current scenario whatever user write, Form will take it as a requested slot filling data.

you need to make sure that your slot_mappings will not extract any information for the inputs that you consider unhappy