mir scheint, als würde in der Beta diese Code nicht mehr Funktionieren
if ($IPS_SENDER == 'SMSWitch')
Ist es jetzt so wie es früher schon einmal war, dass amn das wieder manuell setzen muss?
Toni
mir scheint, als würde in der Beta diese Code nicht mehr Funktionieren
if ($IPS_SENDER == 'SMSWitch')
Ist es jetzt so wie es früher schon einmal war, dass amn das wieder manuell setzen muss?
Toni
Nee, Unfug… geht…
der Fehler liegt im „HandlePHPEvent“ - gibts da Änderungen in der Beta?
Update: Es liegt offenbar am Script selbst…
Wo könnte das Problem in diesem Script liegen?
if ($IPS_SENDER == 'SMSWitch')
{
$SMSText = $SMSWitch_Content.' am '.$SMSDate.' um '.$SMSTime.' verarbeitet';
IPS_Execute('Showmessage.exe', $SMSWitch_Sender, False, False); // Showmessage.exe wirft eine Message auf dem Bildschirm aus
IPS_Execute('Showmessage.exe', $SMSText, False, False);
SMSWitch_SendMessage(28448, $SMSWitch_Sender, $SMSText);
IPS_Execute('Showmessage.exe', 'Done!', False, False);
}
Was ich weiss:
noch ein bissel D-Code:
TIPSSMSWitch = class(TIPSModuleObject, IIPSSMSWitch)
private
//--- Basic Structures
FVariables: TIPSVariables;
FParams: TIPSScriptParams;
[..]
procedure TIPSSMSWitch.HandlePHPEvent(FunctionName: string;
Parameters: TIPSPHPParameters;
var ReturnValue: TIPSPHPParameter;
ThisPtr: pointer;
TSRMLS_DC: pointer);
var
PDU: TPDU;
Reslt: Boolean;
begin
if SameText(FunctionName, 'SMSWitch_SendMessage') then
begin
PDU:=FPDU.encodePDU(FSettings.SMSC, Parameters[0].VarString, false, false, false, Parameters[1].VarString);
if FMirkModem.SendSMS(PDU.length, PDU.PDU) = mrOkay then
Reslt:=true
else
Reslt:=false;
ReturnValue.VarBoolean:=Reslt;
end;
end;
procedure TIPSSMSWitch.GetMessages();
var
[..]
State: TModemResult;
Command, ShortCut: string;
Script, Filename: string;
Prefix: string;
begin
[..]
SetLength(FVariables, 2);
FVariables[0].VarName:= 'SMSWitch_Sender';
FVariables[0].VarString:=Content.PhoneNo;
FVariables[0].VarType:=vtString;
FVariables[0].VarUpdated:=Now;
FVariables[0].VarInfo:= '';
FVariables[1].VarName:= 'SMSWitch_Content';
FVariables[1].VarString:=Command;
FVariables[1].VarType:=vtString;
FVariables[1].VarUpdated:=Now;
FVariables[1].VarInfo:= '';
[..]
// Wenn Script vorhanden
if not FAILED(vEventScripter.GetScriptFilename(Script, Filename)) then
begin
InitParams(FParams, FVariables);
vEventScripter.ExecuteScript(Script, 'SMSWitch', false, @FParams, nil)
end
else if FSettings.Logging then // Command gültig, aber Script nicht gefunden
begin
vKernel.LogMessage(KL_MESSAGE, 'SMSWitch', 'Script not found: ' + Script);
end;
[..]
end;