At first glance I see that you put a string in the function OnTimer when it should be a variable.
code:
function OnEvent_Timer("second")
should be
code:
function OnEvent_Timer(id)
Next you declare the the time variables in initialize which would make them local, declare them as global ones by putting their declartion outside a function
code:
var s=0,m=0,h=0,d=0;
function OnEvent_Initialize(MessengerStart)
{
MsgPlus.DisplayToast("P.M. Time", "Displays uptime as personal message.");
....