1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/media/webrtc/signaling/include/CC_DeviceInfo.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,136 @@ 1.4 +/* This Source Code Form is subject to the terms of the Mozilla Public 1.5 + * License, v. 2.0. If a copy of the MPL was not distributed with this 1.6 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 1.7 + 1.8 +#pragma once 1.9 + 1.10 +#include "CC_Common.h" 1.11 + 1.12 +#include <vector> 1.13 + 1.14 +extern "C" 1.15 +{ 1.16 +#include "ccapi_types.h" 1.17 +} 1.18 + 1.19 +namespace CSF 1.20 +{ 1.21 + class ECC_API CC_DeviceInfo 1.22 + { 1.23 + public: 1.24 + NS_INLINE_DECL_THREADSAFE_REFCOUNTING(CC_DeviceInfo) 1.25 + protected: 1.26 + CC_DeviceInfo() { } 1.27 + 1.28 + public: 1.29 + //Base class needs dtor to be declared as virtual 1.30 + virtual ~CC_DeviceInfo() {}; 1.31 + 1.32 + /** 1.33 + gets the device name 1.34 + @returns - the device name as an std::string 1.35 + */ 1.36 + virtual std::string getDeviceName() = 0; 1.37 + 1.38 + /** 1.39 + gets the service state 1.40 + @param [in] handle - reference to device info 1.41 + @returns cc_service_state_t - INS/OOS 1.42 + */ 1.43 + virtual cc_service_state_t getServiceState() = 0; 1.44 + 1.45 + /** 1.46 + gets the service cause 1.47 + @param [in] handle - reference to device info 1.48 + @returns cc_service_cause_t - reason for service state 1.49 + */ 1.50 + virtual cc_service_cause_t getServiceCause() = 0; 1.51 + 1.52 + /** 1.53 + gets vector of CC_CallPtr from this CC_DeviceInfo 1.54 + 1.55 + @returns vector<CC_CallPtr> containing the CC_CallPtrs 1.56 + */ 1.57 + virtual std::vector<CC_CallPtr> getCalls () = 0; 1.58 + 1.59 + /** 1.60 + gets list of handles to calls on the device by state 1.61 + @param [in] handle - reference to device info 1.62 + @param [in] state - call state for which the calls are requested 1.63 + @param [out] handles - array of call handle to be returned 1.64 + @param [in,out] count number allocated in array/elements returned 1.65 + @returns 1.66 + */ 1.67 +// void getCallsByState (cc_call_state_t state, 1.68 +// cc_call_handle_t handles[], cc_uint16_t *count); 1.69 + 1.70 + /** 1.71 + gets vector of CC_LinePtr from this CC_DeviceInfo 1.72 + 1.73 + @returns vector<CC_LinePtr> containing the CC_LinePtrs 1.74 + */ 1.75 + virtual std::vector<CC_LinePtr> getLines () = 0; 1.76 + 1.77 + /** 1.78 + gets vector of features on the device 1.79 + 1.80 + @returns 1.81 + */ 1.82 + virtual std::vector<CC_FeatureInfoPtr> getFeatures () = 0; 1.83 + 1.84 + /** 1.85 + gets handles of call agent servers 1.86 + 1.87 + @returns 1.88 + */ 1.89 + virtual std::vector<CC_CallServerInfoPtr> getCallServers () = 0; 1.90 + 1.91 + /** 1.92 + gets call server name 1.93 + @param [in] handle - handle of call server 1.94 + @returns name of the call server 1.95 + NOTE: The memory for return string doesn't need to be freed it will be freed when the info reference is freed 1.96 + */ 1.97 +// cc_string_t getCallServerName (cc_callserver_ref_t handle); 1.98 + 1.99 + /** 1.100 + gets call server mode 1.101 + @param [in] handle - handle of call server 1.102 + @returns - mode of the call server 1.103 + */ 1.104 +// cc_cucm_mode_t getCallServerMode (cc_callserver_ref_t handle); 1.105 + 1.106 + /** 1.107 + gets calls erver name 1.108 + @param [in] handle - handle of call server 1.109 + @returns status of the call server 1.110 + */ 1.111 +// cc_ccm_status_t getCallServerStatus (cc_callserver_ref_t handle); 1.112 + 1.113 + /** 1.114 + get the NOTIFICATION PROMPT 1.115 + @param [in] handle - reference to device info 1.116 + @returns 1.117 + */ 1.118 +// cc_string_t getNotifyPrompt (); 1.119 + 1.120 + /** 1.121 + get the NOTIFICATION PROMPT PRIORITY 1.122 + @param [in] handle - reference to device info 1.123 + @returns 1.124 + */ 1.125 +// cc_uint32_t getNotifyPromptPriority (); 1.126 + 1.127 + /** 1.128 + get the NOTIFICATION PROMPT Progress 1.129 + @param [in] handle - reference to device info 1.130 + @returns 1.131 + */ 1.132 +// cc_uint32_t getNotifyPromptProgress (); 1.133 + 1.134 + private: 1.135 + // Cannot copy - clients should be passing the pointer not the object. 1.136 + CC_DeviceInfo& operator=(const CC_DeviceInfo& rhs); 1.137 + CC_DeviceInfo(const CC_DeviceInfo&); 1.138 + }; 1.139 +};