Difference between revisions of "Email"

From Second Life Wiki
Jump to: navigation, search
m (Put in lsl tags)
Line 14: Line 14:
 
|examples=
 
|examples=
 
This application uses email to have objects check with a central server to see if the owner has the latest version. In the objects:
 
This application uses email to have objects check with a central server to see if the owner has the latest version. In the objects:
<pre>
+
<lsl>
 
string version = "1"; //
 
string version = "1"; //
 
string type = "lolcube";
 
string type = "lolcube";
 
 
default
 
default
 
{
 
{
Line 26: Line 25:
 
             (string)llGetOwner()+","+type);
 
             (string)llGetOwner()+","+type);
 
     }
 
     }
}</pre>
+
}</lsl>
 
+
 
The server:
 
The server:
<pre>
+
<lsl>
 
default
 
default
 
{
 
{
Line 57: Line 55:
 
     }
 
     }
 
}
 
}
</pre>
+
</lsl>
 
|helpers
 
|helpers
 
|also_header
 
|also_header

Revision as of 07:14, 21 February 2008

Description

Event: email( string time, string address, string subj, string message, integer num_left ){ ; }

Triggered when task receives email

• string time
• string address
• string subj
• string message
• integer num_left

Caveats

  • time is in the (string)llGetUnixTime format.
  • The email queue is limited to 100 emails, any email after that is bounced.
All Issues ~ Search JIRA for related Bugs

Examples

This application uses email to have objects check with a central server to see if the owner has the latest version. In the objects: <lsl> string version = "1"; // string type = "lolcube"; default {

   on_rez(integer start_param)
   {
       llEmail("5a634b27-f032-283f-2df2-55ead7724b23@lsl.secondlife.com",
           version,
           (string)llGetOwner()+","+type);
   }

}</lsl> The server: <lsl> default {

   state_entry()
   {
       llSetTimerEvent(15);
   }
   
   timer()
   {
       llGetNextEmail("","");
   }
   
   email( string time, string address, string version, string message, integer num_left )
   {    
       if ((integer)version < 2)
       {
           list info = llCSV2List(llDeleteSubString(message, 0, llSubStringIndex(message, "\n\n") + 1));
           llGiveInventory(llList2Key(info,0),llList2String(info,1));
       }
       
       integer i;
       for (i = 0; i < num_left; i++)
       {
           llGetNextEmail("","");
       }
   }

} </lsl>

See Also

Functions

•  llEmail
•  llGetNextEmail

Deep Notes

Signature

event void email( string time, string address, string subj, string message, integer num_left );