OsMessageObject

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (XEngine to OSSL)
(9 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{osslfunc|
+
{{osslfunc
threat_level = Low
+
|threat_level=Low
|
+
|permissions=${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
function_syntax = <source lang="lsl">
+
|delay=0
osMessageObject(key objectUUID, string message);
+
|function_syntax= osMessageObject(key objectID, string message)
 +
|ossl_example=This example consists of a sender script, and a reciever script.
 +
: '''Sender script'''
 +
<source lang = "lsl">
 +
// ----------------------------------------------------------------
 +
// Example / Sample Script to show function use.
 +
//
 +
// Script Title:    osMessageObject.lsl
 +
// Script Author:
 +
// Threat Level:    Low
 +
// Script Source:  SUPPLEMENTAL http://opensimulator.org/wiki/osMessageObject
 +
//
 +
// Notes: See Script Source reference for more detailed information
 +
// This sample is full opensource and available to use as you see fit and desire.
 +
// Threat Levels only apply to OSSL & AA Functions
 +
// See http://opensimulator.org/wiki/Threat_level
 +
// ================================================================
 +
// Inworld Script Line:    osMessageObject(key objectUUID, string message);
 +
//
 +
// Example of osMessageObject
 +
//
 +
// SPECIAL NOTE
 +
// send a message to to object identified by the given UUID,
 +
// a script in the Receiving object must implement the dataserver function
 +
// the dataserver function is passed the ID of the calling function and a string message
 +
// Dataserver event is only raised in the root prim of the linkset
 +
//
 +
//
 +
default
 +
{
 +
    state_entry()
 +
    {
 +
        llSay(0, "Touch me to use osMessageObject to message an object");
 +
    }
 +
    touch_end(integer total_num)
 +
    {
 +
        key kTargetObj = "UUID"; //INSERT A VALID Object UUID here
 +
        string sSentence = "This message sent from a Sending object using osMessageObject";
 +
        osMessageObject(kTargetObj,sSentence);
 +
    }
 +
}
 
</source>
 
</source>
|
+
 
ossl_example =  
+
 
|
+
: '''Reciever script'''
additional_info = EXAMPLES FOR SENDER SCRIPT AND RECEIVER SCRIPT NEEDED
+
<source lang = "lsl">
+
// Place this script in the Receiver prim.
Where ''objectUUID'' = the UUID of the object you are messaging.  
+
default
 +
{
 +
    state_entry()
 +
    {
 +
        llSay(0, "osMessageObject Receiver Ready\nPlease replace UUID in osMessageObject Script (line 31) kTargetObj = "+(string)llGetKey());
 +
    }
 +
    dataserver(key query_id, string data)
 +
    {
 +
        llSay(0, "RECEIVER: The message received.\n\t query_id = "+(string)query_id+"\n\t msg = "+data);
 +
    }
 +
}
 +
</source>
 +
|description=
 +
Where ''objectID'' = the UUID of the object you are messaging.  
  
 
Where ''message'' = The String of data you want to send.  
 
Where ''message'' = The String of data you want to send.  

Revision as of 07:33, 7 November 2019

osMessageObject(key objectID, string message)
Where objectID = the UUID of the object you are messaging.

Where message = The String of data you want to send.

Sends a message to to object identified by the given UUID, a script in the object must implement the dataserver function the dataserver function is passed the ID of the calling function and a string message.

Threat Level Low
Permissions ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
Extra Delay 0 seconds
Example(s)
This example consists of a sender script, and a reciever script.
Sender script
// ----------------------------------------------------------------
// Example / Sample Script to show function use.
//
// Script Title:    osMessageObject.lsl
// Script Author:
// Threat Level:    Low
// Script Source:   SUPPLEMENTAL http://opensimulator.org/wiki/osMessageObject
//
// Notes: See Script Source reference for more detailed information
// This sample is full opensource and available to use as you see fit and desire.
// Threat Levels only apply to OSSL & AA Functions
// See http://opensimulator.org/wiki/Threat_level
// ================================================================
// Inworld Script Line:    osMessageObject(key objectUUID, string message);
//
// Example of osMessageObject
//
// SPECIAL NOTE
// send a message to to object identified by the given UUID,
// a script in the Receiving object must implement the dataserver function
// the dataserver function is passed the ID of the calling function and a string message
// Dataserver event is only raised in the root prim of the linkset
// 
//
default
{
    state_entry()
    {
        llSay(0, "Touch me to use osMessageObject to message an object");
    }
    touch_end(integer total_num)
    {
        key kTargetObj = "UUID"; //INSERT A VALID Object UUID here
        string sSentence = "This message sent from a Sending object using osMessageObject";
        osMessageObject(kTargetObj,sSentence);
    }
}


Reciever script
// Place this script in the Receiver prim.
default
{
    state_entry()
    {
        llSay(0, "osMessageObject Receiver Ready\nPlease replace UUID in osMessageObject Script (line 31) kTargetObj = "+(string)llGetKey());
    }
    dataserver(key query_id, string data)
    {
        llSay(0, "RECEIVER: The message received.\n\t query_id = "+(string)query_id+"\n\t msg = "+data);
    }
}
Personal tools
General
About This Wiki