diff -r 000000000000 -r 6474c204b198 media/webrtc/signaling/src/softphonewrapper/CC_SIPCCDeviceInfo.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media/webrtc/signaling/src/softphonewrapper/CC_SIPCCDeviceInfo.cpp Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,134 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "CSFLog.h" + +#include "CC_Common.h" + +#include "CC_SIPCCDeviceInfo.h" +#include "CC_SIPCCFeatureInfo.h" +#include "CC_SIPCCCallServerInfo.h" +#include "CC_SIPCCCall.h" +#include "CC_SIPCCLine.h" + +#include "csf_common.h" + +extern "C" +{ +#include "cpr_types.h" +#include "ccapi_device.h" +#include "ccapi_device_info.h" +} + +using namespace std; +using namespace CSF; + +#define MAX_SUPPORTED_NUM_CALLS 100 +#define MAX_SUPPORTED_NUM_LINES 100 +#define MAX_SUPPORTED_NUM_FEATURES 100 +#define MAX_SUPPORTED_NUM_CALL_SERVERS 100 + + +CSF_IMPLEMENT_WRAP(CC_SIPCCDeviceInfo, cc_deviceinfo_ref_t); + +CC_SIPCCDeviceInfo::CC_SIPCCDeviceInfo (cc_deviceinfo_ref_t deviceinfo) +: deviceinfo_ref(deviceinfo) +{ + CCAPI_Device_retainDeviceInfo(deviceinfo_ref); +} + +CC_SIPCCDeviceInfo::~CC_SIPCCDeviceInfo() +{ + CCAPI_Device_releaseDeviceInfo(deviceinfo_ref); +} + +string CC_SIPCCDeviceInfo::getDeviceName() +{ + return CCAPI_DeviceInfo_getDeviceName(deviceinfo_ref); +} + +vector CC_SIPCCDeviceInfo::getCalls () +{ + vector callsVector; + + cc_call_handle_t handles[MAX_SUPPORTED_NUM_CALLS] = {}; + cc_uint16_t numHandles = csf_countof(handles); + + CCAPI_DeviceInfo_getCalls(deviceinfo_ref, handles, &numHandles) ; + + for (int i=0; i CC_SIPCCDeviceInfo::getLines () +{ + vector linesVector; + + cc_lineid_t lines[MAX_SUPPORTED_NUM_LINES] = {}; + cc_uint16_t numLines = csf_countof(lines); + + CCAPI_DeviceInfo_getLines(deviceinfo_ref, lines, &numLines) ; + + for (int i=0; i CC_SIPCCDeviceInfo::getFeatures () +{ + vector featuresVector; + + cc_featureinfo_ref_t features[MAX_SUPPORTED_NUM_FEATURES] = {}; + cc_uint16_t numFeatureInfos = csf_countof(features); + + CCAPI_DeviceInfo_getFeatures(deviceinfo_ref, features, &numFeatureInfos); + + for (int i=0; i CC_SIPCCDeviceInfo::getCallServers () +{ + vector callServersVector; + + cc_callserver_ref_t callServers[MAX_SUPPORTED_NUM_CALL_SERVERS] = {}; + cc_uint16_t numCallServerInfos = csf_countof(callServers); + + CCAPI_DeviceInfo_getCallServers(deviceinfo_ref, callServers, &numCallServerInfos); + + for (int i=0; i