protected override async Task ProcessIndividualEventAsync(EventData eventData, string rawEventPayload)
        {
            var deviceId       = eventData.Properties[DeviceId]?.ToString();
            var rawMessageType = eventData.Properties[MessageType]?.ToString();

            if (Enum.TryParse(rawMessageType, ignoreCase: true, result: out MessageTypes messageType))
            {
                await _deviceRegistryClient.SendMessageAsync(deviceId, messageType, rawEventPayload);
            }
            else
            {
                throw new Exception($"Unable to process message with type {rawMessageType}");
            }
        }