sim_access

From SmartBots Developers Docs
Jump to: navigation, search

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)