Call waiting does not work on a shared dual line ephone-dn.
We have the following setup:
ephone-dn 1 dual-line
A call placed to Extension 1000 can be picked up on ephone 1 or ephone 2, placed on hold and then picked up from the other phone. However, if an active call on ephone-dn 1 (say on ephone 1) is placed on hold and another call comes in, ephone 2 is not notified of the call. Only ephone 1 gets a call waiting beep and the caller ID is displayed on ephone 1. In fact, the caller ID may flash for a moment on ephone 2 as well but the call cannot be picked from this ephone.
Dual line ephone dns were created to mirror a call waiting feature along with the functionality to natively transfer/conference calls in CME. With the usage of shared lines, it is assumed that channel 2 of the ephone-dn is going to be used for picking up a call at another extension once it is placed on hold. Hence, this channel is reserved for the possibility of such a thing happening due to which a second call coming in at the same time will not ring on ephone 2.
The ephone-dn needs to be converted to an octo-line for the desired functionality to be achieved. This is supported in CME 7.0 +.