I've had good success at a former job with https://integrics.com/enswitch/ which is a multi-tenant PBX.
Its Asterix under the hood for call routing with their custom application over the top for all the jazzy features. So its Asterix + MySQL (you can use MariaDB) + Apache so you can virtuaise it and scale it. So you can pay for support but still extend Asterix as you please. We built a custom hand set provisioning tool, added custom call features directly in Asterix etc. Cheers, James.
