From f748e962a32cc91cbe95741f54e4f28e9c94c864 Mon Sep 17 00:00:00 2001 From: dryrain Date: Thu, 26 Dec 2024 22:55:29 +0900 Subject: [PATCH] =?UTF-8?q?=5Freserve=20=EC=8B=9C=20"netfunnelKey"=20?= =?UTF-8?q?=ED=8C=8C=EB=9D=BC=EB=AF=B8=ED=84=B0=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SRT/srt.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/SRT/srt.py b/SRT/srt.py index eff4767..20c5b1a 100644 --- a/SRT/srt.py +++ b/SRT/srt.py @@ -347,6 +347,7 @@ def reserve( passengers, special_seat, window_seat=window_seat, + use_netfunnel_cache=True, ) def reserve_standby( @@ -383,6 +384,7 @@ def _reserve( special_seat: SeatType = SeatType.GENERAL_FIRST, mblPhone: str | None = None, window_seat: bool | None = None, + use_netfunnel_cache: bool = True, ) -> SRTReservation: """예약 신청 요청 공통 함수 @@ -392,6 +394,7 @@ def _reserve( special_seat (:class:`SeatType`): 일반실/특실 선택 유형 (default: 일반실 우선) mblPhone (str, optional): 휴대폰 번호 | jobid가 RESERVE_JOBID["STANDBY"]일 경우에만 사용 window_seat (bool, optional): 창가 자리 우선 예약 여부 | jobid가 RESERVE_JOBID["PERSONAL"]일 경우에만 사용 + use_netfunnel_cache (bool, optional): netfunnel 캐시 사용 여부, 사용하지 않으면 요청 시마다 새로 netfunnel 키를 요청합니다 (default: True) Returns: :class:`SRTReservation`: 예약 내역 @@ -428,6 +431,8 @@ def _reserve( else: is_special_seat = False + netfunnelKey = self.netfunnel_helper.generate_netfunnel_key(use_netfunnel_cache) + url = constants.API_ENDPOINTS["reserve"] data = { "jobId": jobid, @@ -454,6 +459,7 @@ def _reserve( "dptStnRunOrdr1": train.dep_station_run_order, # 출발역운행순서1 (열차 목록 값) "arvStnRunOrdr1": train.arr_station_run_order, # 도착역운행순서1 (열차 목록 값) "mblPhone": mblPhone, + "netfunnelKey": netfunnelKey, } # jobid가 RESERVE_JOBID["PERSONAL"]일 경우, data에 reserveType 추가