[opensource-dev] Client-side scripting REST/HTTP doc sample
Dzonatas Sol
dzonatas at gmail.com
Wed Mar 17 12:58:11 PDT 2010
Thank you. I've tried to keep it simple and minimal for everybody.
For example:
$ wget http://localhost:50140/Agent/Groups
<llsd><array><uuid>...
etc
Earlier today I considered a way to keep a passive connection open, so
that one can easily access the viewer from shell scripts. It's not hard
for me to re-enable so one can do as you request. It would be simple to
add a controlgroup variable to either require an "/Interface/Connect"
method performed or not. The "/Interface/Connect" method is there to
enable a simple secure session, yet easy to disable for tests or to
access the raw HTTP from tools like wget. The "/Interface/Connect" sets
a cookie for the session and tries to establish an active socket between
the viewer and script. I have already planned to eventually remove the
active socket and only have the passive http interface. I'll post more
unix shell script samples when this is done.
Brent Tubbs wrote:
> That looks very neat!
>
> SNOW-375 talks a lot about the MonoVida viewer, but I don't see any
> mention of that in your email below. �Is MonoVida needed to try this
> out? �I'm interested in just poking at the REST interface a bit with
> some raw http.
>
> I'll see if Opensource Obscure's build instructions on that page still
> work. �If I can get the latest SG + this patch working, I'd be
> interested in helping to develop this further.
>
> Brent
>
> On Wed, Mar 17, 2010 at 10:21 AM, Dzonatas Sol <dzonatas at gmail.com
> <mailto:dzonatas at gmail.com>> wrote:
>
> Here is a sample of the REST/HTTP doc for SNOW-375.
>
> SNOW-375 adds a HTTP server in the viewer to be easily accessible
> by any
> process or client-side script in a language agnostic manner.
>
> I posted this here to hopefully encourage forward movement in
> client-side scripting and to avoid the backpedal and reinventions.
>
> Note: This is tried, tested, and works. This is not just "talk" or
> made-up documentation.
>
> +++++++++++++
>
> SNOW-375: REST/HTTP URI patterns and response summary as of March 2010
>
> All names that appears in angle brackets, <>, are variable.
>
> Note full URI paths used, yet these don't include the
> "http://host:port/" designation.
>
> Example URI: http://localhost:50140/ControlGroup/SavedSettings
>
> All responses are wrapped in LLSD (examples not included in this doc).
>
> Most of these use the GET method, and combined/burst throughput
> via the
> POST method.
>
> ----------------------------
> /ControlGroup
>
> Response is a list of control groups.
>
>
> ----------------------------
> /ControlGroup/<group>
>
> Response is a list of valid variables in a controlgroup with default
> settings
>
> <group> is currently either "SavedSettings" or
> "SavedPerAccountSettings"
>
>
> ----------------------------
> /ControlGroup/<group>/<identifier>
>
> Response is a detailed and update of current settings for the specific
> variable identified.
>
> <group> is currently either "SavedSettings" or
> "SavedPerAccountSettings"
> <identifier> is a valid variable name from one of the variable control
> groups.
>
>
> ----------------------------
> /Agent/Groups
>
> Response is a list with details of groups joined by the connected
> agent.
>
>
> ----------------------------
> /AvatarTracker/Friends
>
> Response is the UUID list of the agent's friends and basic status
> of each.
>
>
> ----------------------------
> /AvatarTracker/Friend/<uuid>
>
> Response is a detailed relationship information for a specified
> friend UUID.
>
>
> ----------------------------
> /GestureManager/Items
>
> Response is a list of UUID of active gestures.
>
>
> ----------------------------
> /GestureManager/Item/<uuid>
>
> Response is the details of a MultiGesture structure for the UUID
> specified.
>
>
> ----------------------------
> /Inventory/Item/<uuid>
>
> Response is the details of an inventory item specified by the UUID.
>
>
> ----------------------------
> /Inventory/Root
>
> Response is the UUID of the root inventory folder.
>
>
> ----------------------------
> /Inventory/Category/<uuid>
>
> Response is the UUIDs of the descendant categories and items of the
> specified UUID.
>
>
> ----------------------------
> /Asset/Notecard/<uuid>
>
> Response is the notecard item specified by UUID converted to XML
> format
> (rather than 'linden notecard format').
>
> ----------------------------
> /Interface/Connect
>
> POST: Attempt to negotiate a connection to enable the above resources.
> * Details of connection steps not included in this doc.
>
> ----------------------------
> /AvatarTracker/Friend/s
> /GestureManager/Item/s
> /Inventory/Item/s
> /Inventory/Category/s
>
> POST: List of UUIDs for combined query, as above where <uuid> is
> replace
> with just an "s".
> Response: List of combined queries as if each item is an individual
> responses to each UUID.
>
>
> _______________________________________________
> Policies and (un)subscribe information available here:
> http://wiki.secondlife.com/wiki/OpenSource-Dev
> Please read the policies before posting to keep unmoderated
> posting privileges
>
>
More information about the opensource-dev
mailing list