I second zulip, it offers most of the features you want, is truly self hosted so your data stays home (very important for me in my business) and the self hosted version is not missing half the features (eg full search).
Only thing missing is a more modern UI (I like the UI as is but in non tech companies it's hard for many users to use it compared to the cutesy competitors).
The stream / topic system works great once you get into it, but make sure to use it rather than fight against it.
Only thing missing is a more modern UI (I like the UI as is but in non tech companies it's hard for many users to use it compared to the cutesy competitors).
The stream / topic system works great once you get into it, but make sure to use it rather than fight against it.