Set Slack status phone BLF with Zoiper5 - without API access.

I'm sharing in this post an older and not really ideal at all method to automatically change your Slack status when taking a call using Zoiper5. The ideal way to achieve this is to have some integration between your PBX and Slack so that user statuses can be changed based on the extension BLF status. The other ideal way would be to use the Slack API. If you find yourself in a situation where you don't have permissions to work in either of these realms - this is a janky but working solution!

In this guide we're using a Windows OS environment, and AutoHotKey.

For this I'm just placing these files on the desktop but you can put them anywhere you'd like, just make sure inside the "slack-set*" scripts you update the Include path for "TrayIcon.ahk" to the location you've placed that file.

Download "TrayIcon.ahk"

Download "slack-set-in-call.ahk"

Download "slack-set-call-finished.ahk"

Inside Zoiper5 (you will need a licensed copy to do this)

Create two rules as below -

Go to Settings > Automation > Event Rules > Add Rule

OnCall status change
Call State changes toAnswered
And call direction isBoth Incoming and Outgoing
Do action Open/Execute Application
Open URL/RUNC:\Users\james\Desktop\slack-set-in-call.ahk

On – Call status change
Call State changes toHangup
And call direction isBoth Incoming and Outgoing
Do actionOpen/Execute Application
Open URL/RUNC:\Users\james\Desktop\slack-set-in-call.ahk

Your Slack status will now automatically change when you take a call and when you hangup that call. This all happens very quickly but obviously due to how this method works, if you focus onto a different app the moment this script runs then it'll mess up. All this method does is bring the Slack window into focus and slam in a "/status" command. I always have my Slack window open on one of my monitors and haven't had any issues myself using this crude method.

This article was updated on October 3, 2021