Esempio n. 1
0
        public static TicketDetailResponse PostMessage(int ticketId, string message)
        {
            Helpdesk.Service     service = new Helpdesk.Service(ApiUrl, ApiKey);
            TicketDetailResponse result  = service.PostMessage(ticketId, message);

            return(result);
        }
Esempio n. 2
0
        private static GenericResult HelpdeskPostMessage(int ticketId, string message, IClient currentUser)
        {
            var result = new GenericResult();
            var svc    = new Helpdesk.Service(ConfigurationManager.AppSettings["HelpdeskUrl"], ConfigurationManager.AppSettings["HelpdeskApiKey"]);
            TicketDetailResponse response = svc.PostMessage(ticketId, message);

            result.Success = !response.Error;
            result.Message = response.Message;
            result.Data    = new { response.Detail, currentUser.DisplayName, currentUser.Email };
            return(result);
        }
Esempio n. 3
0
        public static CreateTicketResult CreateTicket(IClient currentUser, IResource res, IReservation rsv, int clientId, string reservationText, string subjectText, string messageText, string ticketType, Uri requestUri)
        {
            TicketPriorty pri = TicketPriortyFromString(ticketType);

            string bodyText = GetMessageBody(res, rsv, clientId, reservationText, messageText, ticketType, requestUri);

            Helpdesk.Service service = new Helpdesk.Service(ApiUrl, ApiKey);

            IClient primary;

            if (currentUser.PrimaryOrg)
            {
                primary = currentUser;
            }
            else
            {
                primary = ServiceProvider.Current.Data.Client.GetPrimary(currentUser.ClientID);
            }

            if (primary != null)
            {
                CreateTicketResult result = service.CreateTicket
                                            (
                    resourceId: res.ResourceID,
                    name: currentUser.DisplayName,
                    email: primary.Email,
                    queue: res.HelpdeskEmail,
                    subject: subjectText,
                    message: bodyText,
                    priority: pri
                                            );

                int sent = SendHardwareIssueEmail(res, rsv, clientId, reservationText, subjectText, messageText, pri, requestUri);

                result.HardwareTicketEmailsSent = sent;

                return(result);
            }
            else
            {
                return(new CreateTicketResult(new Exception($"Cannot find primary ClientOrg for ClientID {currentUser.ClientID}")));
            }
        }