Hello Miles,
I have implemented similar functionality in one of my projects, Would like to help you out with this. Feel free to contact me at rishika2503@gmail.com
Thanks