Difference between revisions of "LlGetTimestamp"

From Second Life Wiki
Jump to: navigation, search
m (+ helper functions)
m (links updated)
Line 47: Line 47:
 
|helpers=
 
|helpers=
 
=== Helper Functions ===
 
=== Helper Functions ===
* [[User:Void_Singer/Functions#List_format_to_Unix_time_code.|Timestamp: list format to Unix timestamp]] - ex: 1234567890 to [2009, 2, 13, 3, 31, 30]
+
* [[Stamp2UnixInt]] - List format to Unix timestamp. ex: [2009, 2, 13, 3, 31, 30] to 1234567890
** compatible with [[llParseString2List]]( [[llGetTimestamp]](), ["-", "T", ":", "."], [] )
+
** compatible with '''''llParseString2List( llGetTimestamp(), ["-", "T", ":", "."], [] )'''''
* [[User:Void_Singer/Functions#Weekday_from_.28_Y.2C_M.2C_D_.29_format|Timestamp: Weekday from (Y, M, D)]] - ex: "Friday" from (Y, M, D)
+
* [[Stamp2WeekdayStr]] - Weekday from (Y, M, D) ex: "Friday" from (2009, 2, 13)
 
|also_functions=
 
|also_functions=
 
{{LSL DefineRow||[[llGetDate]]|Same format but without the time.}}
 
{{LSL DefineRow||[[llGetDate]]|Same format but without the time.}}

Revision as of 15:46, 12 October 2010

Summary

Function: string llGetTimestamp( );

Returns a string that is the current date and time in the UTC time zone in the format "YYYY-MM-DDThh:mm:ss.ff..fZ"

Appears to be accurate to milliseconds.

Examples

<lsl>// Reset tracker

string BOOT_TIME;

default {

   state_entry()
   {
       BOOT_TIME = llGetTimestamp(); // state_entry is triggered on script reset.
   }
   
   touch_start(integer num)
   {
       llSay(PUBLIC_CHANNEL, "The last script was last reset @ " + BOOT_TIME);
       llSay(PUBLIC_CHANNEL, "Right now it is " + llGetTimestamp());
   }

}</lsl> <lsl>// Greeting

default {

   state_entry()
   {
       llSetTouchText("Greet");
   }
   touch_start(integer num)
   {
       list TimeStamp = llParseString2List(llGetTimestamp(),["-",":"],["T"]); //Get timestamp and split into parts in a list
       integer Hour = llList2Integer(TimeStamp,4);
       if(Hour<12)		
           llSay(PUBLIC_CHANNEL,"Good Morning, Oliver Sintim-Aboagye!");	
       else if(Hour<17)
           llSay(PUBLIC_CHANNEL,"Good Afternoon, " + llDetectedName(0));		
       else
           llSay(PUBLIC_CHANNEL,"Good Evening, " + llKey2Name(llDetectedKey(0)));
   }
}</lsl>

Useful Snippets

Helper Functions

  • Stamp2UnixInt - List format to Unix timestamp. ex: [2009, 2, 13, 3, 31, 30] to 1234567890
    • compatible with llParseString2List( llGetTimestamp(), ["-", "T", ":", "."], [] )
  • Stamp2WeekdayStr - Weekday from (Y, M, D) ex: "Friday" from (2009, 2, 13)

See Also

Functions

•  llGetDate Same format but without the time.
•  llGetUnixTime Time in seconds since the epoch.
•  llGetTime Elapsed script-time.

Articles

•  ISO 8601
•  Wikipedia:ISO_8601
•  Code Racer - useful benchmarks within 100 trials
•  Efficiency Tester - more accurate benchmarks within 10,000 trials
•  LSL_Script_Efficiency - in-depth discussion of the Efficiency Tester

Deep Notes

Search JIRA for related Issues

Signature

function string llGetTimestamp();