posted by 433 Spaceman,  6/10/2020

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); 

Inactive Key in Zello (Stop Transmitting)

Intent intent = new Intent("com.zello.ptt.up");

intent.putExtra("com.zello.stayHidden", true);

activity.sendBroadcast(intent); 

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: 

Channel Up / Channel Down

com.zello.intent.channelUp

com.zello.intent.channelDown 

Zello Deep Link: Add/Activate/Go To Channel

zello://[channelname]?add_channel 

Zello Deep Link: Add/Go To Contact

zello://[username]?add_user 


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);

}

Uncle Sam Wants YOU

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. 

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.