[opensource-dev] Client-side scripting REST/HTTP doc sample

Dzonatas Sol dzonatas at gmail.com
Wed Mar 17 18:25:25 PDT 2010


WGET is part of linux. It should also be available on Windows: 
http://gnuwin32.sourceforge.net/packages/wget.htm

To compile, you can try these instructions: 
http://wiki.secondlife.com/wiki/User:Dzonatas_Sol/Communicator

It compiles on Windows, but I don't distribute a binary -- just the patch.


Nexii Malthus wrote:
> ..Except they seem to be instructions for a command-line operating 
> system? ?_?
>
> - Nexii
>
> On Thu, Mar 18, 2010 at 12:04 AM, Nexii Malthus <nexiim at googlemail.com 
> <mailto:nexiim at googlemail.com>> wrote:
>
>     Very cool Dzonatas!
>
>     Now If only I could get snowglobe to compile, I'll try out
>     OpenSource Obscure's build instructions as well.
>
>     - Nexii
>
>
>     On Wed, Mar 17, 2010 at 7:58 PM, Dzonatas Sol <dzonatas at gmail.com
>     <mailto:dzonatas at gmail.com>> wrote:
>
>         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>
>         > <mailto: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
>         >
>         >
>
>         _______________________________________________
>         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