Run custom commands on wake on lan magic packets.
This application listens for wake on lan magic packets and
runs a specified command when it sees a known host.
Installation
Go to the latest releases here, and download the correct binary for your system
Create a config file in /etc/cwolsrv/cwolsrv.yaml
# specify on which interfaces to listen on (UDP only)
binds:
- :9 # listen on any interface on port 9
- :7 # listen on any interface on port 7
# specify which hosts are known and what to do
# when a matching magic packet arrives
hosts:
# run /bin/true when a magic packet is sent to mac 01-02-03-04-05-06
- name: Joe's Computer # choose name for the host (optional)
mac: 01:02:03:04:05:06 # the mac address to look out for
run: # run this command
- /bin/true
# run /bin/true for every magic packet that is arriving
- name: test
run:
- /bin/true
Run cwolsrv
Scripting
Notice that every application that has been invoked by cwolsrv will get killed after 10 seconds.
So make sure your script / application is running fast, or creates another backround process.
Every application that has been invoked by cwolsrv gets following
environment variables:
Name
Description
Example
HOST_NAME
the name of the host
Joe's Computer
HOST_MAC
the mac of the host
01:02:03:04:05:06
MAC
the mac that was sent in the magic packet
01:02:03:04:05:06
Example Usecase
Mac Mini's wake from WoL packets, but they don't enable the display.
With a simple script (that will get invoked by cwolsrv) we can wake the display.