Possibility to let user choose which device registers?

Hi,

We are currently using Asterisk 13 with Cisco SPA514G devices and X-lite as a softphone solution.
Our employees want to use the softphone when they work from home.
But when they use the softphone over VPN sometimes the Cisco devices attached to their extension rings and sometimes their softphone. Is there a possibility for the users to let asterisk now which phone is used by the extension at the moment ? So maybe if the users work from home they can press something like the pound key to tell asterisk “This is the phone I’ll be using today” so all calls end up at the right device ?

Thanks in advance.

If you register them individually and write that logic in dialplan, yes. Otherwise if using chan_sip then the last device to register receives the call. The chan_pjsip channel driver, though, can be configured to allow multiple simultaneous registrations and have them all called.

Well we are using chan_sip. Is there maybe a possibility to remotely disconnect a device then ? So that if our employees register with their softphone they can “Unregister” their cisco device from a distance ?

There may be a CLI command to do so but otherwise no. Asterisk has no idea what is the “right” device and the “wrong” device.

Okay thanks for the quick response !

I think part of your problem is that you are confusing devices with extensions. Devices register as devices. By using global variables, or database lookups, you can dynamically change which device is used for a particular extension. Of course, you can no longer just use Dial(SIP/${EXTEN}), but that was never particularly secure, as it relies on having easy to guess device names.

So what is the alternative for Dial(SIP/${EXTEN}) ?

Dial(SIP/<device-name>)

It’s not an alternative. It is just the general case where devices are not named by their primary extension.