Mattermost and rocket.chat don't do voice themselves. Discord does, in the client (no jitsi, etc) Matrix with coturn also does localized voip (i.e. confined to the homeserver) if configured correctly.
When I hear discord I generally think of voice/video chat and screen sharing, and less about text chat; this may be a side effect of all the bridges, though, as I tend to chat on IRC and all three of my primary discord channels are bridged.
I run matrix, mattermost, and rocket.chat. I like the api/whatever of mattermost but I really like the overall feel of matrix the best.