tkbd

Tela Software:
tkbd
Detalhes de Software:
Versão: 0.3.5
Data de upload: 14 Apr 15
Revelador: Bas Westerbaan
Licença: Livre
Popularidade: 8

Rating: nan/5 (Total Votes: 0)

tkbd é uma corrida daemon na Faculdade de Ciências da Radboud University Nijmegen para registrar que computador do laboratório da PC são livres e que são tomadas.
tkb.js é um frontend.
Como funciona
As informações armazenadas
tkbd mantém três bits de informação. Veja state.py.
1. ocupação: para cada PC seu estado atual, que pode ser:
& Nbsp; o do PC é turend off
& Nbsp; x o PC está em um estado desconhecido
& Nbsp; wf o PC é gratuito e inicializado no Windows
& Nbsp; Se a PC é gratuito e inicializado no Linux
& Nbsp; wu o PC é usado e inicializado no Windows
& Nbsp; lu o PC é usado e inicializado no Linux
& Nbsp; wx o PC é inicializado no Windows, mas não sabemos se ele é usado
& Nbsp; lx o PC é inicializado em Linux, mas não sabemos se ele é usado
2. roomMap: a lista de quartos e o PC está nele.
3. programação: para cada sala, os possíveis reservas do mesmo.
Fonte de informação
Quando as pessoas entrar e sair de computadores, este é registrado. Um script observa o log e empurra alterações tkbd via solicitações HTTP na porta 1235. Veja cnczPush.py.
Em segundo lugar, outro script periodicamente pesquisas de todos os PCs. Os resultados dessa varredura também são empurrados para a porta 1235.
O calendário é puxado (Ruuster) [http://ruuster.nl]. Veja ruuster.py.
Como acessá-lo
Joyce
tkbd utiliza uma mensagem JSON bidirecional troca de protocolo sobre HTTP chamado Joyce. Um cliente pode criar muitos canais com o servidor. Em cada um destes canais, o servidor eo cliente pode enviar mensagens para o outro.
- Para criar um canal, envie uma solicitação HTTP GET para o servidor for / m = null?. O servidor wil responder com uma série de token [<>, <>, ]. token contém o token atribuído a este canal. mensagens é uma lista de mensagens que o servidor tiver enviar. riachos não é importante para tkbd.
- Depois disso, você deve enviar um outro pedido HTTP GET para o servidor. Desta vez para a /? M = []. Desta vez, o servidor pode não responder imediatamente. Quando há uma mensagem (ou após um tempo limite), o servidor responderá com uma matriz semelhante [, <>, ].
- Para enviar uma lista de mensagens de mensagens, enviar uma solicitação HTTP GET para o servidor para / m = [, ]?. Agora, existem dois pedidos HTTP pendentes. A um para enviar estas mensagens e outro para receber. Um destes dois serão respondidas imediatamente. O outro vai ficar aberto para receber mensagens.
Então, o que faz mensagens tkbd enviar e tkbd gosta de receber?
As mensagens enviadas por tkbd
Cada mensagens enviadas por tkbd é um dos seguintes. Veja cometApi.py.
1. {"type": "bem-vindo", "protocolos": [0]}
& Nbsp; Esta é a primeira mensagem enviada. Ele diz que os protocolos tkbd entende. Actualmente, há apenas protocolo: 0.
2. {"type": "ocupação", "versão": , "ocupação": }
& Nbsp; Esta é uma das primeiras mensagens enviadas. Ele contém a ocupação atual do PC. ocupação é um dicionário com chaves como nomes de computadores e como valoriza o estado do correspondente do PC.
3. {"type": "roomMap", "versão": , "roomMap": }
& Nbsp; Esta é uma das primeiras mensagens enviadas. roomMap é um dicionário com nomes como chaves de quartos e como valoriza a lista correspondente de PCs no quarto.
4. {"type": "schedule", "versão": , "schedule": }
& Nbsp; Esta é uma das primeiras mensagens enviadas. programação é um dicionário com nomes como chaves de quartos e como valoriza o cronograma correspondente da sala. A programação de um quarto é uma lista de eventos. Um evento é uma lista com três elementos: o primeiro elemento é o tempo de partida; a segunda é a hora de fim e o terceiro é um decription do evento.
5. {"type": "occupation_update", "versão": , "update": }
& Nbsp; Esta mensagem é enviada, quando a ocupação de um ou mais PCs alterações. atualização é um dicionário com nomes como chaves de PC e como valoriza o novo estado do PC correspondente.
Em cada atualização da ocupação, roomMap ou cronograma, a versão correspondente é incrementado por um. Um cliente deve verificar se ele perdeu uma atualização. E se assim for, sincronizar novamente usando um dos seguintes.
As mensagens recebidas por tkbd
1. {"type": "get_occupation"}
& Nbsp; Quando recebido, o servidor irá enviar em troca uma mensagem de ocupação.
2. {"type": "get_roomMap"}
& Nbsp; Quando recebido, o servidor irá enviar uma mensagem em troca roomMap.
Como instalá-lo
A maneira mais simples de instalar tkbd é correr
& Nbsp; easy_install tkbd
easy_install é uma parte do setuptools do Python. (Em Debian, tente apt-get install python-setuptools).
Como executá-lo
Para executar, basta executar:
& Nbsp; Mirte tkbd / configurações / default
Isto irá executar a instalação padrão do tkbd. Para alterações na ocupação que vai escutar na porta 1235. Isto não é útil se você não são os caras de TI da faculdade.
Você pode configurar tkbd espelhar outra instância tkbd. Para espelhar o tk.science.ru.nl padrão, basta executar:
& Nbsp; Mirte tkbd / configurações / slave
Para criar uma configuração personalizada, copiar e editar um dos arquivos .mirte em src / setups

O que é novo nesta versão:.

  • Suporte para espelhamento
  • corrigir alguns bugs

Requisitos :

  • Python

Outro software de desenvolvedor Bas Westerbaan

pachy
pachy

20 Feb 15

ftldat
ftldat

20 Feb 15

Comentário para tkbd

Comentários não encontrado
Adicionar comentário
Ligue imagens!