How does rasa handle input messages to the bot

Hello Everyone, I was using the rasa mood bot (rasa init). I wanted to know how rasa handles the input given to the bot. How does the bot interprets the message to get the intents. I know it uses rasa.core but can someone explain me clearly how the flow of input is handled.

So actually we are interacting with the bot through some API and it contains the sender_id and the message so rasa creates the session for the sender and reads the message sent by the sender first it goes to the NLU part in there it goes through many pipelines we mentioned in the configuration file like whiteSpaceTokeniser separate the words with the spaces and uses DIET for the Entity extraction and the intent classification and like that it goes through the NLU pipelines and then when it identifies the intents and entity in the given sentence. Then goes to the TED policy developed by rasa so it has some deep learning algorithm and identifies the next action to be taken and use the API to conect with the chatting channels…

@Adarsh-svg-bot I think I have explained somewhat clear if you have some confusion feel free to comment