Hi, everyone,<br>I am planing to implement "AssetPortability" in OpenSim,<br>The basic idea is to let RegionServer get assets from a<br>dynamic(user specified) AssetServerURL.<br><br>Very thankful for someone added "asseturl" and "inventoryurl"
<br>to the userprofile structure and the "Users" table.
<br>(though I do not know exactly what it was he did)
<br><br>Recently, I found there is a stub "GetUserAppearance" in "IUserService".
<br>This is a little different from what I am thinking, so here I would like to
<br>share my plan for the "appearance portability" and have a discussion
<br>with you.
<br>
<br># Preparation
<br>1. User stores "wearables" in "inventoryserver"
<br>2. User stores actual "assetdata" in "assetserver"
<br>3. User tells its "asset/inventory url" to "userserver"<br>(by user registration or someway like openid<span class="Object" id="OBJ_PREFIX_DWT443"></span>)
<br><br># Login<br>At
<span class="Object" id="OBJ_PREFIX_DWT444"><a target="_blank" href="http://openugai.sourceforge.net/?page=openasset_proposal">http://openugai.sourceforge.net/?page=openasset_proposal</a></span><br>there are 2 possible patterns,
<br>"Implemetation 1" is following current opensim - "GetUserAppearance" in
"UserServive".<br>"Implemetation 2" is my proposal.<br><br>* Implemetation 1<br>1. "UserServer" acts as a agent, when "GetUserAppearance" called,
<br>2. "UserServer" gets
"wearables" from "inventoryserver"<br>3. "UserServer" gets "assetdata" foreach
"wearables" UUID.<br>4. "UserServer" returns appearance to RegionServer(OGS1UserServices)
<br>
<br>* Implemetation 2<br>
"GetUserAppearance" is not in "UserServer", it should be a module or
something
<br>independent. There is
<br>* "OGS1InventoryServices" incharge of communicating with "InventoryServer".
<br>* "AssetCache" gets "assetdata" from "AssetServer".
<br>I think we can use the 2 existing components to
"GetUserAppearance".<br><br>Why I prefer "Implementation 2" ?<br>1. Just as UserServer does not provide "Inventory" information, UesrServer also should NOT<br>provide appearance information.<br>
(UserServer should be concentrated on providing basic user information and the authentication.)<br>2. If UserServer have to fetch Complete "Appearance", UserServer must know about AssetServerUrl,<br>
and something like "AssetCache" must be implemented inside UserServer. This makes UserServer<br>become less indenpendent.<br>
3. "Appearance" can be thought as "a special inventory folder called 'wearables' ".<br>(InventoryServer is born to do such things)<br><br>Look forward to hearing your concerns and opinions.
<br>
<br>Cheers,
<br>lulurun
<br clear="all"><br>-- <br>Liu Xiaolu