Bot Commands

From SmartBots Developers Docs
HTTP API
Revision as of 19:36, 7 March 2018 by Gg (Talk | contribs)

Jump to: navigation, search

HTTP API commands are being sent to the bot by calling a special HTTP URL:

https://api.mysmartbots.com/api/bot.html

The request can be either GET or POST. Read the Doing HTTP API Calls article for more info.

Testing

You can compose and test your queries using SmartBots API Testing Suite:
https://www.mysmartbots.com/api/testing.html

Available bot HTTP commands

Command Description

Status

login Initiates bot login sequence.
logout Initiates bot logout sequence.
set_http_callback Specifies your HTTP callback script to receive bot events (invitations, IMs etc).

Messaging

im Sends an Instant Message to a specific user.
reply_dialog Virtually "presses" a pop-up dialog button (which was displayed by an in-world script).
say_chat_channel Says message over a specific chat channel.

Inventory

listinventory Returns a list ofthe bot's inventory folder contents.
give_inventory Commands bot to send an inventory item or folder to specific avatar.

Appearance

rebake Commands bot to rebake its appearance (reload its clothing and skin textures).
takeoff Removes a clothing item, body part or attachment (the opposite of the wear command).
wear Commands bot to wear a clothing item, body part or attach an object.

Group management

activate_group Activates a specific group (for example, to get build rights on the parcel).
group_join Tries to join a group by UUID.
group_leave Commands bot to leave the group specified by a UUID.
list_group_roles Returns a list the roles in given group.
listgroups Returns a list of the Second Life groups the bot is member of.
listgroups_extended Returns the bot's groups list, with additional details.

Group members and communications

group_invite Sends a group invitation to a specific resident.
group_eject Ejects residents from the group.
send_group_im Sends a message to group chat.
send_notice Sends a notice to the group.
setrole Puts member of a group in a specific role.

Money

get_balance Returns avatar L$ balance.
give_money Commands bot to send money (L$) to specific avatar.
give_money_object Commands bot to send money (L$) to a specific object.

Avatar info

avatar_groups Returns a list of a resident's groups.
avatar_picks Returns a list of a resident's picks.
key2name Returns avatar Second Life name by UUID.
name2key Returns avatar UUID by Second Life name.
offer_friendship Offers friendship to a resident.
offer_teleport Sends a teleport offer to the resident.

World

attachments Returns a list of the bot's attachments (including HUD objects).
touch_attachment Touches an object attached to the bot (HUD or attachment).
move Start or stop bot movement and rotations.
sit Commands bot to sit on a specific prim.
teleport Teleports bot to specific location.
touch_prim Touches a prim in-world.
touch_prim_coord Touches a prim in-world by using its coordinates.

Sim control

sim_access Control access to the sim.
sim_kick Kicks resident (without banning from the sim)
sim_restart Begins the sim restart routine. Also used to cancel the restart routine previously started.
sim_return Returns objects of the specific resident from the sim.
sim_send_message Sends a message to all visitors of the sim.

Parcel control

parcel_info Returns a lot of information about a parcel.
set_parcel_info Updates parcel details (deprecated, see parcel_info_update)


Restrictions

API frequency restrictions may be applied for numerous subsequent queries (especially messaging ones: im, send_group_im etc). We suggest maintaining about 3 seconds delay between the subsequent queries since SL also caps delivery at this rate.

SmartBots API query returns the following error message when you hit the frequency restriction: Frequent API requests throttled