Пример #1
0
    def GetDeviceDetails(self, byData: bytes,
                         tSenderAddr: Tuple) -> TypedQueryDict:
        dRet: TypedQueryDict = TypedQueryDict()
        dRet.bFound = False
        dRet.uFoundIP = u""
        dRet.uFoundPort = u""
        dRet.uFoundModel = u""
        dRet.uFoundIdentifier = u""
        dRet.uFoundCategory = u""
        dRet.uData = u""

        uResponse = ToUnicode(byData)[16:]

        if uResponse.find('ECN') != -1:
            info = re.match(self.rMatch, uResponse.strip(),
                            re.VERBOSE).groupdict()
            uResponse = uResponse[10:]
            dRet.uFoundIP = tSenderAddr[0]
            dRet.uFoundPort = ToUnicode(info['iscp_port'])
            dRet.uFoundModel = info['model_name']
            dRet.uFoundIdentifier = info['identifier']
            dRet.uFoundCategory = ToUnicode(info['device_category'])
            dRet.uData = uResponse
            dRet.bFound = True
        return dRet
Пример #2
0
    def GetDeviceDetails(self, sData, tSenderAddr):
        oRet = QueryDict()
        oRet.bFound = False
        oRet.sFoundIP = ""
        oRet.uFoundPort = ""
        oRet.uFoundModel = ""
        oRet.uFoundIdentifier = ""
        oRet.uFoundCategory = ""
        oRet.sData = ""

        if PY2:
            uResponse = sData[16:]
        else:
            uResponse = ToUnicode(sData)[16:]

        if uResponse.find('ECN') != -1:
            info = re.match(self.rMatch, uResponse.strip(),
                            re.VERBOSE).groupdict()
            uResponse = uResponse[10:]
            oRet.sFoundIP = tSenderAddr[0]
            oRet.uFoundPort = ToUnicode(info['iscp_port'])
            oRet.uFoundModel = info['model_name']
            oRet.uFoundIdentifier = info['identifier']
            oRet.uFoundCategory = ToUnicode(info['device_category'])
            oRet.sData = uResponse
            oRet.bFound = True
        return oRet