Classe générale pour les websockets #508
			No reviewers
			
				
				
			
		
		
		
	
	
	
		Labels
		
	
	
	
	No labels
	
		
			
	
	devtype -- backend
		
			devtype -- docs
		
			devtype -- frontend
		
			devtype -- user interface
		
			difficulty -- easy
		
			difficulty -- hard
		
			difficulty -- normal
		
			Doing
		
			domain -- bda
		
			domain -- bds
		
			domain -- cof
		
			domain -- core
		
			domain -- kfet
		
			Good first issue
		
			priority -- high
		
			priority -- low
		
			priority -- medium
		
			priority -- staff-wanted
		
			status -- development
		
			status -- discussion
		
			status -- need review
		
			status -- production
		
			status -- ready to merge
		
			status -- todo
		
			To Do
		
			type -- bug
		
			type -- hygiene
		
			type -- improvement
		
			type -- new feature
		
		
			bug
		
			duplicate
		
			enhancement
		
			help wanted
		
			invalid
		
			question
		
			wontfix
		
	
		No milestone
		
			
		
	
	No project
	
		
	
	
	
	
		No assignees
		
	
	
		
			
		
	
	
	
		1 participant
	
	
		
		
	Notifications
	
		
	
	
	
		
	
	
	Due date
No due date set.
	
		Dependencies
		
		
	
	
	No dependencies set.
		Reference: DGNum/gestioCOF#508
		
	
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	
	No description provided.
		
		Delete branch "Aufinal/websockets"
	
	Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Rajoute une classe
Websocketpour gérer la création de ws génériques.Crée une instance
OperationWebSocketpour remplacer celui dekpsul.html.Tu peux créer une "méthode"
get urlqui donne l'url absolue avec cette "logique"added 1 commit
413df080- Add url get methodCompare with previous version
Je pense que c'est pas mal d'ajouter à l'objet (
this) le ws pour pouvoir être utilisé/modifié/whatever ultérieurement, si jamais...added 1 commit
8bf1bd53- Websocket as memberCompare with previous version
L'interface de base s'appelant
WebSocket, ça serait bien de lui trouver un autre nom moins procheadded 1 commit
38bfccf3- Change class nameCompare with previous version
Cette implém fait que plusieurs connexions sont nécessaires pour une seule url, puisque pour chaque callback il faut un nouvel objet Websocket.
Est-ce que ça serait pas mieux d'avoir un constructeur qui prend l'URL relative en argument qui l'ajoute à l'objet et qui initialise un tableau de callbacks qui seront appelé lors d'un event
onmessage. Il faut aussi une méthodeadd_handlerpour ajouter un callback. Une méthode qui ouvre le WS (pour ne pas l'ouvrir dans le constructeur et donc pré-déclarer des WS pour les URLs canoniques (comme k-psul)) et qui placeonmessagecomme appelant les callbacks dethis.handlers. Cette méthode est appelée pour créer et connecter le ws si ce n'est pas encore fait lors de l'appel àadd_handler(histoire de pas avoir à le faire "manuellement").Du coup, tu verrais
add_handlercomme un simple ajout au tableauthis.handlersou comme un ajout direct au socket ?Sinon, j'avais aussi pensé à un dictionnaire de handlers avec chacun sa spécifité, et de mettre dans le
onmessage(par ex)this.handlers['toto'](data['toto'])pour chaque type de data.Y'a qqch pour ajouter des handlers au ws ? Je connais que
onmessagequi a l'air d'être une fonction appelée sur réception d'un message et c'est tout. Donc si tu veux enregistrer plusieurs handlers, faut le faire de notre côté (avecthis.handlerspar exemple).Pour ce que tu proposes, pourquoi pas ouais mais je pense pas qu'on gagne beaucoup à l'utilisation, par contre cette classe sera plus longue (faut prévoir les callbacks "typés" mais aussi généraux). Cela dit, ça permettrait d'enlever
default_msg.added 1 commit
ab15dbae- Add handler managementCompare with previous version
resolved all discussions
merged
mentioned in commit
fafa7e536e