Skip to main content

Passo a passo:

  • Realizar a requisição na API de tickets fechados:

  • Filtrar por data, quantidade de registros e paginação:
  • No endpoint de tickets, é possível filtrar por data de início e fim, quantidade de registros e paginação conforme a documentação da BLiP. O código abaixo exemplifica como incluir essas informações na requisição.
  • Filtrar por tags e times:

    • Para aplicar filtros adicionais, como tags e times, será necessário implementar a lógica no código, pois a API não permite esses filtros diretamente na requisição.
    • Crie uma regra no código para tratar o resultado da API e exibir apenas os dados que correspondem aos filtros desejados.
    • Lembre-se de que, se o retorno da API trouxer até 100 registros, será necessário implementar uma lógica de paginação. O código abaixo não inclui essa lógica.
  • Código em python
    • import requests
      import json
      import uuid

      url = "https://{{contractid}}.http.msging.net/commands"

      headersBot = {
      'Authorization': 'chave de autorização do bot',
      'Content-Type': 'application/json'
      }

      # Gerar um UUID
      id = str(uuid.uuid4())

      #Filtros
      dataIni = "2024-09-10"
      dataFin = "2024-11-27"
      page = 0
      amount = 100
      fila = "DIRECT_TRANSFER"
      tags = b"Cliente C"]

      # Buscar todos os tickets
      payload = json.dumps({
      "id": id,
      "to": "[email protected]",
      "method": "get",
      "uri": f"/tickets?$filter=(storageDate%20ge%20datetimeoffset'{dataIni}'%20and%20storageDate%20lt%20datetimeoffset'{dataFin}')&$closed=true&$skip={page}&$take={amount}"
      })

      response = requests.post(url, headers=headersBot, data=payload)
      json_response = json.loads(response.text)

      # Filtrar os tickets conforme as tags e a fila
      filtered_tickets =
      ticket for ticket in json_responser'resource']e'items']
      if any(tag in ticket.get('tags', b]) for tag in tags) and ticket.get('team') == fila
      ]

      # Exibir os tickets filtrados
      for ticket in filtered_tickets:
      print(ticket)

       

Nenhum comentário

Comente