@Micael-Sousa, good to know. I'm glad you figured this out.
Best posts made by Russ
-
RE: internal server errorposted in Alexa
-
RE: Laptop Battery Management - Automated On/Off Cycleposted in Example Commands
@philip-nguyen, there's a similar question here.
These are the high level steps:
- Create 2 commands that just run echo (doesn't matter what), and name them PlugOn and PlugOff.
- Setup two Alexa routines - one that turns on your smart plug when the PlugOn command runs, and other that turns it off when the PlugOff command runs.
- Create a script. At the beginning of the script, do the following:
- Set variable called PLUG_IS_ON with a default value of true.
- To make sure the plug is on at first, run the tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
- Create a loop that repeats every minute. Inside the loop, do the following:
- Check your battery level with BatteryInfoView.exe
- When the level is below 30 percent and PLUG_IS_ON = false, run tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
- When the level is above 99 percent and PLUG_IS_ON = true, run tcmd utility like this: tcmd -t plugoff -c (your TRIGGERcmd computer name)
- Also set PLUG_IS_ON to true when you run plugon, and set it to false when you run plugoff
I think that should work. Do you know how to do that? Let me know if you get stuck, and where you get stuck. I can look at your script if you paste it here.
-
Autohotkey script for Play, Pause, Volume Up/Down, Next/Previousposted in Windows
You'll need to install this on your Windows box to make it work: https://autohotkey.com
This is my media.ahk autohotkey script:
Gosub, %1%
returnnext:
Send {Media_Next}
returnprevious:
Send {Media_Prev}
returnpause:
Send {Media_Play_Pause}
returnplay:
Send {Media_Play_Pause}
returnstop:
Send {Media_Stop}
returnvolup:
Send {Volume_Up}
returnvoldown:
Send {Volume_Down}
returnmute:
Send {Volume_Mute}
returnThese are the corresponding commands.json entries:
{"trigger":"Mute","command":"start C:\\autohotkeyscripts\\media.ahk mute","ground":"foreground","voice":"mute"},
{"trigger":"Volume Up","command":"start C:\\autohotkeyscripts\\media.ahk volup","ground":"foreground","voice":"volume up"},
{"trigger":"Volume Down","command":"start C:\\autohotkeyscripts\\media.ahk voldown","ground":"foreground","voice":"volume down"},
{"trigger":"Media Next","command":"start C:\\autohotkeyscripts\\media.ahk next","ground":"foreground","voice":"next"},
{"trigger":"Media Stop","command":"start C:\\autohotkeyscripts\\media.ahk stop","ground":"foreground","voice":"stop"},
{"trigger":"Media Previous","command":"start C:\\autohotkeyscripts\\media.ahk previous","ground":"foreground","voice":"previous"},
{"trigger":"Media Play Pause","command":"start C:\\autohotkeyscripts\\media.ahk pause","ground":"foreground","voice":"pause"},NOTE: You don't need a Play and a Pause because they do the same thing - they just toggle between play and pause.
This is optional, but I'm also using my Raspberry Pi based IR receiver to trigger the above commands with a VCR remote.
I have these entries in my /etc/lirc/lircrc file on the Pi:
begin prog = irexec button = KEY_1 config = export HOME=/root ; /root/triggertest.sh play downstairs end begin prog = irexec button = KEY_2 config = export HOME=/root ; /root/triggertest.sh notepad downstairs end begin prog = irexec button = KEY_PLAY config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs end begin prog = irexec button = KEY_PAUSE config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs end begin prog = irexec button = KEY_RIGHT config = export HOME=/root ; /root/triggertest.sh "Media Next" downstairs end begin prog = irexec button = KEY_LEFT config = export HOME=/root ; /root/triggertest.sh "Media Previous" downstairs end begin prog = irexec button = KEY_STOP config = export HOME=/root ; /root/triggertest.sh "Media Stop" downstairs end begin prog = irexec button = KEY_UP config = export HOME=/root ; /root/triggertest.sh "Volume Up" downstairs end begin prog = irexec button = KEY_DOWN config = export HOME=/root ; /root/triggertest.sh "Volume Down" downstairs end begin prog = irexec button = KEY_MUTE config = export HOME=/root ; /root/triggertest.sh "Mute" downstairs end -
List of ways to trigger your commandsposted in Instructions
You can use this web page of course, but don't stop there. Check out this list of ways to run your commands on your computers.
The Smart Home version of the Alexa skill and Google Assistant action does the best job of matching your spoken words to your commands.
Smart Home voice assistant skills (Example: "Alexa, turn on calculator") <--Recommended
TRIGGERcmd Mission Control (demo video)
Original "conversational" voice assistant skills (Example: "Alexa, ask TRIGGERcmd to run calculator"):
- Original Alexa skill
- Original Google Assistant action (deprecated)
Mobile apps:
- Apple App Store: TRIGGERcmd
- Google Play Store: TRIGGERcmd (supports widgets)
- Amazon App Store: TRIGGERcmd
Progressive Web App (PWA)
Run your commands when things happen in other Internet services:
- Zapier - create a "Zap" that runs your command when something happens on one of their 1500+ supported apps.
- Make - create "scenarios" that run commands on your computers.
- IFTTT - If This Then run a command, or if a TRIGGERcmd command runs, run an IFTTT applet.
- Microsoft Power Automate (aka Flow) - run commands when things happen in Office 365 and other services.
- Pipedream - build workflows that run your commands.
AI methods:
- ChatGPT app
- Claude skill
- OpenClaw skill.
- Local stdio MCP - Run commands from local AI LLM chat tools like Claude Desktop or VS Code. Use the "MCP Tool Description" field of each command to tell the LLM what the command does, and how to use the parameters.
- Online Streamable HTTP MCP - Same as above but for online AI tools like Mistral AI.
IoT Smart Home hubs:
- Home Assistant - Flip virtual HA switches to run your TRIGGERcmd commands.
- Samsung SmartThings - Create virtual switches for each command, then flip the switches to run them. (Not working as of 6/21/2025)
- Homey - Use the ‘run command’ flow action.
- Hubitat - Trigger a command like you'd flip a switch.
- Node-RED - Run commands using an "http request".
- HomeKit - Connect the agent directly to a Homekit hub for offline local runs.
Other cool methods:
- Run an Alexa routine - when one of your TRIGGERcmd commands runs.
- Google Assistant routine (aka automation) - use one of your TRIGGERcmd commands as a "starter" to run your routine when the command runs, or run one of your commands as a routine's "action." Either way, you must use the google automations script editor, not the Home app.
- n8n community node - Run your commands from n8n AI workflows.
- Bookmarks - Create and share URL's that run your commands without authentication. You can set an optional timeout to make bookmark URL's expire. People can also scan your bookmark's QR code to run the command.
- iOS shortcut - Use the iOS Shortcuts app to run your commands with Siri.
- REST API - Use curl or other client to call the TRIGGERcmd API.
- tcmd - Command line tool written in Go.
- Tasker - Tasker is an Android app for automating things with your phone.
- Slack app - Run your commands with Slack "slash" commands.
- Powershell - Run a command on a computer across the Internet from your powershell script.
- Roku channel - Run a command from your Roku.
- Unity - Run a command from a Unity game or utility you made.
- Streamdeck - Configure a Streamdeck button to run a command on a remote computer.
- Python - Run a command on a remote computer from a python script.
- viaSocket - Run commands from your viaSocket flow.
-
RE: Doc Apiposted in API
@Ruan-Santana, I added two pages to the documentation this morning:
https://docs.triggercmd.com/#/./API/TriggerCommand
https://docs.triggercmd.com/#/./API/ListCommandsIs that what you're looking for?
-
RE: New Bookmark option for each triggerposted in Announcements
@tim-s, that's right - you could even just change the trigger name and change it back, and it would invalidate the bookmark URL.
-
RE: Shutdown não funciona no macposted in Mac
@Waldex-Santos, I think this should work:
osascript -e 'delay 60' -e 'tell app "System Events" to shut down' -
RE: Triggercmd smart home not reachableposted in Google Home
It's back up now.
One of my servers went down last night, and Kubernetes didn't handle the fail-over well.
I got an email from my monitoring system while I was sleeping. I'll need to setup something else that will actually wake me up.
I'm sorry about this outage.
-
smartthings-cliposted in Example Commands
This works in Windows, Mac, Linux, Raspberry Pi. You can list and control your SmartThings devices with the Samsung SmartThings cli (command line interface) tool.
https://github.com/SmartThingsCommunity/smartthings-cli#smartthings-devicescommands-id-command
smartthings.exe devices ────────────────────────────────────────────────────────────────────────────────────────────────────────────── # Label Name Type Device Id ────────────────────────────────────────────────────────────────────────────────────────────────────────────── 1 Front Door base-contact ZWAVE 5bebe423-f899-486e-9f62-8c63707a9b6c 2 Front Lights switch1 DTH fb132245-8bd0-478d-be4b-ca311ae64656 3 Home Hub SmartThings v2 Hub HUB 9079eb4d-10b4-435d-9a05-b2b9629cb50a 4 Motion Sensor Motion Sensor DTH b8a3a1ab-daac-44fb-a6c9-53bac4382df9 5 Notepad Notepad DTH a83bbda3-d461-44ae-948a-7d8fd13b5799 6 Samsung 7 Series (40) [TV] Samsung 7 Series (40) OCF 01253b2b-71ed-4b74-b7dd-74dd94522d96 7 THERMOSTAT Honeywell TCC 6000 Thermostat VIPER 86b567ac-0da3-4257-9b03-47a3cfc3b469 8 Kitchen Switch Z-Wave Switch DTH e2237460-e3fa-4bf5-8a24-3e6d64f89352To turn on my Kitchen z-wave switch, I can run a command like this:
smartthings.exe devices:commands e2237460-e3fa-4bf5-8a24-3e6d64f89352 switch:onSmartThings devices can be controlled with the SmartThings app of course, but this might be useful in scripts - whether you run them remotely via TRIGGERcmd or not.
-
Alexa bug fixedposted in Announcements
Some of you might have noticed, when you'd say something like:
Alexa, ask TRIGGER cmd to run notepad on downstairs
You'd get an answer like this:
"Could not find a command with voice word cmd notepad on downstairs, ..."
I fixed that today.
For some reason Alexa started sending the "cmd" part of "TRIGGER cmd" as a prefix in the command name. I actually had to add code to strip that out.
-
RE: How can I get feedback that the command was executed remotely?posted in Mac
@Murilo-Callegari, if you look at the Runs list for your command, it should say "Command ran" if the command actually ran on your computer.
If you're worried the screen still didn't lock even though your "lock screen" command ran, you could have your "lock screen" script also check whether the screen is locked, and send that information to the Runs list using the ~/.TRIGGERcmdData/result.sh script.
Just run ~/.TRIGGERcmdData/result.sh from your "lock screen" script with a status message like "Locked" or "Unlocked" as the parameter when you run result.sh.
You can also have Alexa speak the "Locked" or "Unlocked" result if you add {{result}} to your command's Voice Reply field and use one the Conversational Alexa skills.
This article has more about that.
-
TRIGGERcmd setup on Google Assistantposted in Google Home
This Youtube video shows the setup process.
Or, as of 2023, follow these steps:
- Open the Home app
- Tap the Settings tab
- Tap Google Assistant
- Tap Manage all Assistant settings
- Tap Home control
- Search for TRIGGERcmd
- Select TRIGGERcmd Smart Home
- Select Continue
- Login to your TRIGGERcmd account.
- Select Allow
Now test it by saying, "Hey Google, turn on Calculator."
For screenshots, see this post.
-
Pass parameters with Alexa routinesposted in Alexa
Alexa Routines now works with the original "TRIGGERcmd" and "TRIGGER command" skills.
This is great because now instead of saying:
Alexa, ask TRIGGERcmd to run notepad on office with parameter russ
You can just say:
Alexa, russ
I just created this video to show how it works: https://youtu.be/rZXfncqXqmA
Also these screenshots show how to set it up in the Alexa app:




-
New Alexa feature - you can say "Alexa, run calculator."posted in Announcements
I actually discovered this when I accidentally said, "Alexa, run calculator."
Apparently if you've already said, "Alexa, ask TRIGGERcmd to run X", then next time you only have to say, "Alexa, run X."
That's awesome. I hope Google Assistant does the same.
-
RE: Raspberry Pi setupposted in Raspberry Pi
@kalen-daniel, I didn't provide a method to auto-start the triggercmdagent in the foreground on a Pi. Your method is helpful because it provides a way to do that.
I figured most people would not run X-windows on their Pi's, like my-use case as a garages door opener. In cases like that, you'd run this script as root:
/usr/share/triggercmdagent/app/src/installdaemon.sh... to install the triggercmdagent as a systemd daemon that would only run background commands.
After you run that script you can stop/start or get a status of the agent with these commands:
systemctl stop triggercmdagent systemctl start triggercmdagent systemctl status triggercmdagent -
Hubitat integrationposted in Instructions
@Royski created this Hubitat integration that works just like the SmartThings integration.
His write up is here, on the Hubitat community forum:
https://community.hubitat.com/t/release-triggercmd-for-hubitat/22715The code and instructions are here:
https://github.com/rvmey/HubitatTRIGGERcmdHere's quick video showing it working:
https://youtu.be/V90B7jbEYxI -
RE: Avoid saying 'with parameter' when passing arguments via Alexa?posted in Alexa
@Craig-OK, I've been thinking about this. None of the methods for shortening the Alexa phrase (ifttt or routines) allow for parameters, so I can't think of a good solution besides, just saying the whole thing:
Alexa, ask TRIGGERcmd to run download with parameter Ubuntu serverAnd that assumes the command with download in the voice field is on your default computer.
-
Official TRIGGERcmd IFTTT service is now liveposted in Announcements
The old Webhook method still works, but now you can use the official TRIGGERcmd service on IFTTT.
Here's a Youtube video showing how to use it.
-
Run remote commands with an old VCR remote and a Raspberry Pi Zero Wposted in Raspberry Pi
I followed this tutorial to get my Pi Zero W on wifi without even connecting a keyboard and monitor to it.
I followed this tutorial to get it setup with lirc to run commands when I press corresponding buttons on an old VCR remote.
I setup the lircrc file to call the TRIGGERcmd API using curl commands when I press those buttons.
I found the curl commands to be much faster than these commands.
I also found that some remotes work better than others - like my Window Media Center remote works, but each button alternates between two different IR codes, so it works every other time you press a button. I settled on an old Toshiba VCR remote.

My /etc/lirc/lircrc file looks like this:
begin button = KEY_PLAY prog = irexec config = export HOME=/root ; /root/triggertest.sh calculator downstairs end begin prog = irexec button = KEY_RIGHT config = export HOME=/root ; /root/triggertest.sh notepad downstairs endMy /root/triggertest.sh file looks like this:
#!/bin/sh
trigger=$1
computer=$2
token=`cat /root/.TRIGGERcmdData/token.tkn`curl -X POST https://www.triggercmd.com/api/run/triggerSave \
-H "authorization: Bearer ${token}" \
-H 'content-type: application/json' \
-d "{\"computername\":\"${computer}\",\"triggername\":\"${trigger}\"}" -
Integromat API documentationposted in Instructions
Most people will want to use the Trigger Command action with Integromat because it's simple.

With the Trigger Command action you select one of your commands from the dropdown, and optionally fill in the parameters field to pass parameters to your command.


When you select the Make an API Call action, you can specify your own API parameter values in the body field:
{ "computer":"DS", "trigger": "notepad", "params": "russ" }Or use values from the incoming link, including values for the computer and trigger names:

Using the settings in the screenshot, I copied a file called "notepad" into my dropbox folder and it ran notepad with russ as the parameter:
