43 lines
993 B
PHP
Executable File
43 lines
993 B
PHP
Executable File
#!/usr/bin/php
|
|
<?php
|
|
|
|
require 'header.php';
|
|
|
|
if ( php_sapi_name() != "cli" ) {
|
|
echo "This is a command line only utility.\n";
|
|
exit();
|
|
}
|
|
|
|
if ( $argc != 3 ) {
|
|
echo "Usage: setcolor_cli.php <6 digit hex color> <target ids separated by commas>\n\n";
|
|
exit();
|
|
}
|
|
$hex = $argv[1];
|
|
if ( !ctype_xdigit($hex) || (strlen($hex) != 6) ) {
|
|
echo "Invalid six character hex color patter in ARG[1]\n";
|
|
exit();
|
|
}
|
|
$targets = explode(",", $argv[2]);
|
|
foreach ( $targets as $target ) {
|
|
if ( !is_numeric($target) ) {
|
|
echo "Invalid targetd id: {$target}\n";
|
|
exit();
|
|
}
|
|
}
|
|
|
|
$command = 0x01;
|
|
$unique = mt_rand(1, 2000000000);
|
|
$red = hexdec(substr($hex, 0, 2));
|
|
$green = hexdec(substr($hex, 2, 2));
|
|
$blue = hexdec(substr($hex, 4, 2));
|
|
|
|
foreach ( $targets as $target ) {
|
|
$target = intval($target);
|
|
$unique = mt_rand(1, 2000000000);
|
|
$data = pack("LLLCLLCCC", PACKETFILTER[0], PACKETFILTER[1], $unique, $command, $target, 1, $red, $green, $blue);
|
|
transmitMessage($data);
|
|
}
|
|
|
|
|
|
?>
|