As far as I understand, you have your own custom UI that interacts with Rasa’s REST input channel.
There’s no recommended way to deal with file uploads.
Based on what you want to archive I have few ideas:
For example, at some point you want user to upload pdf, but your Rasa-bot doesn’t need to process the file. So your bot can predict that next response is “please update your file”, UI parses that, renders the button for upload, and UI can POST this file somewhere.
If you Rasa-bot has to process the file then it’s trickier, because you need to extend the RestInput that is actually talking to your UI inside Rasa, implement additional http endpoint that would accept the files, and then react somehow on the file upload.
Can you please explain it in steps as i am fa fresher , i have created a form action where i want a button which opens the browsers to select the file .