private string GetStatusMessageForPulsePort(IDevicePortState portState, string portName)
        {
            string result;

            if (portState.PortState != portState.DefaultPortState)
            {
                result = $"{portName} está ativo";
            }
            else
            {
                result = $"{portName} está em repouso";
            }

            return(result);
        }
        private string GetStatusMessageForSwitchPort(IDevicePortState portState, string portName)
        {
            string result;

            switch (portState.PortState)
            {
            case PortStates.None:
                result = $"{portName} não está configurada";
                break;

            case PortStates.Actived:
                result = $"{portName} está ligada";
                break;

            case PortStates.Deactived:
                result = $"{portName} está desligada";
                break;

            default:
                result = $"O estatus de {portName} é {portState.PortState} e não há suporte para ele";
                break;
            }
            return(result);
        }
        private string AlterarEstadoDaPorta(string portName, PortStates targetPortState, IDevicePortState portState)
        {
            string result;
            var    changePortStateContex = new ChangePortStateContext()
            {
                RequestId      = "",
                SetState       = targetPortState,
                TargetPortName = portName
            };

            _thinkerThingsSignalRHubContext.Clients.Client(portState.ConnectionId).ChangePortState(changePortStateContex);
            switch (targetPortState)
            {
            case PortStates.Actived:
                result = $"{portName} será ligado";
                break;

            case PortStates.Deactived:
                result = $"{portName} será desligado";
                break;

            default:
                result = $"Não estou certo do que acontecerá com {portName}";
                break;
            }

            return(result);
        }