示例#1
0
    def list_comments(self, ticket_id, **kwargs):
        url = "tickets/%d/conversations?" % ticket_id
        page = kwargs.get("page", 1)
        per_page = kwargs.get("per_page", 100)

        comments = []

        # Skip pagination by looping over each page and adding comments if 'page' key is not in kwargs.
        # else return the requested page and break the loop
        while True:
            this_page = self._api._get(url + "page=%d&per_page=%d" % (page, per_page), kwargs)
            comments += this_page
            if len(this_page) < per_page or "page" in kwargs:
                break
            page += 1

        return [Comment(**c) for c in comments]
示例#2
0
 def create_reply(self, ticket_id, body, **kwargs):
     url = "tickets/%d/reply" % ticket_id
     data = {"body": body}
     data.update(kwargs)
     return Comment(**self._api._post(url, data=json.dumps(data)))
示例#3
0
 def list_comments(self, ticket_id):
     url = "tickets/%d/conversations" % ticket_id
     comments = []
     for c in self._api._get(url):
         comments.append(Comment(**c))
     return comments
示例#4
0
 def create_note(self, ticket_id, body, **kwargs):
     url = 'tickets/%d/notes' % ticket_id
     data = {'body': body}
     data.update(kwargs)
     return Comment(**self._api._post(url, data=json.dumps(data)))