mirror of
https://github.com/danswer-ai/danswer.git
synced 2025-04-09 12:30:49 +02:00
Remove 2 month time check & Add time range to fetch and process
This commit is contained in:
parent
4ad35d76b0
commit
245adc4d3d
@ -41,11 +41,15 @@ class FreshdeskConnector(PollConnector, LoadConnector):
|
||||
self.password = credentials.get("freshdesk_password")
|
||||
return None
|
||||
|
||||
def _fetch_tickets(self) -> List[dict]:
|
||||
def _fetch_tickets(self, start: datetime, end: datetime) -> List[dict]:
|
||||
if any([self.api_key, self.domain, self.password]) is None:
|
||||
raise ConnectorMissingCredentialError("freshdesk")
|
||||
|
||||
freshdesk_url = f"https://{self.domain}.freshdesk.com/api/v2/tickets?include=description"
|
||||
#convert start and end time to the format required by Freshdesk API
|
||||
start_time = start.strftime("%Y-%m-%dT%H:%M:%SZ")
|
||||
end_time = end.strftime("%Y-%m-%dT%H:%M:%SZ")
|
||||
|
||||
freshdesk_url = f"https://{self.domain}.freshdesk.com/api/v2/tickets?include=description&updated_since={start_time}&updated_before={end_time}"
|
||||
response = requests.get(freshdesk_url, auth=(self.api_key, self.password))
|
||||
response.raise_for_status() # raises exception when not a 2xx response
|
||||
|
||||
@ -57,7 +61,7 @@ class FreshdeskConnector(PollConnector, LoadConnector):
|
||||
return []
|
||||
|
||||
def _process_tickets(self, start: datetime, end: datetime) -> GenerateDocumentsOutput:
|
||||
tickets = self._fetch_tickets()
|
||||
tickets = self._fetch_tickets(start, end)
|
||||
doc_batch: List[Document] = []
|
||||
|
||||
for ticket in tickets:
|
||||
@ -91,8 +95,7 @@ class FreshdeskConnector(PollConnector, LoadConnector):
|
||||
sections = self.build_doc_sections_from_ticket(ticket)
|
||||
|
||||
created_at = datetime.fromisoformat(ticket["created_at"])
|
||||
today = datetime.now()
|
||||
if (today - created_at).days / 30.4375 <= 2:
|
||||
if start <= created_at <= end:
|
||||
doc = Document(
|
||||
id=ticket["id"],
|
||||
sections=sections,
|
||||
|
Loading…
x
Reference in New Issue
Block a user