Array
(
)

Exbir Se O Usuário Logado Esta Online.

Ivan.c#
   - 02 abr 2008

Boa tarde galera.
Estou precisando de ajuda pra exibir os usuários que estão online no sistema.
Tente usando o Membership.GetUser(nomeusuario).IsOnline, mas o uso deste método, após um certo tempo que o usuário esteja navegando pelo site, exibe ele como se ele estivesse off, mas ele esta online, testei isso em meu IIS com duas máquinas.
Acessei de uma usando uma conta e em outra usando outra conta, ao acessar os dois ficaram online certinho, mas passando uns 10 minutos os dois continuavam navegando no site, mas o status dos dois já estavam off.
Ai resolvi fazer de outra forma. Criei uma tabela e adiciono o ID do usuário e True quando ele se loga, e ao deslogar atualizo para False.
Funciona 100¬ se o usuário clicar no botão de logoff, mas se ele fechar o navegador ele não atualiza a tabela, tentei colocar no Global.asax nos eventos Application_End e Session_End.
Mas ele só chama esses método após o tempo de session expirar. E isso faz com que o usuário fique online por um bom tempo.

Ivan.c#
   - 02 abr 2008

Consegui galera usando ajax.

No evento unload da master eu chamo uma Função JS que chama uma pagina faz o logof..

vlw