Difference between revisions of "HTTP API/LSL Helper Functions"
From SmartBots Developers Docs
(Created page with "The following functions will help you controlling bots from LSL scripts: {{API HTTP Example Boilerplate}} {{NavMenu}} __NOTOC__") |
|||
| Line 1: | Line 1: | ||
| − | The following functions will help you controlling bots from LSL scripts: | + | The following functions will help you controlling bots from LSL scripts. |
| + | |||
| + | <syntaxhighlight lang="lsl"> | ||
| + | /** | ||
| + | Send SmartBots HTTP API command. | ||
| + | */ | ||
| + | smartbotsAPI(string command, list params) { | ||
| + | // You need to adjust the vars below: | ||
| + | string sbApiKey = "..."; | ||
| + | string sbBotName = "..."; | ||
| + | string sbBotAccessCode = "..."; | ||
| + | |||
| + | // Populate the query data | ||
| + | list query = [ | ||
| + | "action=" + command, | ||
| + | "apikey=" + llEscapeURL(sbApiKey), | ||
| + | "botname=" + llEscapeURL(sbBotName), | ||
| + | "secret=" + llEscapeURL(sbBotAccessCode) | ||
| + | ]; | ||
| + | |||
| + | integer i; | ||
| + | for(i = 0; i<llGetListLength(params); i += 2) { | ||
| + | query += [ llList2String(params, i) + "=" + llEscapeURL(llList2String(params, i+1)) ]; | ||
| + | } | ||
| + | |||
| + | string queryString = llDumpList2String(query, "&"); | ||
| + | |||
| + | llHTTPRequest("http://api.mysmartbots.com/api/bot.html", | ||
| + | [HTTP_METHOD,"POST"], queryString); | ||
| + | } | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | Usage example: | ||
| + | |||
| + | <syntaxhighlight lang="lsl">/* | ||
| + | smartbotsAPI("im", [ | ||
| + | "slname", "Glaznah Gassner", | ||
| + | "message", "Hello in-world!" | ||
| + | ]); | ||
| + | </syntaxhighlight> | ||
| − | |||
Revision as of 22:00, 2 May 2017
The following functions will help you controlling bots from LSL scripts.
/**
Send SmartBots HTTP API command.
*/
smartbotsAPI(string command, list params) {
// You need to adjust the vars below:
string sbApiKey = "...";
string sbBotName = "...";
string sbBotAccessCode = "...";
// Populate the query data
list query = [
"action=" + command,
"apikey=" + llEscapeURL(sbApiKey),
"botname=" + llEscapeURL(sbBotName),
"secret=" + llEscapeURL(sbBotAccessCode)
];
integer i;
for(i = 0; i<llGetListLength(params); i += 2) {
query += [ llList2String(params, i) + "=" + llEscapeURL(llList2String(params, i+1)) ];
}
string queryString = llDumpList2String(query, "&");
llHTTPRequest("http://api.mysmartbots.com/api/bot.html",
[HTTP_METHOD,"POST"], queryString);
}
Usage example:
/*
smartbotsAPI("im", [
"slname", "Glaznah Gassner",
"message", "Hello in-world!"
]);