def ListaDeUsuarios(self): m = self.stub.ListaDeUsuarios(Chat_pb2.Id(id=self.id)) print( "\n================================ LISTA DE USUARIOS ==================================== " ) for i in m.user: print(f'-> {i.nombre}#{i.id}') print("")
def Connection(self, request, context): print(f'Responde el thread{threading.get_ident()}') new_id = self.user_id self.nombre[ new_id] = request.nombre # se obtiene el nombre de la persona que hizo la request, supongo que despue slo ssamos ? self.enviados[new_id] = [ ] # se crea llave = id , valor = lista de mensajes enviados self.recibidos[new_id] = [] #se crea lista para mensaje recibidos self.user_id += 1 return Chat_pb2.Id(id=new_id)
def ReciveMessage(self): try: for mensaje in self.stub.ReciveMessage(Chat_pb2.Id(id=self.id)): emisor = mensaje.emisor print( '\n========================= NUEVO MENSAJE RECIBIDO ===============================' ) print( f'[{emisor.nombre}#{emisor.id}-{mensaje.timestamp}]{mensaje.contenido}' ) print('>> Ingrese accion:') except grpc.RpcError as err: print(err)
def SendMessage(self, contenido, destino): try: response = self.stub.SendMessage( Chat_pb2.Message( emisor=self.my_user, contenido=contenido, timestamp=time.strftime("%c"), receptor=Chat_pb2.User(id=int(destino.split('#')[1]), nombre=destino.split('#')[0]), id=self.stub.New_message(Chat_pb2.Id(id=self.id)).id)) if not response.flag: print( "NO existe el usuario a quien se le quiere enviar el mensaje " ) except grpc.RpcError as err: print(err)
def Messages(self): m = self.stub.Messages(Chat_pb2.Id(id=self.id)) for i in m.msn: print(f'-> {i.contenido}') if len(m.msn) == 0: print('-> NO mensajes enviados')