I installed and tested out a 3CX system and while I could not use it due to all the design limitations, I did fall in love with how it interacted with endpoints and the 3CX softphone.
One cool thing I noticed was that now, my GXP2160 was not just en endpoint, but controlled my status meaning if I hit DND, 3CX know I was on DND compared to asterisk where the phone just doesn’t ring.
Is there such and option for FreePBX? And if yes, a free one?
It’s a “market differentiator”, same as the limits that 3CX put on their soft phone systems to steer people toward their complete solution.
The system is open-source (except for the commercial modules) so if you wanted to add that functionality in a way that was useful to yourself and the larger community, you can. Since Sangoma has to make money, they have to provide a way to make that happen.
Good example: There are two End Point Management modules, one open source and one commercial. While Sangoma doesn’t “support” the OSS EPM. they haven’t taken steps to kill it either. That’s the difference between them and 3CX - 3CX would actively try to kill OSS projects that they thought were a threat to their revenue stream.
To your specific example - if you use the DND Asterisk option (versus the one on the phone - they’re different), there’s a hint generated for your DND status that the rest of the system can use. Since you have the source and most of the contexts are open source, you can modify and override the “standard” context that you are interested in using and make a new one that does whatever magic you need done. Similarly, if you want to add features to DND (etc.) you can by using the extensibility of FreePBX to make these things happen.
If if can happen on a Sangoma phone, it can happen other places - the difference is that you (or maybe we) need to come up with the solution and make it happen.