Un wake on lan que j'ai déjà publié sur le forum.
Je pense qu'il sera plus visible ici vu les difficultés que j'ai eu à trouver des renseignements pour ecrire cette source en php.
Le principe :
On ouvre une socket sur le réseau et on broadcast FF FF FF FF FF FF + 16 * l'adresse mac de la machine à réveiller
Source / Exemple :
<?php
class Wol{
private $nic;
public function wake($mac){
$this->nic = fsockopen("udp://255.255.255.255", 9);
if( !$this->nic ){
fclose($this->nic);
return false;
}
else{
fwrite($this->nic, $this->pacquet($mac));
fclose($this->nic);
return true;
}
}
private function pacquet($Mac){
$packet = "";
for($i = 0; $i < 6; $i++){$packet .= chr(0xFF);}
for ($j = 0; $j < 16; $j++){
for($i = 0; $i < 12; $i=$i + 2){$packet .= chr(hexdec(substr($Mac, $i, 2)));}
}
return $packet;
}
}
$wol = new Wol();
// Remplacer 001122334455 par l'adresse mac du pc à allumer
$wol->wake('001122334455');
?>
Conclusion :
Cette source est écrite en php5 mais si on supprime les "Public/Private" ... on se retrouve en php4.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.