media/webrtc/signaling/include/PhoneDetails.h

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/media/webrtc/signaling/include/PhoneDetails.h	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,59 @@
     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 <string>
    1.11 +
    1.12 +#include "CC_Common.h"
    1.13 +#include "ECC_Types.h"
    1.14 +
    1.15 +namespace CSF
    1.16 +{
    1.17 +	DECLARE_NS_PTR_VECTOR(PhoneDetails);
    1.18 +	class ECC_API PhoneDetails
    1.19 +	{
    1.20 +	public:
    1.21 +                NS_INLINE_DECL_THREADSAFE_REFCOUNTING(PhoneDetails)
    1.22 +		virtual ~PhoneDetails() {}
    1.23 +		/**
    1.24 +		 * Get the device name (the CUCM device name) and the free text description.
    1.25 +		 */
    1.26 +		virtual std::string getName() const = 0;
    1.27 +		virtual std::string getDescription() const = 0;
    1.28 +
    1.29 +		/**
    1.30 +		 * Get the model number (the internal CUCM number, not the number printed on the phone)
    1.31 +		 * and the corresponding description (which normally does include the number printed on the phone).
    1.32 +		 * Returns -1, "" if unknown
    1.33 +		 */
    1.34 +		virtual int getModel() const = 0;
    1.35 +		virtual std::string getModelDescription() const = 0;
    1.36 +
    1.37 +		virtual bool isSoftPhone() = 0;
    1.38 +
    1.39 +		/**
    1.40 +		 * List the known directory numbers of lines associated with the device.
    1.41 +		 * Empty list if unknown.
    1.42 +		 */
    1.43 +		virtual std::vector<std::string> getLineDNs() const = 0;
    1.44 +
    1.45 +		/**
    1.46 +		 * Current status of the device, if known.
    1.47 +		 */
    1.48 +		virtual ServiceStateType::ServiceState getServiceState() const = 0;
    1.49 +
    1.50 +		/**
    1.51 +		 * TFTP config of device, and freshness of the config.
    1.52 +		 */
    1.53 +		virtual std::string getConfig() const = 0;
    1.54 +
    1.55 +	protected:
    1.56 +		PhoneDetails() {}
    1.57 +
    1.58 +	private:
    1.59 +		PhoneDetails(const PhoneDetails&);
    1.60 +		PhoneDetails& operator=(const PhoneDetails&);
    1.61 +	};
    1.62 +};

mercurial