public void MergeFrom(MessageFromClient other)
    {
        if (other == null)
        {
            return;
        }
        if (other.ClientType != 0)
        {
            ClientType = other.ClientType;
        }
        switch (other.MessageCase)
        {
        case MessageOneofCase.ArduinoAction:
            if (ArduinoAction == null)
            {
                ArduinoAction = new global::ArduinoAction();
            }
            ArduinoAction.MergeFrom(other.ArduinoAction);
            break;

        case MessageOneofCase.WebClientAction:
            if (WebClientAction == null)
            {
                WebClientAction = new global::WebClientAction();
            }
            WebClientAction.MergeFrom(other.WebClientAction);
            break;
        }

        _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }
    public void MergeFrom(pb::CodedInputStream input)
    {
        uint tag;

        while ((tag = input.ReadTag()) != 0)
        {
            switch (tag)
            {
            default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                break;

            case 8: {
                clientType_ = (global::ClientType)input.ReadEnum();
                break;
            }

            case 18: {
                global::ArduinoAction subBuilder = new global::ArduinoAction();
                if (messageCase_ == MessageOneofCase.ArduinoAction)
                {
                    subBuilder.MergeFrom(ArduinoAction);
                }
                input.ReadMessage(subBuilder);
                ArduinoAction = subBuilder;
                break;
            }

            case 26: {
                global::WebClientAction subBuilder = new global::WebClientAction();
                if (messageCase_ == MessageOneofCase.WebClientAction)
                {
                    subBuilder.MergeFrom(WebClientAction);
                }
                input.ReadMessage(subBuilder);
                WebClientAction = subBuilder;
                break;
            }
            }
        }
    }