I’m working on a game that uses some back-end social server features that I am developing. Included with that is that I am only using my own dedicated servers to run the multiplayer games. With this, I am using a custom system where both the clients and the dedicated servers will be connected to a back-end Java server that I also wrote. I’m using TCP Packets, which may be of use to you. You get control on how information is sent through this.
Because the amount of information that I am sending in this is pretty minimal, I’m just sending strings and then having my C++ code in the Unreal Engine parse these strings to get the commands out of them. Things like “login username password” or “chat sender This is the message.” and then I am taking these strings and making events that I fire in Blueprint. It’s not the most elegant system, but it’s working really well for what I need. Something similar may suit you as well.
On the Unreal Engine side, I have based my code on a heavily modified version of Rama’s TCP Socket tutorial: