Example #1
0
        public async Task <ZendeskTicket> FromId(string id)
        {
            var ticketJson = await m_Api.Ticket(id);

            var commentsJson = await m_Api.Comments(id);

            var comments            = ((DynamicJsonArray)commentsJson.comments).Cast <dynamic>().Select(x => new ZendeskTicket.Comment(x.body, x.author_id.ToString(), null));
            var commentsWithAuthors = await Task.WhenAll(comments.Select(FixCommentAuthor));

            return(new ZendeskTicket(id, ticketJson.ticket.subject, ticketJson.ticket.status, new List <ZendeskTicket.Comment>(commentsWithAuthors).AsReadOnly()));
        }
 public async Task <dynamic> Ticket(string id)
 {
     return(await DoWithRetry(async() => await m_ZdApi.Ticket(id)));
 }
Example #3
0
 public Task <dynamic> Ticket(string ticketId)
 {
     return(Cache(m_TicketCache, ticketId, () => m_Underlying.Ticket(ticketId)));
 }