I have an HTPC and a network server on my network. My server is always on, لیکن HTPC sleeps when it is not in use. If I want to schedule recordings remotely I need a way to wake the HTPC. The solution I came up with is to provide a webpage on my server (password protected) that wakes the HTPC and then redirects to the web interface of the remote control app of the HTPC. Below is the code for anyone interested…
[php language=“htmlscript”]<ایچ ٹی ایم ایل>
<head>
<meta http-equiv=‘refresh’ content=’11;url=address of htpc here’ />
<script type=“text/javascript”>
// time is the number of seconds left
// name is the text part of the container to insert countdown in
// num is the unique id of the container. Allows for more than 1 per page
function countdown(وقت, نام, num)
{
// grab the element object of the countdown container
countdownDiv = document.getElementById(name + num);
// calculate number of minutes from the seconds
minutes = Math.floor(time / 60);
// remainder is number of seconds
seconds = time % 60;
// add the current countdown display to the container specified
countdownDiv.innerHTML = ‘after ’ + seconds + ’ seconds, please wait’;
اگر(time == 1)countdownDiv.innerHTML = ‘after ’ + seconds + ’ second, please wait’;
// if time is up remove the edit div, otherwise repeat every second
اگر(وقت <= 0) countdownDiv.innerHTML = ‘now…’;
else setTimeout(‘countdown(‘ + –time + ‘,“ ‘ + نام + ’ ”,“ ‘ + num + ‘”);’, 1000);
}
</سکرپٹ>
</head>
<body bgcolor=‘#000022’ style=‘text-align: center; color: سفید; padding-top: 30پکسلز;’>
<h2>
The ٹی وی interface will automatically load <div id=“div_name1” style=“display:inline;"></div کے>
<script type=“text/javascript”>countdown(12, “div_name”, 1)</سکرپٹ>
</h2>
<?پی ایچ پی
flush();
$addr_byte = explode(‘:’, “MAC Address of htpc here”);
$hw_addr = ”;
for ($a=0; $ایک <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$ایک]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
for ($a = 1; $ایک <= 16; $a++) $msg .= $hw_addr;
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$opt_ret = socket_set_option($ے, 1, 6, TRUE);
اگر(socket_sendto($ے, $msg, strlen($msg), 0, “local subnet address here”, “7”)) {socket_close($ے);return TRUE;}اور {return FALSE;}
?>
</جسم>
</ایچ ٹی ایم ایل>[/پی ایچ پی]
“Hi James I realise it has been a long while, but I just checked this on windows 11 (build 23H2)…”