Script Tracking
Track your script or random events from any computer/mobile device
I saw a request for a way of very quickly checking the status of an account without having to log into teamviewer. There was also a request for an app to be made for mobile devices, if anybody wants to do this feel free, if you want it to generate the results in a different way then just let me know.
Try it out at http://mytracker.net84.net/
The idea is that when a script is running it periodically updates it's status by running some code (see below) that posts it to my website where you can use your password to access it. It works in a similar way to SRL stats, but for a different purpose.
At the moment the website looks awful, if you want to improve it send me your design ideas.
When you go to the website you will be presented with this (Told you it looks awful):

First of all you are going to want to create an account, clicking that link you will be presented with:

then:

Then you want to login, aft that you will be presented with this page:

You can see at the moment that there are no status's posted, I have created a function in simba that adds info to this page for you to read:
Simba Code:
function AddAStatus(Username, CommitKey, ScriptName, Status : String) : Boolean;
Username is the username of the account you just created, CommitKey is retrieved from your MyAccount area (see above screenshot), the script name is the name of the script you are currently running. Status is then the line that you want posting on the page.
So if we wanted to post something we could put a line in like this:
Simba Code:
AddAStatus('testaccount', '0NvIQ14wFpyMfSWHcOmCrjoKd', 'MyEpicScript', 'Account '+IntToStr(CurrentAccount)+' has got stuck in a random event. Swapping to next account.');
Then back on our page:

You can see it has been added, Yay!
You can keep adding more things, they will all be time and date stamped so you know when they were posted (the time shown is the time on the computer that is running the script, not the server time).

You'll notice a "Clear Account Status" link, this clears all of the status's that are currently there, clicking it gives you a confirmation screen, once cleared all of your lovely information has gone:

Here is the code for the function:
Simba Code:
function AddAStatus(Username, CommitKey, ScriptName, Status : String) : Boolean;
Var
Data : integer;
H, M, Se, MS, D, Mo, Y : Word;
S : String;
begin
DecodeTime(now, H, M, Se, MS);
DecodeDate(now, Y, Mo, D);
Data := InitializeHTTPClientWrap(False);
ClearPostData(Data);
AddPostVariable(Data, 'username', Username);
AddPostVariable(Data, 'DevKey', CommitKey);
AddPostVariable(Data, 'status', '<li>['+padz(IntToStr(D), 2)+'/'+padz(IntToStr(Mo), 2)+'/'+padz(IntToStr(Y), 2)+' '+padz(IntToStr(H), 2)+':'+padz(IntToStr(M), 2)+':'+padz(IntToStr(Se), 2)+'] ['+ScriptName+']<BR>'+Status);
S := PostHTTPPageEx(Data, 'http://mytracker.net84.net/commit.php');
FreeHTTPClient(Data);
Result := Pos('True', S) <> 0;
if(not Result)then
begin
WriteLn(Copy(S, 1, Pos('<!-- [url]www.000w[/url]', S) - 1));
end;
end;
Enjoy!
And for progress reports:
Simba Code:
function AddAStatusMulti(Username, CommitKey, ScriptName : String; Status : array of String) : Boolean;
Var
Data, i : integer;
H, M, Se, MS, D, Mo, Y : Word;
S : String;
begin
DecodeTime(now, H, M, Se, MS);
DecodeDate(now, Y, Mo, D);
Data := InitializeHTTPClientWrap(False);
ClearPostData(Data);
for i := low(Status) to high(status) do
S := S + '<BR>' + Status[i];
AddPostVariable(Data, 'username', Username);
AddPostVariable(Data, 'DevKey', CommitKey);
AddPostVariable(Data, 'status', '<li>['+padz(IntToStr(D), 2)+'/'+padz(IntToStr(Mo), 2)+'/'+padz(IntToStr(Y), 2)+' '+padz(IntToStr(H), 2)+':'+padz(IntToStr(M), 2)+':'+padz(IntToStr(Se), 2)+'] ['+ScriptName+'] '+S);
S := PostHTTPPageEx(Data, 'http://mytracker.net84.net/commit.php');
FreeHTTPClient(Data);
Result := Pos('True', S) <> 0;
if(not Result)then
begin
WriteLn(Copy(S, 1, Pos('<!-- [url]www.000w[/url]', S) - 1));
end;
end;
which puts multiple strings under the same timestamp:

FAQ:
Why use a CommitKey, not just the password?
So that you can use this in your scripts to be able to collect progress reports, without other users being able to log into your account.