3 ms·
Modern IM networks aren't a great fit for libpurple because they fundamentally work differently. "Old-school" IM networks like AIM were simple to work with fro
by duskwuff 5y ago
Modern IM networks aren't a great fit for libpurple because they fundamentally work differently.
"Old-school" IM networks like AIM were simple to work with from a client perspective -- you connect to the network, you send and receive messages, and that's it. There was no real support for server-side message history, multiple clients, mobile clients, or offline messaging, so third-party clients often just implemented their own local history instead.
Newer IM networks like Telegram are usually designed from a mobile-first perspective -- the Telegram client protocol is designed around the concept that the server has a definitive view of history across all chats, and the client synchronizes portions of that history to local storage to display it. It certainly isn't impossible to adapt this to a design like libpurple/Adium/etc, but it's an awkward fit and is likely to fail to support features which don't fit into that model, like chat messages being edited or deleted by the other party in the conversation.
- BeFlatXIII 5y agoThe lack of editing and deleting old messages is (usually) a feature in IRC. It becomes a bug when spammers flood the channel, though.