External Status Light for phone

(David Johnson) #1

Any suggestions for adding an external light to show when I am on the phone? I’m looking for any way to add an external light that will light either when I am on my phone or equivalent to a blf for an extension, although the second option would I need to have a light for each extension on my phone (I have 3 different extension numbers on 3 different PBX systems and will eventually have 7 or more…I map one extension from each customer onto my phone so I know almost immediately if there is a problem on their PBX and for testing)

(Matt Brooks) #2

Are you talking about a physical light on the phone to show it’s being used? So that if someone walks into a room they can see the light and know it’s on. Or… are you talking about a light on everyone else’s phone that shows you’re on the phone when they are in a different room.

(David Johnson) #3

Yes a physical light that I can put on the wall or outside my office so people know I am on the phone. Too many times people walk into my office while I am on speaker phone with customer and say stupid things!


(Canada) #5

Jabra and other companies make devices that suit what you might need, try googling busylights

(Lorne Gaetz) #6

If you’re a DIY type of person, then hack away using: Fun with AMI (node-red)

Also many hard phones have Action URL options (such as Sangoma S series) where you can config the phone itself to make URL calls when specific phone actions happen such as answer or hangup.

(David Johnson) #7

Thanks I did the search for busylight, (90% of the results were Kuando Busylight). I’m looking for a solution where I can plug a device into the network and allow me to configure it as a BLF for an extension. All the solutions I found so far expect me to connect the device to my handset and light up when I go offhook or plug into a USB port on my PC.

(PbxNoob) #8

Dave, the easy way to do this would be with a Raspberry Pi running Node Red or a Particle Photon or an ESP device running one of the newer, easy to use firmwares that can do MQTT natively then, using Node Red on the same server as your FreePBX install send an MQTT message to either the Pi, the Photon or the ESP to light either an LED or switch a relay to light a mains voltage lamp.


here’s a <$10 each solution of sorts with no hardware tinkering involved (look for magiclight/flux wifi bulbs on amazon


bare-bones recipe:-

pip3 install flux_led ; (or pip for python2)
pip3 install webcolors

flux_led -h # help
flux_led -e # examples

get the ip(s)

flux_led -s # scan

set color
flux_led 192.168.1.nnn -c Red

turn on

flux_led 192.268.1.nnn --on

just custom dialplan, poll, agi or rest the extention(s) state and react.

(David Johnson) #10

My PBX is in another city, I cant access the ip directly as indicated? There is no VPN between my network and the network the PBX is on. I like the solution though, I have plenty of these lights already! I have a PI many be I can find some code to put on a PI to monitor the BLF status of my 3 extensions?


It can all be locally hosted presuming you have ssh access.

A very simple polling bashism to test it working for extension 6901 :-

while $(sleep 10) ; do [[ $(rasterisk -x 'core show channels') =~ SIP/6901 ]]&& flux_led 192.168.1.nnn --on||flux_led 192.168.1.nnn --off; done

(David Johnson) #12

I am looking into a Pi solution. I have one here that I had hope to use on a project and I think I just found my project! I want to setup the PI so that it will be programmable from endpoint manager like a phone from the EPM. I would like to be able to add a number of BLF entries, maybe even setup the PI to support more than one light? Using some of the examples you listed above I might allow assignment of more than one light and assign them to BLF the same way we can assign accounts in EPM. I’m going to unbox my PI and start programming! Maybe an ambitious project but lets see how it goes. Please continue to supply suggestions and I’ll see what I can build!

-Setup a PI
-Allow PI to be added to FreePBX EPM
-Allow multiple BLF entries (like buttons on an extension)
-Allow multiple accounts (each one would be a different light, any BLF on that account would light that lamp)
-Support WiFi lights and/or external ringer

Suggestions on any other features/options?

(David Johnson) #13

to get me started, is there a FreePBX client app for linux to simulate the PI as a client device like a phone or do I just install FreePBX and use something like trunking?


Nothing like that in the commercial End Point Manager only Sangoma OS acceptable and that can’t run on a Pi.

But you can install FreePBX on the Pi and even add the local audio subsystem as a ‘console’ extension. The GPIO’s on the Pi allow you to do almost any interaction with ‘the real world’ hardware you can come up with and there is an abundance of IOT stuff using mqtt, home automation and all, that geeky stuff, zero out of the box though.


You can assign as many lights as you want with a one-to-one relationship of macaddress to extension (ip’s can change) put those associations in an asteriskdb family , you can map colors or patterns to state, e.g. red is DND , yellow is busy, flashing yellow is irratable. flashing green is ringinging, rainbow stobing is that the building is on fire let your imagination run wild :wink: , bets to do that with some sort of AMI solution for efficiency. or just use dialplan ‘hooks’ to trigger simple changes completely in the dialplan.

(David Johnson) #16

I’m thinking the less “programming” I have to do to associate an extension to a light the better. I think something that can be programmed via EPM would be the best reusable solution without having to reprogram the RPi for every situation. If the EPM can be set to allow BLF to be assigned to an account and I do all the work in the RPi programming the easier it will be to reuse in the field.


I give you a “four line solution” but that’s too much for you ? :slight_smile:

(David Johnson) #18

Then I am missing something? I want something that someone who does pbx configuration doesnt have to breakout the RPi programmer to be able to setup and I dont expect the PBX to be onsite so I am unsure how the core show channels on the PBX in WI would work as described with the light here in NY on a 192.168.1.x network?? I havent read your response is detail and fully thought about how it works but at first glance I think it still needs some work? I am sure once I break out the RPi and look at your examples I will have a better feel for whats involved.


The ‘bashism’ would definitely be happier on a lan. AMI (tcp on port 5038 (default) for wan , here is one semi prepackaged solution that could run on a pi

But more robustly, i would probably choose mqtt published on the server by mosquitto as your broker and being subscribed to by a pi zero w or perhaps

either ‘coupled’ (geek joke) with

(David Johnson) #20

Thanks, that article “step by step: Asterisk Extension Status” is perfect! Thats exactly what I need since I am fairly new to Asterisk.