void printConfiguration(EnrolleeConf conf)
{
cout << "===========================================" << endl;
- DeviceConfig devConfig = conf.getDevConf();
- WiFiConfig wifiConfig = conf.getWiFiConf();
+ cout << "\tDevice Name : " << conf.getDeviceName() << endl;
- cout << "\tDeviceConfig.name : " << devConfig.name << endl;
- cout << "\tDeviceConfig.language : " << devConfig.language << endl;
- cout << "\tDeviceConfig.country : " << devConfig.country << endl;
-
- for(auto mode = wifiConfig.modes.begin(); mode != wifiConfig.modes.end(); ++mode)
+ for(auto it : conf.getWiFiModes())
{
- cout << "\tnetInfo.modes : " << static_cast<int>(*mode) << endl;
+ cout << "\tSupported WiFi modes : " << it << endl;
}
- cout << "\tnetInfo.freq : " << static_cast<int>(wifiConfig.freq) << endl;
+
+ cout << "\tSupported WiFi freq : " << static_cast<int>(conf.getWiFiFreq()) << endl;
+ cout << "\tCloud accessibility: " << conf.isCloudAccessible() << endl;
cout << "===========================================" << endl;
}
+void printStatus(EnrolleeStatus status)
+{
+ cout << "===========================================" << endl;
+ cout << "\tProvStatus : " << status.getProvStatus() << endl;
+ cout << "\tLastErrCode : " << status.getLastErrCode() << endl;
+ cout << "===========================================" << endl;
+}
+
+void provisionSecurityStatusCallback(std::shared_ptr<SecProvisioningStatus> secProvisioningStatus)
+{
+ if(secProvisioningStatus->getESResult() != ES_OK)
+ {
+ cout << "provisionSecurity is failed." << endl;
+ return;
+ }
+ else
+ {
+ cout << "provisionSecurity is success." << endl;
+ cout << "uuid : " << secProvisioningStatus->getDeviceUUID()<< endl;
+ }
+}
+
void provisionSecurity()
{
- // TODO
+ remoteEnrollee->provisionSecurity(provisionSecurityStatusCallback);
}
-void GetConfigurationCallback(std::shared_ptr< GetConfigurationStatus > getConfigurationStatus)
+void getStatusCallback(std::shared_ptr< GetEnrolleeStatus > getEnrolleeStatus)
+{
+ if(getEnrolleeStatus->getESResult() != ES_OK)
+ {
+ cout << "getStatus is failed." << endl;
+ return;
+ }
+ else
+ {
+ cout << "getStatus is success." << endl;
+ printStatus(getEnrolleeStatus->getEnrolleeStatus());
+ }
+}
+
+
+void getStatus()
+{
+ if(!remoteEnrollee)
+ return;
+
+ try
+ {
+ remoteEnrollee->getStatus(getStatusCallback);
+ }
+ catch (OCException &e)
+ {
+ std::cout << "Exception during getConfiguration call" << e.reason();
+ return;
+ }
+}
+
+void getConfigurationCallback(std::shared_ptr< GetConfigurationStatus > getConfigurationStatus)
{
if(getConfigurationStatus->getESResult() != ES_OK)
{
try
{
- remoteEnrollee->getConfiguration(GetConfigurationCallback);
+ remoteEnrollee->getConfiguration(getConfigurationCallback);
}
catch (OCException &e)
{
if(!remoteEnrollee)
return;
- DeviceProp deviceProp;
- deviceProp.WIFI.ssid = "Iotivity_SSID";
- deviceProp.WIFI.pwd = "Iotivity_PWD";
- deviceProp.WIFI.authtype = WPA2_PSK;
- deviceProp.WIFI.enctype = TKIP_AES;
- deviceProp.Device.language = "korean";
- deviceProp.Device.country = "Korea";
+ DeviceProp devProp;
+ devProp.setWiFiProp("Iotivity_SSID", "Iotivity_PWD", WPA2_PSK, TKIP_AES);
+ devProp.setDevConfProp("korean", "Korea");
try
{
- remoteEnrollee->provisionDeviceProperties(deviceProp, deviceProvisioningStatusCallback);
+ //remoteEnrollee->provisionDeviceProperties(deviceProp, deviceProvisioningStatusCallback);
+ remoteEnrollee->provisionDeviceProperties(devProp, deviceProvisioningStatusCallback);
}
catch (OCException &e)
{
return;
CloudProp cloudProp;
- cloudProp.authCode = "authCode";
- cloudProp.authProvider = "authProvider";
- cloudProp.ciServer = "ciServer";
+ cloudProp.setCloudProp("authCode", "authProvider", "ciServer");
+ cloudProp.setCloudID("f002ae8b-c42c-40d3-8b8d-1927c17bd1b3");
try
{
void DisplayMenu()
{
constexpr int PROVISION_SECURITY = 1;
- constexpr int GET_CONFIGURATION = 2;
- constexpr int PROVISION_DEVICE_PROPERTY = 3;
- constexpr int PROVISION_CLOUD_PROPERTY = 4;
+ constexpr int GET_STATUS = 2;
+ constexpr int GET_CONFIGURATION = 3;
+ constexpr int PROVISION_DEVICE_PROPERTY = 4;
+ constexpr int PROVISION_CLOUD_PROPERTY = 5;
std::cout << "========================================================\n";
std::cout << PROVISION_SECURITY << ". Provision Security to Enrollee \n";
+ std::cout << GET_STATUS << ". Get Status from Enrollee \n";
std::cout << GET_CONFIGURATION << ". Get Configuration from Enrollee \n";
std::cout << PROVISION_DEVICE_PROPERTY << ". Provision Device Property\n";
std::cout << PROVISION_CLOUD_PROPERTY << ". Provision Cloud Property \n";
case PROVISION_SECURITY:
provisionSecurity();
break;
+ case GET_STATUS:
+ getStatus();
+ break;
case GET_CONFIGURATION:
getConfiguration();
break;