Meet this Python Wake-on-LAN (WOL) Tool! It smartly checks your device status with integrated ping before sending the magic packet, ensuring efficiency. Set max wake devices, prevent power surges.
Project description
ping-before-wakeonlan
Meet this Python Wake-on-LAN (WOL) Tool! It smartly checks your device status with integrated ping before sending the magic packet, ensuring efficiency. Set max wake devices, prevent power surges.
Installation
% pip install ping-before-wakeonlan
or
% python3 -m venv venv
% source venv/bin/activate
% pip install ping-before-wakeonlan
% ./venv/bin/ping-before-wakeonlan
{
"count": 0,
"device": {
"failed": [],
"handled": [],
"input": [],
"online": [],
"skip": []
},
"info": [
"--device-info not set empty",
"stdin empty"
],
"maxCount": 5,
"ping": "ping -c 1 -W 3",
"version": "1.0.0"
}
usage: cmd.py [-h] [--max-wol-device MAX_WOL_DEVICE] [--send-mode {sequential,random}] [--silently] [--ping-cmd PING_CMD]
[--device-info DEVICE_INFO]
A Simple Tool for Ping and WOL Usage
options:
-h, --help show this help message and exit
--max-wol-device MAX_WOL_DEVICE
WOL device number per a run
--send-mode {sequential,random}
Adjust the order of input device
--silently Process Report
--ping-cmd PING_CMD Ping command for test device
--device-info DEVICE_INFO
a file path with JSON format with [{"ip": "192.168.1.2", "macAddress":"XX:XX:XX:XX:XX:XX"} ]
Usage
% cat /tmp/device.json
[
{
"ip": "192.168.1.1",
"mac_address": "00:00:00:00:00:01"
},
{
"ip": "192.168.1.2",
"mac_address": "00:00:00:00:00:02"
},
{
"ip": "192.168.1.3",
"mac_address": "00:00:00:00:00:03"
},
{
"ip": "192.168.1.4",
"mac_address": "00:00:00:00:00:04"
},
{
"ip": "192.168.1.5",
"mac_address": "00:00:00:00:00:05"
},
{
"ip": "192.168.1.6",
"mac_address": "00:00:00:00:00:06"
},
{
"ip": "192.168.1.7",
"mac_address": "00:00:00:00:00:07"
}
]
% ping-before-wakeonlan --device-info /tmp/device.json
Process: 1 / 7: Device: {'ip': '192.168.1.3', 'mac_address': '00:00:00:00:00:03'}
Process: 2 / 7: Device: {'ip': '192.168.1.2', 'mac_address': '00:00:00:00:00:02'}
Process: 3 / 7: Device: {'ip': '192.168.1.1', 'mac_address': '00:00:00:00:00:01'}
Process: 4 / 7: Device: {'ip': '192.168.1.4', 'mac_address': '00:00:00:00:00:04'}
Process: 5 / 7: Device: {'ip': '192.168.1.5', 'mac_address': '00:00:00:00:00:05'}
{
"count": 5,
"device": {
"failed": [],
"handled": [
{
"ip": "192.168.1.3",
"mac_address": "00:00:00:00:00:03"
},
{
"ip": "192.168.1.2",
"mac_address": "00:00:00:00:00:02"
},
{
"ip": "192.168.1.1",
"mac_address": "00:00:00:00:00:01"
},
{
"ip": "192.168.1.4",
"mac_address": "00:00:00:00:00:04"
},
{
"ip": "192.168.1.5",
"mac_address": "00:00:00:00:00:05"
}
],
"input": [
{
"ip": "192.168.1.3",
"mac_address": "00:00:00:00:00:03"
},
{
"ip": "192.168.1.2",
"mac_address": "00:00:00:00:00:02"
},
{
"ip": "192.168.1.1",
"mac_address": "00:00:00:00:00:01"
},
{
"ip": "192.168.1.4",
"mac_address": "00:00:00:00:00:04"
},
{
"ip": "192.168.1.5",
"mac_address": "00:00:00:00:00:05"
},
{
"ip": "192.168.1.6",
"mac_address": "00:00:00:00:00:06"
},
{
"ip": "192.168.1.7",
"mac_address": "00:00:00:00:00:07"
}
],
"online": [],
"skip": [
{
"ip": "192.168.1.6",
"mac_address": "00:00:00:00:00:06"
},
{
"ip": "192.168.1.7",
"mac_address": "00:00:00:00:00:07"
}
]
},
"info": [
"cmd: ['ping', '-c', '1', '-W', '3', '192.168.1.1'], item: {'ip': '192.168.1.1', 'mac_address': '00:00:00:00:00:01'}",
"processOutput: b'PING 192.168.1.1 (192.168.1.1): 56 data bytes\\n\\n--- 192.168.1.1 ping statistics ---\\n1 packets transmitted, 0 packets received, 100.0% packet loss\\n', processError: None"
],
"maxCount": 5,
"ping": "ping -c 1 -W 3",
"status": true,
"version": "1.0.0"
}
or
% cat /tmp/device.json | ping-before-wakeonlan
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for ping-before-wakeonlan-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36a7e84191d2bbf36b8b6591a432893d48707b6a0553b9e8fff81d6b86a70c01 |
|
MD5 | a320d1f4b1dcb23358e66563aa70da75 |
|
BLAKE2b-256 | 3401a6a5ce55ab1efb305d387e402954758ef097bb0097119d24670e04fdb206 |
Close
Hashes for ping_before_wakeonlan-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d0a4a5bc4b86448b857f14b0c0628bbc11d99b8b0ec54076055be0ae3a4f9f40 |
|
MD5 | c161a440f9cc1dd9b05de25df53dcfc7 |
|
BLAKE2b-256 | c9bb6e49852929f4d851e728b4d7acb485f202b1421374ac50c7ffa5276e7c79 |