[UPD] add dokumentasi fucntion
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Package services: berisi client untuk koneksi ke Freshservice API."""
|
||||
from . import gmn_freshservice_client_v01
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Client untuk koneksi ke Freshservice REST API v2.
|
||||
Bisa jalan dalam 2 mode: Live (panggil API beneran) atau Mock (data dummy untuk testing).
|
||||
"""
|
||||
import datetime
|
||||
import logging
|
||||
import requests
|
||||
@@ -32,6 +35,11 @@ class FreshserviceClient:
|
||||
_dept_cache = {}
|
||||
|
||||
def __init__(self, base_url="https://servicedesk.lyman.co.id", api_key="", use_mock=False):
|
||||
"""Inisialisasi koneksi ke Freshservice.
|
||||
- base_url: URL instance Freshservice (misal: https://company.freshservice.com)
|
||||
- api_key: token API untuk otentikasi
|
||||
- use_mock: kalau True, pakai data dummy untuk testing tanpa koneksi internet
|
||||
"""
|
||||
self.base_url = (base_url or "").rstrip("/")
|
||||
self.api_key = api_key or ""
|
||||
self.use_mock = False
|
||||
@@ -295,6 +303,13 @@ class FreshserviceClient:
|
||||
# "conversations": conversations_json,
|
||||
# }
|
||||
def _get_live_payload(self, ticket_id):
|
||||
"""Ambil data lengkap tiket dari server live Freshservice via REST API.
|
||||
Memanggil beberapa endpoint:
|
||||
1. /api/v2/tickets/{id}?include=stats,requester - info tiket & metrik
|
||||
2. /api/v2/tickets/{id}/activities - audit trail/riwayat perubahan
|
||||
3. /api/v2/tickets/{id}/conversations - riwayat pesan/chat
|
||||
Mengembalikan dictionary berisi ketiga data di atas.
|
||||
"""
|
||||
if not self.base_url or not self.api_key:
|
||||
raise UserError(
|
||||
"Base URL dan API Key Freshservice wajib dikonfigurasi di Settings!"
|
||||
|
||||
Reference in New Issue
Block a user