Desenvolvimento - ASP. NET

Criando sites em ASP.NET para o Second Life

Aprenda neste artigo como criar páginas em ASP.NET específicas para a nova guia Web da janela de Perfil incluída no cliente do Second Life.

por Cláudio Ralha



Desde a versão 1.13.0, o cliente do Second Life passou a suportar um interessante recurso para quem desenvolve sites: a capacidade de visualizar o conteúdo de páginas web a partir de uma janela específica existente no próprio visualizador. Trata-se da janela Profile, que agora dispõe de uma nova guia chamada Web para a qual o usuário pode configurar uma página a ser exibida quando outros usuários visualizarem o seu perfil.

Perceba que ainda não se trata de um suporte total a páginas web, mas já é um bom começo. Através dessa URL pré-definida, podemos disponibilizar informações como, por exemplo, dos posts dos nossos blogs, de artigos ou de vendas de produtos diretamente no seu perfil.

A janela de visualização apresenta as dimensões de 400 x 400 pixels no cliente do Windows e não pode ser redimensionada (pedimos que o pessoal do Linux e do Mac postem comentários informando se esta informação também é válida para os demais sistemas). Isto significa que para evitarmos a indesejável scroll bar horizontal, devemos criar páginas adequadas a largura de 400 pixels que deverão ser exibidas sempre que o user agent (leia-se navegador) em questão for o cliente do Second Life. Para tanto, basta inspecionar a string de identificação do user agent em uso. Compare os resultados obtidos para o Internet Explorer e para o cliente do Second Life:

IE 7

LifeMozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.0.04324.17; .NET CLR 3.0.04506.590; .NET CLR 3.5.20706)

Cliente do Second Life

Mozilla/5.0 (Windows; U; Windows NT 5.1; chrome://navigator/locale/navigator.properties; rv:1.8.0.12) Gecko/20070605 [Second Life (Second Life Release) - 1.18.2.1]

Vale ressaltar que a string de identificação do cliente do SL irá mudar de acordo com o sistema operacional, mas sempre encontraremos a palavra Second Life presente.
Criando uma aplicação de teste

Para ilustrar como identificar se o cliente que está requisitando a página é o visualizador do Second Life ou um outro navegador, vamos criar uma pequena aplicação de testes chamada WebSiteSL. Perceba na imagem a seguir que usamos o Visual Studio 2008 para criar o projeto, mas nada impede que você utilize a versão 2005 para este teste.

Após o Visual Studio criar o conjunto de arquivos inicial, tecle F7 para entrar com o código do evento Page_Load da página Default.aspx. Inclua o trecho de código a seguir:

protected void Page_Load(object sender, EventArgs e)

{

if (Request.UserAgent.Contains("Second Life"))

{

Response.Write("Página carregada no cliente do Second Life");

}

else

{

Response.Write("Página carregada fora do cliente do Second Life");

}

}

Tecle F5 para que o Visual Studio execute a página e carregue em segundo plano o servidor web que acompanha a ferramenta. Veja a página de teste carregada no IE:

Nota: caso deseje obter a string de identificação inteira do user agent, utilize a linha de código a seguir:

Response.Write(Request.UserAgent);

Nota 2: este mesmo teste pode ser feito em javascript usando o código a seguir:

if(navigator.userAgent.indexOf("Second Life")!=-1)
{
// Navegador é o cliente do second life
}

Como você já deve saber, o servidor interno que acompanha o VS 2005 e o VS 2008 por padrão sorteia portas aleatórias para escutar. No caso do teste que fizemos, a porta em uso foi a 1906:

http://localhost:1906/Default.aspx

Copie a URL da barra de endereço do navegador para facilitar o seu trabalho. Em seguida, abra o cliente do Second Life e clique com o botão direito do mouse sobre o seu avatar e selecione no menu de contexto a opção Perfil.

A caixa de diálogos Perfil será exibida. Clique na guia Web e entre com a URL copiada do bowser web no campo de endereço. A seguir tecle Enter para carregar a página. Confira na figura a seguir:

Viu como é simples criar páginas com conteúdo específico para o Second Life? Esperamos que este pequeno artigo ajude aos empreendedores em atividade no Second Life a bolarem novas formas de ganhar dinheiro explorando esta nova opção. E tudo indica que em breve teremos suporte total a Web por dentro do Second Life...Vá se preparando!

Abraços e até a próxima!

Cláudio Ralha
Cláudio Ralha

Cláudio Ralha - http://linhadecodigo.com.br/cs2/blogs/ClaudioRalha/default.aspx
Autor dos livros Dominando o Second Life e Segredos do Visual Studio.NET, profissional certificado Microsoft (MCP,MCAD,MCTS e MCPD) e palestrante Microsoft Brasil e Culminis. Já atuou como colunista do Informática etc do Jornal O GLOBO, editor da Revista Infomania e colaborador de várias revistas e sites. No mercado corporativo já desenvolveu para grandes clientes como Petrobras, Shell, Esso, Rede Globo, Furnas, Brascan, ONS, Unibanco e Bolsa de Valores pelas consultorias Accenture, Stefanini, Arcon, ATT/PS, Informaker, Relacional, Value Team e Softtek.