Coach Assigned to Multiple Users for Chatting

I’m working on a coaching app.
None of the subscribed users will be able to chat with each other.
However, every subscribed user will be assigned a coach.
I need to understand how to set this up.
The user will be able to log in and start a chat with their coach or the coach can start a chat with the user.
It seems from my research a lot of setup has to be done in the database but I can’t find any detailed videos on how to set something like this up. The 2-minute multi-app video was the perfect topic but it just gave you a snapshot of what can be done. I need to know in detail how to do it. Any directions, documentation, or videos would be very helpful.