private async Task ShareTicket(SharedTicket share) { logger?.LogInformation($"Sharing {share.Reason} ticket {share.Id}"); await zendesk.MarkSharing(share); var wrap = MapperConfig.Map <Middleware.EventWrapper>(share.Response); await share.Switch( solved => middleware.SolveTicket(wrap), handedOff => middleware.HandOffTicket(wrap), escalated => middleware.EscalateTicket(wrap) ); await zendesk.MarkShared(share); logger?.LogInformation($"Shared {share.Reason} ticket {share.Id}"); }
public Task HandOffTicket([Body] EventWrapper body) => client.HandOffTicket(body);