I’ve seen this successfully implemented in several apps now including xmtp.chat. This proposal looks good to me
My only comment would be on reaction removals being the same content type just sent again with the same content but flagged as a removal. It might be nice if reaction removals were a different content type or if there was a way to make certain aspects of contentTypes mutable.
Before we finalize this content type I want to make sure: do we really need to support non-unicode schemas in the initial version?
Unicode seems to be the only schema currently used by applications. If someone were to send a shortcode-discord
emoji it is unlikely that any client application other than their own would be able to read it and display it properly. This hurts interoperability, and raises the bar substantially for an integrator to fully support this content type.
i’m OK with this suggestion. it definitely simplifies the implementation.