0Logo de alarma del relojPHP / JavaScript para despertar a un PC de forma remota

Yo tengo un HTPC y un servidor de red en mi red. Mi servidor está siempre en, pero el HTPC duerme cuando no está en uso. Si quiero programar grabaciones de forma remota necesito una manera de despertar la HTPC.  La solución que se me ocurrió es proporcionar una página web en mi servidor (protegido con contraseña) que despierta la HTPC y luego vuelve a dirigir a la interfaz web de la aplicación de control remoto de la HTPCBelow is the code for any­one interested…

[php language=“htmlscript”]<HTML>
<cabeza>
<meta http-equiv=‘refresh’ content=’11;url=address of htpc here’ />
<script type=“text/javascript”>
// time is the num­ber of seconds left
// name is the text part of the con­tain­er to insert count­down in
// num is the unique id of the con­tain­er. Allows for more than 1 per page
func­tion countdown(hora, nombre, num)
{
// grab the ele­ment object of the count­down container
count­down­Div = document.getElementById(name + num);
// cal­cu­late num­ber of minutes from the seconds
minutes = Math.floor(time / 60);
// remainder is num­ber of seconds
seconds = time % 60;
// add the cur­rent count­down dis­play to the con­tain­er specified
countdownDiv.innerHTML = ‘after ’ + segundos + ’ seconds, please wait’;
si(time == 1)countdownDiv.innerHTML = ‘after ’ + segundos + ’ second, please wait’;
// if time is up remove the edit div, oth­er­wise repeat every second
si(hora <= 0) countdownDiv.innerHTML = ‘now…’;
else setTimeout(‘countdown(' + –time + ',“ ‘ + nombre + ’ ”,“ ‘ + num + ‘”);’, 1000);
}
</guión>
</cabeza>
<body bgcolor=‘#000022’ style=‘text-align: cen­ter; col­or: blanco; pad­ding-top: 30px;’>
<h2>
los TV inter­face will auto­mat­ic­ally load <div id=“div_name1” style=“display:inline;"></div>
<script type=“text/javascript”>countdown(12, “div_name”, 1)</guión>
</h2>
<?php
flush();
$addr_byte = explode(':’, “MAC Address of htpc here”);
$hw_addr = ”;
para ($a=0; $a <6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a]));
$msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255);
para ($a = 1; $a <= 16; $a++) $msg .= $hw_addr;
$s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$opt_ret = socket_set_option($s, 1, 6, TRUE);
si(socket_sendto($s, $msg, strlen($msg), 0, “loc­al sub­net address here”, “7”)) {socket_close($s);return TRUE;}más {return FALSE;}
?>
</cuerpo>
</HTML>[/php]

Leave a Reply