DeviceAndUser mode with cascaded follow-me

I recently upgraded a client from an old Trixbox installation to FreePBX13 using the Distro Conversion Tool. The application requires deviceanduser mode with cascaded follow me, e.g. user 1000 employs follow me to intermediate users 2000, 2001 each of which in turn employs follow me to multiple devices. Ring Strategy=ringall and InitialRingTime=0 for all users, so that a call to user 1000 immediately rings all devices referenced by intermediate user codes 2000, 2001. Documentation for Follow-Me List states that external destinations require a trailing ‘#’, however it was observed that follow-me to a user (as opposed to a device) also requires a trailing ‘#’, so the previous example requires the follow-me list for user 1000 to contain ‘2000# 2001#’. Although the Distro Conversion Tool conveyed such trailing ‘#’ from the Trixbox implementation, the FreePBX-13 GUI does not permit editing and including a trailing ‘#’ for user references in the Follow-Me list. Without the ‘#’, cascading follow-me does not work.

I must either a) figure out how to edit follow-me list appending ‘#’ to intermediate users, or b) figure out how to enable cascaded follow-me without the trailing ‘#’. Any suggestions will be appreciated.

Rationale for use of cascaded follow-me: Each staff member owns multiple devices located at multiple locations, and a call to a person’s “super user” (e.g. 1000) wants to ring all of his/her devices at all locations. For administrative purposes, devices of a given staff person are grouped together under intermediate user nodes representing different physical facilities (e.g. 2000 representing building 1, 2001 representing building 2, etc.). So, the cascaded user nodes provide a means of grouping the devices while also ringing all of them simultaneously.

Another GUI anomaly: Using the FreePBX-13 GUI, a follow-me list can be edited to contain multiple suffixed users (e.g. 2000#, 2001#, 2002#), however upon pressing “Submit” all ‘#’ are removed by the GUI EXCEPT for the very LAST one on the list. It seems impossible to include trailing ‘#’ on any user code except the last one on the list.

Thanks for any suggestions.

I don’t think this is a device and user issue, rather an issue in FreePBX 13. In FreePBX 14 it allows you to add a pound for more than one extension in the followme list, but in FreePBX 13 it only adds the pound to the last number on the list.
This is possibly a bug, but I don’t give too much hope on getting it fixed, since FreePBX 14 is now considered the stable release. (I’m not sure on the FreePBX 13 EOL status)

You should be able to upgrade to FreePBX 14 easily (if you are not on HyperV)

If you are stuck on 13, then I’d set it up a bit different:

Setup 2000 (Parent/Master) as a Ring group, add all child extensions in that Group.
Now set in each child extension advanced settings CID Num Alias > To the parent extension number (in this case 2000)

So anyone calling 2000, will call the ring group which will call all child extensions.
And when you place a call from any of the child extensions it’ll display 2000 on the CID.

Hope that helps…

Note: Device and User mode isn’t really supported across all of FreePBX.
We use Hot Desking with Sangoma phones, it just works, but i"m not sure if that’s what you are looking for.

Or since this is FreePBX 13 and hopefully Asterisk 13, you could just convert the “master extension” to a Chan_PJSIP extension and then set the Max Contacts to how many ever devices they have.

It treats all the contacts as the single extension. No need for a “ringall” with “0 timer” FollowMe because all you’re doing is using FollowMe to get around an old limitation of Chan_SIP.

This is one of those scenarios which screams Chan_PJSIP.

1 Like

Thank you Itzik and TomRay, I tried and verified both the ring group and PJSIP suggestions. These work, but do not provide my client’s desire for intermediate grouping of devices. I found and patched the FreePBX 13 bug that prevents editing of intermediate follow-me’s with trailing ‘#’ so this is a preferred solution for my client. I’m new to this community. Can you point me to where I can learn the procedure for contributing patches? Thanks again.

The short answer is:

You need to fill out the nondisclosure/release form and then send in your patch as a Feature Request.

There is a longer answer in the Wiki, but I’m having trouble getting to it right now (local network policy problem).

I assume you meant this: