Has anyone integrated an instant messaging SDK into an existing application?

I’m researching instant messaging SDKs for an existing application.

The main requirements are 1-to-1 messaging, group chat, file sharing, push notifications and message history. We’d also like the option to add voice/video later.

I’ve come across a few options, including MirrorFly, but it’s difficult to tell from product pages how much work is actually involved once you start integrating.

For anyone who has done this before, what should I watch out for? SDK limitations, backend architecture, authentication, push notifications, scaling, or something else?

I’d say the biggest thing to watch out for is the backend architecture. Messaging itself is fairly straightforward, but authentication, message synchronization, history, file storage, push notifications, and scaling can become complicated quickly.

For my own projects, I usually build my own tools instead of relying on an SDK, mainly because it gives me more control over the architecture and data flow.