// <summary> // Retrieves the LLPackedAppearance field from user data and unpacks // it into an AvatarAppearance structure // </summary> // <param name="userID"></param> public AvatarAppearance GetAppearance(UUID userID) { NameValueCollection requestArgs = new NameValueCollection { { "RequestMethod", "GetUser" }, { "UserID", userID.ToString() } }; OSDMap response = WebUtil.PostToService(m_serverUrl, requestArgs); if (response["Success"].AsBoolean()) { OSDMap map = null; try { map = OSDParser.DeserializeJson(response["LLPackedAppearance"].AsString()) as OSDMap; } catch { } if (map != null) { AvatarAppearance appearance = new AvatarAppearance(map); // DEBUG ON m_log.WarnFormat("[SIMIAN AVATAR CONNECTOR] retrieved appearance for {0}:\n{1}",userID,appearance.ToString()); // DEBUG OFF return appearance; } m_log.WarnFormat("[SIMIAN AVATAR CONNECTOR]: Failed to decode appearance for {0}",userID); return null; } m_log.WarnFormat("[SIMIAN AVATAR CONNECTOR]: Failed to get appearance for {0}: {1}", userID,response["Message"].AsString()); return null; }