void VSCSearch::SearchReceiveData(const QHash<QString, QString> &data) { astring ip = "192.168.0.1"; astring port = "80"; astring hdModel = "unknown"; astring OnvifAddr = "/onvif/device_service"; astring Manufacturer = ""; astring FirmwareVersion = ""; astring type = data["types"].toStdString(); transform( type.begin(), type.end(),type.begin(),(int(*)(int))tolower); size_t pos1 = type.find("networkvideotransmitter"); VDC_DEBUG( "[ONVIF]: Searched ip %s\n", data["device_service_address"].toStdString().c_str()); if (pos1 == string::npos) { return; } GetIPAndPort(data["device_service_address"].toStdString(), ip, port, OnvifAddr); GetHardwareModel(data["device_ip"].toStdString(), hdModel); astring OnvifDeviceService = "http://" + ip + ":" + port + OnvifAddr; #if 0 DeviceManagement *pDm = new DeviceManagement(OnvifDeviceService.c_str(), "admin", "12345"); if (pDm) { QHash<QString, QString> deviceInfo = pDm->getDeviceInformation(); Manufacturer = deviceInfo["mf"].toStdString(); FirmwareVersion = deviceInfo["firmware_version"].toStdString(); } #endif AddItem(ip, port, Manufacturer, hdModel, FirmwareVersion, OnvifAddr); m_nSearchProcess += 2; if (m_nSearchProcess == 100) { m_nSearchProcess = 0; } ui.progressBar->setValue(m_nSearchProcess); }