Device & User Mode - Feature Requests

There’s been a lot of confusion in another thread, which I ended up having to lock because it was just going around in circles.

So I thought I’d encourage people to post HERE, in this thread, why you use D&U and how can it be improved.

If you could create a REAL Feature Request on that would be even better!


OK so I read the /original/ thread.

I use D&U only for ‘one user multiple devices’ purposes.

In the ‘reception office’ every user also has a softphone and a ‘hardphone device’ .

This was the primary reason I selected D&U mode a long time ago: I need the hard phone and the softphone to ring together and receive the same caller ID info, but to NOT ring when one of them is in-call, to not distract the user. With PJSIP not considered even beta stage back then, in late 2014, I just selected what suited my needs and was available at the time.

So I admit, that 99.999% of my use case these days, would probably be equally well addressed by pjsip’s multiple registration feature; But for now D&U ‘just works’ for me and I am likely to continue to use it, until something forces me to change (e.g. if I migrate out of my self-build server to a ready-made appliance or to cloud-hosted FreePBX)

If I recall correctly, and if I read Advisability of Device and User Mode correctly - I can use D&U as long as Asterisk 11 is in use ?

But, as signaled in the original thread, if, underneath, it fundamentally revolves around devices and users, or whatever implementation of that Asterisk is currently using, then why do you really want to isolate us, users, from this ?

[trimmed rant]

I use Asterisk 12 and D&U Mode - no issues. I think that info you linked turned out to be incorrect.

EDIT: sorry - brain fade… I’m on Asterisk 13.9.0 in D&U with no known issues.

I’m not sure this is the case. In a single pjsip group of devices, if one device is on a call, other devices will ring on inbound. Not sure how you would configure a pjsip group to prevent that.

D&U should work fine in Asterisk 13 though I haven’t tested.

Thinking this question may be rhetorical, but if you want an answer, can you elaborate what you mean?

On our D&U setup (using ChanSIP), if a user has more than two devices (in any combination of Fixed and Ad Hoc), what happens when a second call comes in is determined by that User’s Call Waiting setting. If it’s enabled, all the other devices will ring (and the in-use device will exhibit its normal call waiting behaviour). If CW is disabled, the second call in will get normal Busy behaviour.

This behaviour seems satisfactory to me, but maybe having more direct control would be good - I’ll think about this one and maybe raise a Feature Request in due course.

hmm then that would be a bit of an issue… the ‘feature’ of D&U that would determine whether User is busy when he’s on call on one of his devices, is the point (and I have CW setting enabled per-User on all users - though I admit I do not understand everything here yet) which sold me on D&U mode.

That’s partly encouraging, if I’m ever a glass-half-full guy :wink:

But in my setup and manpower, any kind of testing on production environment is ehm, not exactly welcome all the time. So any kind of breaking-stuff conversions can be met at conversion time and then need a loooong cool-down period before anything nearly as disruptive can be allowed to happen. Most changes are welcome if they can be implemented in non-disruptive way.

I mean I would actually be happy to see what’s against D&U other than ‘we do not test it hence we can’t guarantee it working’. The way I see it, it works for me, right now, in my limited understanding of the topic and my little config niche, and I can share my settings when someone asks (within reason) to help others.
But when you’re saying it’s rhetorical, this might well mean that you don’t want to answer that question - and I can only imagine why. I accept, that they might be entirely valid reasons, but still they’re left for me to guess.

Not at all, questions will be answered. My problem was I wasn’t sure what the question was, and I’m afraid your clarification doesn’t help.

we used D&U for one customer that had two offices. the wanted the two offices to set up so they could move between them transparently. each user has two devices that ring. it was a nice feature that gave the customer what they wanted, one extension, one voicemail box per user. . i was told, by Tony i think, that none of the commercial modules support user device mode. this customer is on a very old level of FreePBX and we are now wrestling with upgrading them.

We are a nursing home (a 24/7/365 business) running FreePBX in D&U Mode on a Sangoma 60 box. We have (so far) 4 deskphones (fixed), 3 Android phones (fixed), 6 Android phones (ad hoc) and 13 iPads (ad hoc) - servicing 58 registered Users. D&U Mode works perfectly for us and is now “Business Critical” here. “Floating Users” (in our case nurses and carers but could equally be hotel staff, warehouse staff, factory staff or whatever) grab a “device” (Android or iPad according to their role) from the charging rack at the start of their shift, sign in to it (*11…) and then spend their entire day on the “shop floor”. It has been a revolution in our business - no more “Has anyone seen Claire/Bob/Charlie?” games - a massive saving in man-hours spent simply walking around the 50-plus room premises looking for somebody or disturbing everybody (patients included) with tannoy announcements. This is probably the single most successful efficiency improvement we’ve made in our twenty-year history - more effective inter-staff communication and less wasted time equals better care for our patients.

To emphasise the flexibility afforded us by D&U mode, one of the managers recently left their own smartphone (a second Fixed Device attached to their User record) at home by mistake. No problem - just pick up an Android from the rack and *11 into it with their extension number. This is exactly the kind of flexibility that users expect these days. D&U takes it all in its stride - it’s how a phone system should operate in 2016!

The permutations possible under D&U Mode are apparently without restriction. We can have a mix of Fixed and Adhoc Devices. Adhoc devices can be assigned a Default User (so there’s no need for the Default User to sign in to them), or have no Default User assigned (so they can’t be used for any calls until someone signs in). It’s important to realise that, under D&U Mode, an “Adhoc” Device with a Default User assigned behaves exactly like a regular extension under Extensions Mode - but better, since any other User can Sign In to it and it becomes their extension until Signed Out, at which time it reverts to being the original user’s extension. Basically, if you can think of it, D&U can do it. It means never having to say “sorry, can’t be done” to your users.

After experimenting with every SIP app out there, we now use Media5-fone MPS across all the devices, Android and iOS - it allows central (cloud-based) provisioning which removes much of the headache of administering devices. One important thing we needed was a “company directory” appearing on all the devices - there’s no way users could remember the extension numbers of all their colleagues. We achieved this with a single dedicated Google account which all the devices are logged in to. Contacts entered into that account are picked up by the Media5 app. One day I’d like to implement “presence management” to filter the contacts to only those that are currently signed in, but that’s not trivial. We use a number of ring groups internally - these are also shown in the directory. For example you can ring all the nurses’ mobile devices at once - handy in emergencies. The iPads also run the mobile app which is part of our cloud-based patient management system. The Androids and the iPads are all used extensively as cameras (for recording wound conditions, etc.). A QNAP app runs on all the devices which automatically copies new images to a shared folder on a QNAP NAS in the rack. Thus D&U has allowed us to have each staff member carrying a single device for data, comms and imaging. Priceless. I’m currently evaluating FOP2 to be able to see who’s logged in to the devices at any given time (something FreePBX can’t tell me on its own). And to top it all off, I can monitor and manage the whole setup from my home in Portugal, 1000 miles away from the nursing home in England - ain’t technology wonderful?

As we all know - many modules don’t play nicely with D&U Mode. Strangely, I don’t think anyone has ever compiled a list of which modules have issues. So if you need EPM, Bulk Loader, etc. then you’re bang out of luck. Happily, my business doesn’t need any of those problem modules so it hasn’t been an issue here. I bought EPM, SysAdmin Pro and Extension Routing - EPM works (I believe) if you confine yourself to Fixed or “Adhoc with a (unique) default user assigned”. I can confirm that SysAdmin Pro and Extension Routing work without any issues (that I’ve found). We don’t need/use UCM either. Documentation on D&U Mode is practically non-existent (something I’m planning to help with) but once you’ve got your head around the concept it’s relatively straightforward. And, of course, there’s the support issue - something I’m aware of but willing to carry the risk.

If anyone wants any other info about our setup I’m happy to answer here.

EDIT: just finished playing with FOP2. The answer is “no”. It doesn’t like D&U Mode at all. That leaves me searching for another way to see who’s logged in to the shared devices. A custom Asterisk report might be beyond my capabilities. Actually, the solution will probably be common with presence management for the contacts list, won’t it? thinking…


You can always open a feature request for Bulk Handler, it could, you know. Detect the mode. As for EPM. That is one module we will never budge on. But in your case it matters little because you couldn’t/wouldn’t really use it anyways.

We can give you contributor access to the wiki right now. Bam. You have it.

Thanks, Andrew - I’ll get into that asap.

I can understand the stance on EPM - I guess it’s aimed at heavily desk-centric sites. I bought it before I’d got up to full speed on the D&U thing - it’s currently disabled while I have a look at OSS EPM. I bought the wrong deskphones anyway - Akuvox, not covered by either tool. Wanted your sexy new Sangoma phones but the UK distributor hadn’t received any stock when I had to pull the trigger. I might swap the cheapo Akuvox’s out at some point.


@lgaetz: then let’s go back to the original:

this = [the fact that inner workings of FreePBX are in fact D&U]
Please understand this is an honest question. No trolling is involved.

@jes1111 : re. EPM - strange thing… I recently have acquired (from a UK distributor) a couple of Sangoma S500’s. Did not change a jot in my setup - and, strange as it may be seen, EPM has no problem with running under D&U, for me… It has provisioned (relatively) correctly (enough for this deployment to be considered having a future) to both of them. It provisioned the phones with their respective ‘devices’ settings. Admittedly I only have the ‘free for Sangoma’ functionality of EPM, I have not bought the commercial license.

So your question is:

I don’t know that FreePBX isolates users from D&U any more than the countless other features provided in the GUI. The purpose of FreePBX is to abstract much of the underlying complexity of Asterisk into point and click simplicity. In the process of simplification, assumptions are necessarily made for typical use cases (for instance, go ahead and try to make an extension with a non-numeric dial string). Perhaps you believe that FreePBX over-simplifies the D&U feature(s), or more likely I’ve completely misunderstood the question. In either case, further clarification on your part may help.


I am using EPM commercial module on freepbx 12 in D&U mode. You just have to use the device ID as the extension. Polycom and cisco phones are working well, except polycom labels on the line buttons show the device ID. I just set the label I want in the phone web page and it sticks.

I also use D&U from about 2013 to accommodate users with multiple phones,softphones, SIP clients, etc. In addition I use it for a help desk scenario where there are 5 phones and 20 help desk agents that work different shifts. This allows me to identify which agent answered which call no matter which phone they answered it on (ad-hoc phones).

It so far does a really great job at this, I do not feel like replicating my setup by writing dialplan files from scratch, not ever :wink:

No it’s not about complexity… Current complexity is well balanced now, as is (which still did mean I had to resort to ngrep and asterisk -vvvvvvvvvr when configuring e.g. my incoming SIP trunk from my SIP provider, to try to work out what the h*k is going on ™ - but otherwise I see it as really beautiful handling of underlying complexity, of whatever dialplan is supposed to do). No one says that we have to shy away from ‘some assembly required’ in a product we got for (almost) free.

It’s more like, see, for me, and not just for me - D&U is a way to handle a situation I need to handle, no more, no less : using d&u, I can configure multiple devices to ring for one user at the same time, on one incoming call, and still have them NOT ring on other devices on another incoming call, when one of them is in use . No more, no less. In default (‘Extensions’) mode I would have to use a dedicated ring group, configured per user, to achieve this. More explicit - maybe - but also more complexity to set up.

You’re a good example of the general flexibility offered by D&U Mode - it can cope with ALL usage scenarios. I think it’s important to emphasise this…

In D&U Mode:

  • A Fixed Device with Default User is functionally identical to an Extension.
  • An Adhoc Device with Default User is also functionally identical to an Extension, but with greater flexibility (another User can log into it temporarily).
  • An Adhoc Device with no Default User is Registered but cannot make or receive calls - it becomes functionally identical to an Extension as soon as any User logs into it.

An Adhoc Device is “user neutral”, i.e. it has everything it needs to participate in your network except for “a User”. The act of logging in assigns that User’s extension number to that device and it becomes, to all intents and purposes, an Extension. Furthermore, a User can sign in to (and/or be the default user for) any number of Devices. It’s brilliantly elegant - absolutely how a modern phone system should operate.

Really the only issue with D&U Mode is that certain modules were not written to handle it and that FreePBX does not “support” its use. Other than that, the GUI could handle it a bit better - I’m working on some suggestions for that.

I have a similar situation, where employees travel between multiple offices, and want to have the same extension at each office. I am also running an older version, specifically Asterisk 1.4.41 and FreePBX, and am using the Aastra scripts to configure about 60 Aastra 6757i, 6755i, 6737i, and 6739i phones. This arrangement “just works”, and I have no incentive to upgrade it at this point. This is a commercial system, not an experimenter’s workbench, and I have not found any features lacking, such as Google Voice, etc.

Does anyone know which modules are affected by D&U mode? We’re looking to upgrade to the newest Asterisk/FreePBX versions in the near future. We’re currently running Asterisk 11 and Free PBX and haven’t run into any issues with over 500 phones.


None. All of them work, as far as we know, and there’s no open tickets about them not working, so… All of them work 8)