Difference between revisions of "HTTP API/Bot Commands/sim access"

From SmartBots Developers Docs
Jump to: navigation, search
 
(2 intermediate revisions by the same user not shown)
Line 21: Line 21:
 
* allow - add to allowed list
 
* allow - add to allowed list
 
* disallow - remove from allowed list
 
* disallow - remove from allowed list
 
Plus two specific commands (handle with care!):
 
* set_manager - set avatar as an estate manager
 
* unset_manager - removes avatar from estate managers list
 
  
 
{{API Variable|all_estates|no}} If TRUE (or 1), perform operation for all estates available for bot
 
{{API Variable|all_estates|no}} If TRUE (or 1), perform operation for all estates available for bot
Line 34: Line 30:
  
 
== Comments ==
 
== Comments ==
 +
 +
"allow" and "disallow" operations work with a "Allowed residents" list. This list is taken into account only if your sim is private (has "Allow public access" option off).
 +
 +
"disallow" and "ban" operations are not the same. "ban" ejects resident from the sim, and prevents him from returning back, while "disallow" removes resident from the "allowed residents" access list.
 +
 +
Also:
  
 
* You have to teleport to the region first.
 
* You have to teleport to the region first.
Line 60: Line 62:
 
   ], "&");
 
   ], "&");
 
   
 
   
llHTTPRequest("http://api.mysmartbots.com/api/bot.html",
+
llHTTPRequest("https://api.mysmartbots.com/api/bot.html",
 
   [HTTP_METHOD,"POST"], params);
 
   [HTTP_METHOD,"POST"], params);
  
Line 71: Line 73:
 
   ], "&");
 
   ], "&");
 
   
 
   
llHTTPRequest("http://api.mysmartbots.com/api/bot.html",
+
llHTTPRequest("https://api.mysmartbots.com/api/bot.html",
 
   [HTTP_METHOD,"POST"], params);
 
   [HTTP_METHOD,"POST"], params);
 
</syntaxhighlight>
 
</syntaxhighlight>

Latest revision as of 14:19, 7 September 2017

Control access to the sim.

smartbotsAPI("sim_access", [
  "avatar", UUID, 
  "operation", OPERATION,
  "all_estates", TRUE
]); // See "LSL Helper Functions" page for this function

Variables

The following table shows input values (you send them with the API call) and returned output values.

Variable Required Description
Input basic parameters:
action yes = sim_access
apikey yes Your personal developer's API key.
botname yes Your bot's SL login.
secret yes Bot access code of your bot.
dataType optional Set to "json" to get JSON reply instead of URL-encoded string
custom optional The custom data (string) to be passed back to caller script. This value will be returned back to the caller in HTTP response.
Input:
avatar yes The resident to manage access for
operation yes The operation to perform. One of the following:
  • ban - add to ban list
  • unban - remove from ban list
  • allow - add to allowed list
  • disallow - remove from allowed list
all_estates optional If TRUE (or 1), perform operation for all estates available for bot
Output:
(to be received in http_response LSL event, see docs for details)
result OK - command completed successfully
FAIL - command failed
resulttext Detailed reason for the failure.
custom The value from input "custom" parameter. See above.

Comments

"allow" and "disallow" operations work with a "Allowed residents" list. This list is taken into account only if your sim is private (has "Allow public access" option off).

"disallow" and "ban" operations are not the same. "ban" ejects resident from the sim, and prevents him from returning back, while "disallow" removes resident from the "allowed residents" access list.

Also:

  • You have to teleport to the region first.
  • To execute this function your bot needs to be an Estate Manager.
  • You don't need a "Sim Governor" add-on to use this function.

Examples

Teleport to DuoLife region and ban BartenderJoe:

// You need to adjust the vars below:
string sbApiKey = "...";
string sbBotName = "...";
string sbBotAccessCode = "...";

string myHome = "DuoLife/128/128/20";

// First, teleport to the desired region
string params = llDumpList2String([
  "action="  + "teleport",
  "location=" + llEscapeURL(myHome),
  "apikey="  + llEscapeURL(sbApiKey),
  "botname=" + llEscapeURL(sbBotName),
  "secret="  + llEscapeURL(sbBotAccessCode)
  ], "&");
 
llHTTPRequest("https://api.mysmartbots.com/api/bot.html",
  [HTTP_METHOD,"POST"], params);

// Then restart it:
params = llDumpList2String([
  "action="  + "sim_access",
  "avatar=" + "bc3af7d6-f089-4b57-b78e-473334af01cb",
  "operation=" + "ban",
  "all_estates=" + "0"
  ], "&");
 
llHTTPRequest("https://api.mysmartbots.com/api/bot.html",
  [HTTP_METHOD,"POST"], params);


<< return back to Bot commands

(Miss an API call or parameter? Submit your request in forum)