Show missed calls on phone when busy

Hello everyone,

is it possible to show missed calls when the phone is busy?
Most users have turned of call waiting. So when a user is on a call, another incoming call receives a busy response. So far so good. But the user gets no notification about the missed call. It would be nice if the missed call would still show up in the call log of the phone as a missed one. So when the user ends the current call the missed call will be shown on the phone display.

I know the call is directly rejected on the FreePBX and in this case the phone (Yealink) won’t get any INVITE. So I enabled call waiting for the extension in FreePBX and disabled call waiting on the Yealink phone itself. But this hasn’t changed anything.

Is there a solution for that?

My fault. This works as intended. So enabling call waiting on the extension and disabling call waiting on the Yealink Phone works.
But is there a way to enable the same behaviour on the FreePBX site? So FreePBX sends a rejected call as missed to the phone.

Am I wrong if I think that FreePBX is handling disabled call waiting wrong? Or is this more a Asterisk thing? To my knowledge disabled call waiting should work like this:

  1. Caller calls extension
  2. FreePBX sends busy message to the caller if some of the extensions SIP devices is busy
  3. FreePBX sends missed call message to all of the extensions SIP devices

But in FreePBX step 3 does not happen. So for example if a user has two SIP devices, e.g. a deskphone and a softphone and disables call waiting for his extension in the UCP, the user won’t get any information if someone tried to call him while he was on the phone.
I would be really interested in other opinios to this topic. Maybe I am missing something here.

Because at the PBX level, disabling call waiting is for the extension itself not the devices that are connected to it. The PBX will look at the current state of the endpoint at the PBX level.

So if you turn off Call Waiting and an incoming call comes in, the PBX will look at the state of the extension. If it returns IN_USE, meaning there is an active call it will attempt to send the call to the devices registered/listed contacts for the extension. If the state returns BUSY the call is routed to the BUSY destination, no attempt to dial the phone(s) are made because the extension is busy, it isn’t accepting more calls.

Makes sense. Thank your for your explanation. I was thinking that there is maybe some rfc that allows the pbx to send a SIP notify message to the phone about missed calls or something like that.
This sounds to me that call waiting should be better handled on the client site instead of FreePBX. Sadly our softphone “Sangoma Phone Desktop” has no setting for call waiting.