Como detecto quando um usuário está sentado na cadeira em frente a um computador? [fechadas]

15

Estou interessado em detectar quando um usuário está realmente sentado em uma cadeira na frente de um computador. A presença do usuário afeta muitas decisões de agendamento e notificação de usuário que precisam ser tomadas e, como tal, os dados obtidos sobre o usuário precisariam ser lidos por um mecanismo de script.

O que estou procurando:

  • Melhor acidentalmente presumir que o usuário está em sua cadeira quando ele não está. Se o método de detecção não for preciso, ele deve errar do lado do usuário que está na cadeira quando não estiver.
  • Identificando se a pessoa sentada na cadeira em frente ao computador é de fato o usuário que está conectado. Isso precisa acontecer sem que o usuário seja autenticado / identificado explicitamente. Como tal, não será utilizado para funcionalidades relacionadas com segurança ou privacidade, uma vez que poderá falhar, por vezes.
  • Um método de transmitir quais cadeiras estão sendo ocupadas (e por quem) para outros membros de uma intranet. Uma maneira de gerenciar inventário, amarrando cadeiras a computadores seria ideal.
  • Suporte para Mac, Linux e Windows para a solução:)

Alguns métodos possíveis que PODEM existir no mundo (mas, na prática, não são fáceis de configurar e configurar):

  1. Monitora entradas com curto período de tempo limite. Quando o tempo limite for atingido, transmita a mensagem da cadeira vazia.
  2. Adicione um teste de peso sentado à cadeira que transmite o resultado para a estação de trabalho. Se o peso estiver dentro de uma faixa de 5 lb do peso conhecido do usuário, presume-se que o usuário correto esteja sentado na frente da máquina.
  3. Adicionar suporte a câmera de movimento. Fotografe um cenário de estação de trabalho vazio e compare a captura de imagem atual com a do vazio, testando o delta com um limite conhecido.

Atualização: Isso não é para rastreamento do empregador / funcionário. É permitir que um usuário faça parte da interface do usuário da sua estação de trabalho com ele em seus smartphones ou dispositivos portáteis quando eles deixam suas mesas. Determinar onde o usuário está em um determinado momento permite que as atualizações sejam enviadas para o dispositivo adequado. Considere isso como uma otimização da relação sinal-ruído das notificações. O objetivo é evitar o envio das notificações para desktops não-tripulados / o usuário errado.

    
por user4881 11.08.2009 / 21:11

9 respostas

11

No Windows, há uma chamada de API que retorna dados simples sobre a atividade do teclado / mouse. Isso é o que os aplicativos de mensagens instantâneas usam para detectar automaticamente quando o usuário está ausente ou ocioso. Isso seria suficiente para as suas necessidades? Não há dúvida de que um equivalente para outros sistemas operacionais também.

É claro que esse método não pode dizer a diferença entre o usuário estar realmente fora da mesa e estar na mesa, mas não usando o teclado / mouse (lendo a documentação, talvez, assistindo a uma apresentação automatizada ou discutindo assuntos, etc. .).

    
por 11.08.2009 / 21:35
8

Esta parte aqui:

Identifying whether the person sitting in the chair in front of the computer is indeed the user that is logged in. This needs to happen without the user explicitly authenticating/identifying. As such, it will not be used for security or privacy related features as it may fail at times.

Diz que você está procurando por reconhecimento facial e software biométrico. Não é provável que seja algo barato, ou algo que você vai encontrar em uma prateleira (pelo menos eu nunca ouvi falar disso). A Cisco fez isso para algumas de suas configurações de sala de conferência high-end, mas além disso eu não vi isso. Você provavelmente estaria melhor com a solução de pessoal do que com uma solução tecnológica.

    
por 11.08.2009 / 22:51
7

Que tal "exigir" que seus "funcionários" usem braceletes RFID e instalem leitores em cada estação de trabalho que relata que tag (s) RFID estão presentes no local a cada 10 segundos ou mais?

// Não consigo pensar em maneiras pelas quais esse plano possa dar errado.

    
por 11.08.2009 / 21:35
6

Obriga que os telefones da empresa sempre tenham o Bluetooth ativado. Emparelhar telefone e PC, detectar quando o telefone não está mais no alcance?

Fazendo eco, não vejo nenhum bom motivo para qualquer um dos meus empregadores ter feito algo assim.

Uma alternativa menos tecnológica é um "interruptor do homem morto", usado pelos motoristas de trens e similares (se a mão do motorista não estiver segurando a alavanca no lugar, então os freios se engatam automaticamente). Possivelmente usando peso na cadeira, pressão no mouse ou algo similar.

    
por 11.08.2009 / 21:46
4
O

Bananascreen usa o reconhecimento facial para bloquear / desbloquear a tela. Quando a tela estiver bloqueada, você pode assumir que o usuário não está usando o computador; -).

    
por 12.08.2009 / 00:11
2

Um script para enviar uma mensagem de "usuário ausente" para o servidor em um tempo limite de inatividade parece, de longe, o mais fácil. Acoplar isso com um protetor de tela que requer autenticação também o tornaria efetivo na verificação de que o usuário é o usuário correto.

Dito isto, se você vai tentar usar este sistema para o que todos nós estamos supondo que você está usando, você tem problemas muito maiores do que isso vai resolver.

    
por 11.08.2009 / 21:52
1

Qualquer plataforma de Instant Messaging e Presence fornecerá informações de presença e notificação em forma de script. Para o Windows, há o Office Live Communications Server e o Office Communicator.

Para que funcione em todas as plataformas, você precisa de alguma mágica. Há sempre o Jabber e outras soluções de conferência como essa plataforma Cisco - mas o que você mais precisa é algo que é completamente integrado ao sistema operacional cliente e autenticação do usuário, bloquear / desbloquear também, o que é um pouco mais trabalhoso ... pelo menos se você quer que seja confiável e obrigatório (fácil com o Communicator for Windows).

A parte que não funciona é a exigência de "identificar um usuário sem que ele se autentique" ... ^^

Se o usuário sair da estação de trabalho, ele deverá bloqueá-lo ou desconectá-lo, dependendo de seus planos. Se eles fizerem login ou desbloquearem outra estação de trabalho, você saberá apenas observando seus registros de autenticação central. Se eles são preguiçosos, dê-lhes cartões inteligentes, dongles sem fio ou algum outro método de autenticação de substituição de senha. Ajuste tempos limite para estações de trabalho bloqueadas (e desbloqueadas) para que sejam automaticamente bloqueadas e, em seguida, desconectadas se o usuário esquecer. Os dongles sem fio serão bloqueados quando fora do alcance. Os cartões inteligentes (se configurados para) bloqueiam ou efetuam logout quando são puxados. A maioria dos técnicos de substituição de senhas prefere pelo menos um código PIN para (re-) autenticar.

Parece fácil de conseguir, juntamente com algumas políticas de usuário simples. Qualquer que seja o dispositivo móvel, eles precisam autenticar neles, é claro.

    
por 11.08.2009 / 23:57
0

Você pode implementar a prática de bloqueá-los quando eles saírem dele. então você definitivamente saberia que eles não estão em sua mesa.

    
por 12.08.2009 / 00:45
0

Supondo que todos tenham um celular e eles tenham o Bluetooth habilitado, você pode instalar o software para realizar ações quando os telefones entrarem e saírem do alcance. (~ 30 pés)

    
por 12.08.2009 / 06:31