i have multiple phone (Softphone-9321 on laptop, Hardphone1 32, Hardphone2 52, Mobile-Phone 9324, Sofphone-9325 on PC) because i work on different locations.
Inside my primary extension -32, which is known by everybody, I configured all other numbers like this:
Ring Strategy: ringall2
Follow-Me List: 9321, 52,9324 and 9425
Everybody can call me on -32 - regardless where i am. Fine.
So, if one extension is busy (because i’m in a call), a new call will ring on all other extensions. Of course, I cannot pickup the phone…
How can i configure FreePBX to signal a “Busy” to the new call, if one (the primary or one of the follow-me extension) is used?
You either need to disable Call Waiting or you are better off (if using PJSIP) having all devices registering to the same extension and then just pickup from whatever device you have access to.
Even if the device is returning busy everywhere, I don’t believe Dial makes a distinction between that and busy here. If the device is giving busy here, then it is correct to continue ringing the other devices.
Multiple devices on a single endpoint simply results in a Dial call with multiple destinations. Dial doesn’t know that they belong to a single endpoint.
The Asterisk core has no AST_CONTROL_xxxx message for busy everywhere. There also doesn’t seem to be an AST_CAUSE_xxxx code for busy everywhere (these codes are basically taken from ISDN networks).
Dial() tracks failed outbound legs purely using the AST_CONTROL_xxxx messages and cause values. Getting one of these for busy simply increments the busy destination count and closes that destination. The other legs continue. The busy count is is used to decide what status to report when all the legs have failed.
The only way that FreePBX could abort the whole call if one destination was busy is by calling Dial for just that destination, and then checking for busy, rather than no answer. The follow me logic might be adaptable to that, but the multiple endpoint contact logic is not.