Controlling Zello outside of Zello
Here is a collection of Deep Links and Intent Broadcasts that can be used outside of Zello. Some will have examples on what they can be used for.
LAST UPDATED: 2/13/2023
Active Key in Zello (Transmit)
Intent intent = new Intent("com.zello.ptt.down");
intent.putExtra("com.zello.stayHidden", true);
activity.sendBroadcast(intent);
I currently use this in Tasker for running channel beacons. Here's how I use it.
Inactive Key in Zello (Stop Transmitting)
Intent intent = new Intent("com.zello.ptt.up");
intent.putExtra("com.zello.stayHidden", true);
activity.sendBroadcast(intent);
I currently use this in Tasker for running channel beacons. Here's how I use it.
PTT Toggle
Intent intent = new Intent("com.zello.ptt.toggle");
intent.putExtra("com.zello.stayHidden", true);
activity.sendBroadcast(intent);
Note: If zello is not responding to PTT Down, PTT UP, or PTT Toggle commands, try doing the following until it does start working:
Remove any custom button mappings (and do not remap any buttons). If that doesn't work, try:
Go into settings / apps / Zello, and remove data (and do not remap any buttons) If that doesn't work, try:
uninstall/reinstall zello (and do not remap any buttons)
Channel Up / Channel Down
com.zello.intent.channelUp
com.zello.intent.channelDown
This can be used with Button mapper to create a channel up/down knob or channel up and down buttons if you have the available hardware buttons on your device.
Zello Deep Link: Add/Activate/Go To Channel
zello://[channelname]?add_channel
I currently use this in Tasker for running channel beacons. Here's how I use it.
Also, I have used this with the combination of Tasker and Button Mapper to assign a channel to a specific hardware button. Not as a PTT, but to bring a certain channel up to the forefront. Here's some notes on it
This works in Android, and it seems to work in iOS as well - like if you were linking from a webpage, Zello would open and it will take you right to the channel.
Zello Deep Link: Add/Go To Contact
zello://[username]?add_user
I currently use this in Tasker for the beacon that currently runs in PNR. I'll make a page soon showing how I set up the beacon.
Also, I have used this with the combination of Tasker and Button Mapper to assign a channel to a specific hardware button. Not as a PTT, but to bring a certain channel up to the forefront. Here's some notes on it
This works in Android, and it seems to work in iOS as well - like if you were linking from a webpage.
WANTED:
I would like a way to set a hardware button or buttons to select Available and Solo Status Mode
Does anyone out there in Cyberland know how to do this?!?!
I found the following code on the web, but I've tried manipulating bits and pieces of it every which way in Button Mapper and Tasker, but I can't get anything to work.
//region Status
void setStatus(@NonNull Status status) {
if (!_serviceBound) {
return;
}
Context context = _context;
if (context == null) {
return;
}
Intent intent = new Intent(_package + "." + Constants.ACTION_COMMAND);
intent.putExtra(Constants.EXTRA_COMMAND, Constants.VALUE_SET_STATUS);
intent.putExtra(Constants.EXTRA_STATE_BUSY, status == Status.BUSY);
intent.putExtra(Constants.EXTRA_STATE_SOLO, status == Status.SOLO);
context.sendBroadcast(intent);
}
If YOU have any information on how to do this, please contact me.
Update:
Turns out, that snippet of code only works with ZelloWork and involves a call to Zello's API. Matter of fact, turns out the ONLY time you can make calls to the API is if you're using ZelloWork. The free app does not support that.
BUT - I've found a way to accomplish this using a mix of MacroDroid, Tasker, and Button Mapper.
MacroDroid is an automation tool. I can make it open up zello, go into the options menu, and change the status there. I created 2 tasks in MacroDroid: 1 for switching into solo mode, and 1 for switching back into available mode.
In tasker, I created 1 task using a variable.
If the variable is 1, then it will call MacroDroid's Solo Mode task and speaks using the say command "Solo Mode".
If the variable is 2 then it will call MacroDroid's Avaiable Mode, speaks using the say command "Availabe Mode", and also resets the variable to 1.
Lastly, I used Button Mapper to map a button on the N60 mic to the task in tasker. Because of the variable set, it makes the button a toggle. Hit it once for Solo mode, hit it again for Available Mode.
Note: You don't have to use the variable in tasker. You could also just make 2 tasks in tasker instead, one for Solo Mode, and one for Available Mode, and then use 2 buttons with button mapper for each mode instead of just 1 button.
Note 2: Also, if you don't mind not having the device saying "Solo Mode, or "Avaiable Mode" when switching back and forth between modes, AND if you don't want to use the toggle trick between the 2 modes, you can leave Tasker out of the loop and just use MacroDroid and Button Mapper.
FYI: There's about a 5 second delay each time the button is hit for the tasks to play out.
Windows Version Only: Transmit a .wav file directly through the Zello application
Command Line:
"C:\Program Files\Zello\Zello.exe" /contact="50kUW" /audio="E:\Voice\Audioclip.wav" /report="E:\Voice\log.txt" /timeout=2
/contact -- Required. The name of the channel to send audio to
/audio -- Required. The full path to audio file. The file must be in WAV or MP3 format.
/report -- Optional. The path to the file where the operation result (success or fail) will be written. If a file already exists, it will be appended. You can use this file to audit which messages were sent, when they were sent, and to use for troubleshooting.
/timeout -- Optional. Operation timeout in seconds. Defaults to 30 seconds.
This would be another way of running a beacon / station id of some sort - or just some random weird transmission via command line in windows. No line input/Virtual cable, or VOX needed!