<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: keyapis/device/v1/keyapis_device_events_v1.proto

namespace Keyapis\Device\V1\ControlDeviceResultTask;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;

/**
 * Результат конфигурации устройства
 *
 * Generated from protobuf message <code>keyapis.device.v1.ControlDeviceResultTask.Settings</code>
 */
class Settings extends \Google\Protobuf\Internal\Message
{
    /**
     * Настройка распознавания лиц
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State face_recognition = 1;</code>
     */
    protected $face_recognition = null;
    /**
     * Установка пресета
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State preset = 2;</code>
     */
    protected $preset = null;
    /**
     * Настройка SIP-аккаунта
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sip_account = 3;</code>
     */
    protected $sip_account = null;
    /**
     * Настройка калитки
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State gate = 4;</code>
     */
    protected $gate = null;
    /**
     * Настройка автосбора
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State autocollect = 5;</code>
     */
    protected $autocollect = null;
    /**
     * Настройка консьержа
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State concierge = 6;</code>
     */
    protected $concierge = null;
    /**
     * Настройка sl3
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sl3 = 7;</code>
     */
    protected $sl3 = null;
    /**
     * Настройки вызова экстренной службы
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State emergency_call_settings = 8;</code>
     */
    protected $emergency_call_settings = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $face_recognition
     *           Настройка распознавания лиц
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $preset
     *           Установка пресета
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $sip_account
     *           Настройка SIP-аккаунта
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $gate
     *           Настройка калитки
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $autocollect
     *           Настройка автосбора
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $concierge
     *           Настройка консьержа
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $sl3
     *           Настройка sl3
     *     @type \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $emergency_call_settings
     *           Настройки вызова экстренной службы
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Keyapis\Device\V1\KeyapisDeviceEventsV1::initOnce();
        parent::__construct($data);
    }

    /**
     * Настройка распознавания лиц
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State face_recognition = 1;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getFaceRecognition()
    {
        return $this->face_recognition;
    }

    public function hasFaceRecognition()
    {
        return isset($this->face_recognition);
    }

    public function clearFaceRecognition()
    {
        unset($this->face_recognition);
    }

    /**
     * Настройка распознавания лиц
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State face_recognition = 1;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setFaceRecognition($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->face_recognition = $var;

        return $this;
    }

    /**
     * Установка пресета
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State preset = 2;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getPreset()
    {
        return $this->preset;
    }

    public function hasPreset()
    {
        return isset($this->preset);
    }

    public function clearPreset()
    {
        unset($this->preset);
    }

    /**
     * Установка пресета
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State preset = 2;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setPreset($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->preset = $var;

        return $this;
    }

    /**
     * Настройка SIP-аккаунта
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sip_account = 3;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getSipAccount()
    {
        return $this->sip_account;
    }

    public function hasSipAccount()
    {
        return isset($this->sip_account);
    }

    public function clearSipAccount()
    {
        unset($this->sip_account);
    }

    /**
     * Настройка SIP-аккаунта
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sip_account = 3;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setSipAccount($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->sip_account = $var;

        return $this;
    }

    /**
     * Настройка калитки
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State gate = 4;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getGate()
    {
        return $this->gate;
    }

    public function hasGate()
    {
        return isset($this->gate);
    }

    public function clearGate()
    {
        unset($this->gate);
    }

    /**
     * Настройка калитки
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State gate = 4;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setGate($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->gate = $var;

        return $this;
    }

    /**
     * Настройка автосбора
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State autocollect = 5;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getAutocollect()
    {
        return $this->autocollect;
    }

    public function hasAutocollect()
    {
        return isset($this->autocollect);
    }

    public function clearAutocollect()
    {
        unset($this->autocollect);
    }

    /**
     * Настройка автосбора
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State autocollect = 5;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setAutocollect($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->autocollect = $var;

        return $this;
    }

    /**
     * Настройка консьержа
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State concierge = 6;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getConcierge()
    {
        return $this->concierge;
    }

    public function hasConcierge()
    {
        return isset($this->concierge);
    }

    public function clearConcierge()
    {
        unset($this->concierge);
    }

    /**
     * Настройка консьержа
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State concierge = 6;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setConcierge($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->concierge = $var;

        return $this;
    }

    /**
     * Настройка sl3
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sl3 = 7;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getSl3()
    {
        return $this->sl3;
    }

    public function hasSl3()
    {
        return isset($this->sl3);
    }

    public function clearSl3()
    {
        unset($this->sl3);
    }

    /**
     * Настройка sl3
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State sl3 = 7;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setSl3($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->sl3 = $var;

        return $this;
    }

    /**
     * Настройки вызова экстренной службы
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State emergency_call_settings = 8;</code>
     * @return \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State|null
     */
    public function getEmergencyCallSettings()
    {
        return $this->emergency_call_settings;
    }

    public function hasEmergencyCallSettings()
    {
        return isset($this->emergency_call_settings);
    }

    public function clearEmergencyCallSettings()
    {
        unset($this->emergency_call_settings);
    }

    /**
     * Настройки вызова экстренной службы
     *
     * Generated from protobuf field <code>.keyapis.device.v1.ConfigureDeviceResultTask.Settings.State emergency_call_settings = 8;</code>
     * @param \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State $var
     * @return $this
     */
    public function setEmergencyCallSettings($var)
    {
        GPBUtil::checkMessage($var, \Keyapis\Device\V1\ConfigureDeviceResultTask\Settings\State::class);
        $this->emergency_call_settings = $var;

        return $this;
    }

}

// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Settings::class, \Keyapis\Device\V1\ControlDeviceResultTask_Settings::class);

