mal was für zwischendurch.......

Hallo Gemeinde,

was mache ich hier denn falsch ?

$user = "root".chr(13);
@CSCK_SendText($id,$user);

funktioniert.

Lieber hätte ich aber :

$user = "root";
@CSCK_SendText($id,$user.chr(13));

und das funktioniert leider nicht :frowning:

LG
Sascha

Was geht denn daran nicht…

paresy

guten Morgen,

das meine syno mich bei unterer Version nach 5 versuchen sperrt…
Also scheint der login zur syno nicht wirklich zu gehen…

mit obiger version geht alles wunderbar…

Ich bin ja mit PHP noch nicht so ganz firm…aber ich dachte, das meine untere version mehr ein „sauberer“ code ist.

LG
Sascha

Nachtrag:

Hier mal da ganze Script (WOL und shutdown einer Syno)

<?
// Konfigbereich :

  $mac = "0011320C5BCC"; //MAC Adresse der Syno
   $ip = "255.255.255.255"; // Broadcast adresse
 $user = "root"; // User für den Login, eventuell "root"
   $pw = "xxxxxxx"; // Passwort der Syno
   $id = 59678 /*[Synology Socket]*/;   //Client Socket auf port 23
   
   
// Ab hier nichts mehr ändern
################################################################################

function wake($ip, $mac, $port)
{
  $nic = fsockopen("udp://" . $ip, $port);
  if($nic)
  {
    $packet = "";
    for($i = 0; $i < 6; $i++)
       $packet .= chr(0xFF);
    for($j = 0; $j < 16; $j++)
    {
      for($k = 0; $k < 6; $k++)
      {
        $str = substr($mac, $k * 2, 2);
        $dec = hexdec($str);
        $packet .= chr($dec);
      }
    }
    $ret = fwrite($nic, $packet);
    fclose($nic);
    if($ret)
      return true;
  }
  return false;
}


if ($IPS_SENDER == "Execute")
{
    echo "Dieses Script kann nicht von Hand gestartet werden.";
    return;
}
if ($IPS_SENDER == "WebFront")
{
    SetValue(42236 /*[Mein Haus\Multimedia\Hauptmenü\Links\Synology Server\Power]*/, $IPS_VALUE);
} else {
 echo "Dieses Skript kann nur vom WebFront aus gestartet werden!";
}

if ($IPS_VALUE == true) // Wake On Lan
{
 wake($ip,$mac,9); //Port kann irgendwas sein
}

if ($IPS_VALUE == false) // Shutdown

{
 @CSCK_SendText($id,$user.chr(13));
IPS_Sleep(500);
@CSCK_SendText($id,$pw.chr(13));
IPS_Sleep(500);
@CSCK_SendText($id, "poweroff".chr(13));
 }
 

 
?>

So habe ich es jetzt mal wieder umgeschrieben…testen kann ich es erst, wenn meine Frau ihre dateien syncronisiert hat :slight_smile: (30 min)

Ich hab mal deine 2 Versionen bei mir getestet. Es gibt keinen Unterschied im Debug-Fenster.


72 6F 6F 74 0D 
72 6F 6F 74 0D 

ok…danke…ich melde mich, wenn ich das script nochmal getestet habe…so in einer halben stunde etwa…

LG
Sascha

Da brat mir doch einer…also sowas…

Jetzt funktioniert das genau so, wie es heute morgen die ganze Zeit nicht funktioniert hat.

Humor ist der Knopf, der verhindert, daß der Kragen platzt !

LG
Sascha

Magst Du dem Thema eine aussagekräftige Überschrift geben? Das würde die Suche für andere erleichtern. :slight_smile:

natürlich…entschuldige bitte.

Kann ich das noch im nachhinein machen ?

LG
Sascha