From 8c97124eb4bbff83978294971b36aaf6306b01ca Mon Sep 17 00:00:00 2001 From: proffapt Date: Fri, 24 Nov 2023 16:45:48 +0530 Subject: [PATCH] fix(otp): OTP is required on campus network as well --- pyproject.toml | 2 +- src/iitkgp_erp_login/erp.py | 29 +++++++++++++---------------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 7721ee7..f05d5d0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "iitkgp_erp_login" -version = "2.3.3" +version = "4.4.4" authors = [ { name="Arpit Bhardwaj", email="proffapt@pm.me" }, ] diff --git a/src/iitkgp_erp_login/erp.py b/src/iitkgp_erp_login/erp.py index 6a16997..8b2745c 100644 --- a/src/iitkgp_erp_login/erp.py +++ b/src/iitkgp_erp_login/erp.py @@ -196,24 +196,21 @@ def login( sessionToken=sessionToken ) - # Handling OTP - whether required or not - if is_otp_required(): - request_otp(headers=headers, session=session, login_details=login_details, log=LOGGING) - - if OTP_CHECK_INTERVAL != None: - try: - if LOGGING: logging.info(" Waiting for OTP ...") - otp = getOTP(OTP_CHECK_INTERVAL) - if LOGGING: logging.info(" Received OTP") - - except Exception as e: - raise ErpLoginError(f"Failed to receive OTP: {str(e)}") - else: - otp = input("Enter the OTP sent to your registered email address: ").strip() + # Handling OTP + request_otp(headers=headers, session=session, login_details=login_details, log=LOGGING) + + if OTP_CHECK_INTERVAL != None: + try: + if LOGGING: logging.info(" Waiting for OTP ...") + otp = getOTP(OTP_CHECK_INTERVAL) + if LOGGING: logging.info(" Received OTP") - login_details["email_otp"] = otp + except Exception as e: + raise ErpLoginError(f"Failed to receive OTP: {str(e)}") else: - if LOGGING: logging.info(" OTP is not required!") + otp = input("Enter the OTP sent to your registered email address: ").strip() + + login_details["email_otp"] = otp ssoToken = signin(headers=headers, session=session, login_details=login_details, log=LOGGING)