2 * Samsung Ukraine R&D Center (SRK under a contract between)
3 * LLC "Samsung Electronics Co", Ltd (Seoul, Republic of Korea)
4 * Copyright (C) 2018 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License
19 * @file servicerequest.h
20 * @brief Miscellaneous server requests
21 * @date Created Apr 16, 2018
22 * @author Mail to: <A HREF="mailto:d.lomtev@samsung.com">Dmytro Lomtev, d.lomtev@samsung.com</A>
24 #include <jsoncpp/json/value.h>
28 #include "servicerequest.h"
30 #include "samonitor_tag.h"
35 void ServiceRequest::registerDevice(communication::Connection& conn)
38 data["sn"] = SysInfo::tizenId();
39 data["model"] = SysInfo::model();
40 data["type"] = SysInfo::type();
41 data["sw"] = SysInfo::swVersion();
42 data["osname"] = SysInfo::osName();
43 data["osver"] = SysInfo::osVersion();
45 auto& settings = Settings::instance();
49 settings.setDeviceId(conn.registerDevice(data));
52 } catch (std::exception& e) {
53 LOG_E(TAG, "Failed to register the device: %s", e.what());
54 std::this_thread::sleep_for(settings.getKeepAliveTimeout());
56 } while (!ok && conn.isAllowed());