Diferència entre revisions de la pàgina «Xat amb ZEO»
		
		
		
		
		
		
		Salta a la navegació
		Salta a la cerca
		
				
		
		
		
		
		
		
		
	
|  (Es crea la pàgina amb «Cal elaborar un programa de xat utilitzant el servidor ZODB per xarxa, és a dir, el ZEO:  Consultar: * ZODB   == Especificacions de l'exercici == Especificacions: * …».) | |||
| Línia 17: | Línia 17: | ||
| Recomanacions: | Recomanacions: | ||
| * Inicialment podem fer el programa per consola. Demanem el nick i llistem tots els missatges existents cada cop que aportem alguna cosa. | * Inicialment podem fer el programa per consola. Demanem el nick i llistem tots els missatges existents cada cop que aportem alguna cosa. | ||
| + | * Modifiquem l'aplicació per tal que només ens mostri els darrers missatges enviats des del darrer cop (utilitzant el ''timestamp'' o "temps"). | ||
| + | * Afegir un ''timer'' per tal que actualitzi la llista de missatges per pantalla si hi ha alguna aportació nova. | ||
| * Fer una petita aplicació amb PyQt i Qt-Designer que faciliti la visualització de la conversa. | * Fer una petita aplicació amb PyQt i Qt-Designer que faciliti la visualització de la conversa. | ||
| + | * També ho podeu resoldre amb Pyramid i un servei web. | ||
| + | |||
| + | <br> | ||
| == Classe Missatge == | == Classe Missatge == | ||
Revisió del 16:45, 24 abr 2013
Cal elaborar un programa de xat utilitzant el servidor ZODB per xarxa, és a dir, el ZEO:
Consultar:
Especificacions de l'exercici
Especificacions:
- Connectar-se al servidor ZEO de la màquina del professor (us indicarà les dades, host i port, a classe).
- Accediu a l'element arrel (root) = diccionari.
- Podeu llistar les keys del diccionari. Cadascuna serà un canal de xat.
- Cada canal de xat serà una llista de Missatges (veure especificació de la classe més avall).
- Per defecte podeu utilitzar el canal "test". Després ho sofisticarem una mica més.
- Cal que cada usuari que es connecta tingui un "nick" i que el demani al connectar.
Recomanacions:
- Inicialment podem fer el programa per consola. Demanem el nick i llistem tots els missatges existents cada cop que aportem alguna cosa.
- Modifiquem l'aplicació per tal que només ens mostri els darrers missatges enviats des del darrer cop (utilitzant el timestamp o "temps").
- Afegir un timer per tal que actualitzi la llista de missatges per pantalla si hi ha alguna aportació nova.
- Fer una petita aplicació amb PyQt i Qt-Designer que faciliti la visualització de la conversa.
- També ho podeu resoldre amb Pyramid i un servei web.
Classe Missatge
Per tal que l'aplicació sigui compatible convé que tots tinguem la mateixa classe Missatge.
# -*- coding: utf-8 -*-
import datetime
class Missatge(object):
    temps = 0
    nick = ""
    text = ""
    
    def __init__(self,nick,miss):
        self.temps = datetime.datetime.now()
        self.nick = nick
        self.text = miss

