Example #1
0
 def addNewSpecialPeer(self,ip_key,usr_value):
     if(ip_key in self.ipHabilitadas):
         if(self.diccionario_usuarios_especiales.get(ip_key)==None):
             self.diccionario_usuarios_especiales.update({ip_key:usr_value})
             return respuesta.GenerarRespuestaJson("LOGUEO-EXITOSO")
         else:
             return respuesta.GenerarRespuestaJson("LOGUEO-EXISTENTE")
     else:
         return respuesta.GenerarRespuestaJson("PERMISO-DENEGADO")
Example #2
0
 def connectionMade(self):
     log.msg('Se establecio una conexion con:{}'.format(
         self.transport.getPeer()))
     #ip = self.transport.getPeer().host
     res = respuesta.GenerarRespuestaJson("CONEXION-ESTABLECIDA")
     self.transport.write(res.encode())
     self.transport.setTcpKeepAlive(1)
Example #3
0
 def ActualizacionConectados(self):
     g = peers.ActivePeers()
     lista_sockets = g.getListaDeSocketClientes()
     dic_conectados = g.getListaNombreIpSinFormato()
     toSend = respuesta.GenerarRespuestaJson("LISTA-CONECTADOS",
                                             dic_conectados)
     for s in lista_sockets:
         if (s != self):
             s.transport.write(toSend.encode())
Example #4
0
    def dataReceived(self, data):
        guardar = peers.ActivePeers()
        res = procesadorMensajes.procesarMensaje(data, self)

        if ("LOGUEO-EXITOSO" in res):
            lista = guardar.getListaNombreIpSinFormato()
            res = respuesta.GenerarRespuestaJson("LOGUEO-EXITOSO", lista)
            self.ActualizacionConectados()
        self.transport.write(res.encode())
Example #5
0
def procesarMensaje(mensaje, isock):
    #primero se trata de verificar que el mensaje sea un json
    #y que contenga tanto nombre como formato para poder identificarlo
    try:
        mensaje_json = json.loads(mensaje)
        #nombre = mensaje_json["NOMBRE"]
        comando = mensaje_json['COMANDO']
    except:  #aca va ael controlador de excepciones, si el mensaje no respeta el formato una respuesta es enviada al cliente indicando el formato del mensaje que se espera recibir
        return respuesta.GenerarRespuestaJson(
            "ERROR",
            "error el en formato del mensaje, verifique su correctitud")
    if (comando == "LOGIN"):
        return procesarLogueo(mensaje_json, isock)
    if (comando == "LOGIN-ESPECIAL"):
        return procesarLogueoEspecial(mensaje_json, isock)
    if (comando == "FIN-SESION"):
        return procesarFinSesion(isock)
    if (comando == "LISTA-CONECTADOS"):
        return procesarListaConectados()
Example #6
0
 def getListaNombreIp(self):
     res=dict()
     for v in self.diccionario_de_usuarios.values():
         res.update({v.getNombre():v.getIp()})
     return respuesta.GenerarRespuestaJson("NUEVO-LISTADO",res)
Example #7
0
 def removePeer(self,ip):
     if(self.diccionario_de_usuarios.get(ip)!=None):
         self.diccionario_de_usuarios.pop(ip)
         return respuesta.GenerarRespuestaJson("USUARIO-DESLOGUEADO")
     else:
         return respuesta.GenerarRespuestaJson("USUARIO-INEXISTENTE")
Example #8
0
 def addNewPeer(self,name_key,usr_value):
     if(self.diccionario_de_usuarios.get(name_key)==None):
         self.diccionario_de_usuarios.update({name_key:usr_value})
         return respuesta.GenerarRespuestaJson("LOGUEO-EXITOSO")
     else:
         return respuesta.GenerarRespuestaJson("LOGUEO-EXISTENTE")