Have you tried matrix They have good client and decentralized and open source and use a secure matrix protocol