git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2659 52acb1d6-8a22-11de-b505-999d5b087335
463 lines
6.4 KiB
Plaintext
463 lines
6.4 KiB
Plaintext
////////////////////////////////////////////////////////////////////////////////
|
|
// World Server
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
®ion_info =
|
|
{
|
|
name: string,
|
|
id: uuid,
|
|
handle: binary,
|
|
online: boolean,
|
|
ip: binary,
|
|
port: integer,
|
|
address: uri,
|
|
map_texture_id: uuid,
|
|
owner: uri,
|
|
region_flags: integer,
|
|
agent_count: integer,
|
|
capabilities: { $: uri },
|
|
water_height: real,
|
|
default_position: [ real, real, real ],
|
|
default_look_at: [ real, real, real ]
|
|
}
|
|
|
|
%%create_region
|
|
|
|
-> region_info
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string,
|
|
simulation_key: uuid
|
|
}
|
|
|
|
%%delete_region
|
|
|
|
->
|
|
{
|
|
id: uuid,
|
|
simulation_key: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string
|
|
}
|
|
|
|
%%region_update
|
|
|
|
->
|
|
{
|
|
region: region_info,
|
|
simulation_key: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string
|
|
}
|
|
|
|
%%fetch_region
|
|
|
|
&fetch_region_query = { id: uuid }
|
|
&fetch_region_query = { x: integer, y: integer, nearest: boolean }
|
|
&fetch_region_query = { name: string }
|
|
|
|
-> fetch_region_query
|
|
|
|
<- region_info
|
|
|
|
%%fetch_default_region
|
|
|
|
<- region_info
|
|
|
|
%%region_search
|
|
|
|
->
|
|
{
|
|
query: string
|
|
}
|
|
|
|
<-
|
|
{
|
|
regions: [ region_info, ... ]
|
|
}
|
|
|
|
%%get_region_count
|
|
|
|
<-
|
|
{
|
|
count: integer
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
// Identity
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// This message should be ignored if it originates from anywhere other than the
|
|
// identity server for the given identity
|
|
|
|
%%request_capabilities
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
capabilities: [ string, ... ]
|
|
}
|
|
|
|
<-
|
|
{
|
|
capabilities: { $: uri }
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
// Assets
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
%%get_asset_metadata
|
|
|
|
&metadata =
|
|
{
|
|
id: uuid,
|
|
name: string,
|
|
description: string,
|
|
creation_date: date,
|
|
content_type: string,
|
|
sha256: binary,
|
|
temporary: boolean,
|
|
methods: { $: uri }
|
|
}
|
|
|
|
&metadata =
|
|
{
|
|
id: uuid,
|
|
name: string,
|
|
description: string,
|
|
creation_date: date,
|
|
content_type: string,
|
|
sha256: binary,
|
|
temporary: boolean,
|
|
methods: { $: uri }
|
|
components: integer,
|
|
layer_ends: [ integer ]
|
|
}
|
|
|
|
<- metadata
|
|
|
|
%%create_asset
|
|
|
|
&create =
|
|
{
|
|
content_type: string,
|
|
temporary: boolean,
|
|
base64_data: string
|
|
}
|
|
|
|
&create =
|
|
{
|
|
id: uuid,
|
|
content_type: string,
|
|
temporary: boolean,
|
|
base64_data: string
|
|
}
|
|
|
|
-> create
|
|
|
|
<-
|
|
{
|
|
id: uuid
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
// Inventory
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
%%create_inventory
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
name: string
|
|
}
|
|
|
|
<-
|
|
{
|
|
root_folder_id: uuid
|
|
}
|
|
|
|
%%create_folder
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
folder_id: uuid,
|
|
parent_id: uuid,
|
|
name: string,
|
|
preferred_content_type: string
|
|
}
|
|
|
|
<-
|
|
{
|
|
folder_id: uuid
|
|
}
|
|
|
|
%%create_item
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
item_id: uuid,
|
|
name: string,
|
|
description: string,
|
|
content_type: string,
|
|
asset_id: uuid,
|
|
parent_id: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
item_id: uuid
|
|
}
|
|
|
|
%%move_item
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
item_id: uuid,
|
|
new_parent_id: uuid,
|
|
new_name: string
|
|
}
|
|
|
|
<-
|
|
{
|
|
item_id: uuid
|
|
}
|
|
|
|
%%update_item
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
name: string,
|
|
description: string,
|
|
content_type: string,
|
|
asset_id: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string
|
|
}
|
|
|
|
%%fetch_object
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
object_id: uuid
|
|
}
|
|
|
|
&inventory_object =
|
|
{
|
|
id: uuid,
|
|
parent_id: uuid,
|
|
name: string,
|
|
owner_id: uuid,
|
|
asset_id: uuid,
|
|
content_type: string,
|
|
creator_id: uuid,
|
|
group_id: uuid,
|
|
description: string,
|
|
group_owned: boolean,
|
|
perms_base: binary,
|
|
perms_everyone: binary,
|
|
perms_group: binary,
|
|
perms_next: binary,
|
|
perms_owner: binary,
|
|
sale_price: integer,
|
|
sale_type: integer,
|
|
flags: integer,
|
|
creation_date: integer
|
|
}
|
|
|
|
&inventory_object =
|
|
{
|
|
id: uuid,
|
|
parent_id: uuid,
|
|
name: string,
|
|
owner_id: uuid,
|
|
preferred_content_type: string,
|
|
version: integer,
|
|
children: [ inventory_object, ... ]
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string,
|
|
object: inventory_object
|
|
}
|
|
|
|
%%purge_folder
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
folder_id: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string
|
|
}
|
|
|
|
%%get_inventory_skeleton
|
|
|
|
->
|
|
{
|
|
identity: uri
|
|
}
|
|
|
|
<-
|
|
{
|
|
folders:
|
|
[
|
|
{
|
|
name: string,
|
|
parent_id: uuid,
|
|
version: integer,
|
|
preferred_content_type: string,
|
|
folder_id: uuid
|
|
},
|
|
...
|
|
]
|
|
}
|
|
|
|
%%get_active_gestures
|
|
|
|
->
|
|
{
|
|
identity: uri
|
|
}
|
|
|
|
<-
|
|
{
|
|
gestures:
|
|
[
|
|
{
|
|
item_id: uuid,
|
|
asset_id: uuid
|
|
},
|
|
...
|
|
]
|
|
}
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
// Simulators
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
%%enable_client
|
|
|
|
->
|
|
{
|
|
identity: uri,
|
|
agent_id: uuid,
|
|
session_id: uuid,
|
|
secure_session_id: uuid,
|
|
circuit_code: integer,
|
|
region_handle: binary,
|
|
child_agent: boolean,
|
|
ip: binary,
|
|
client_version: string,
|
|
attributes: { },
|
|
services: { $: { $: uri } },
|
|
callback_uri: uri
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string,
|
|
seed_capability: uri,
|
|
}
|
|
|
|
%%enable_client_complete
|
|
|
|
->
|
|
{
|
|
agent_id: uuid
|
|
}
|
|
|
|
%%close_agent_connection
|
|
|
|
->
|
|
{
|
|
agent_id: uuid
|
|
}
|
|
|
|
%%neighbor_update
|
|
|
|
->
|
|
{
|
|
neighbors: [ region_info, ... ]
|
|
}
|
|
|
|
%%child_agent_update
|
|
|
|
->
|
|
{
|
|
agent_id: uuid,
|
|
session_id: uuid,
|
|
position: [ real, real, real ],
|
|
velocity: [ real, real, real ],
|
|
region_handle: binary,
|
|
cam_position: [ real, real, real ],
|
|
cam_at_axis: [ real, real, real ],
|
|
cam_left_axis: [ real, real, real ],
|
|
cam_up_axis: [ real, real, real ]
|
|
}
|
|
|
|
%%pass_object
|
|
|
|
->
|
|
{
|
|
id: uuid
|
|
}
|
|
|
|
<-
|
|
{
|
|
success: boolean,
|
|
message: string
|
|
}
|
|
|
|
%%fetch_terrain
|
|
|
|
->
|
|
{
|
|
blocks:
|
|
[
|
|
{
|
|
x: integer,
|
|
y: integer
|
|
}
|
|
]
|
|
}
|
|
|
|
<-
|
|
{
|
|
blocks:
|
|
[
|
|
{
|
|
x: integer,
|
|
y: integer,
|
|
data: binary
|
|
}
|
|
]
|
|
}
|