TaxPro GST Lib
User guide (Under Construction)
 
×
Menu
Index

GSTSession

 public class GSTSession : GSTSession
    {
 
        public GSTSession()
        {
            UserIP = "DESKTOPAPP";////Use "DESKTOPAPP" & TaxPro API server will pickup IP of connecting user
            EnableAutoRefreshTokenOnApiCall = true;
            //Event Handler for StartAPI Transaction : You can check Licensing or anything that you want to
            //do before starting API Transaction
            StartingApiTxn += StartAPITransactionHandler;
            //Event to Handle GSP Refresh Session RefreshSessionCompleted
            RefreshSessionCompleted += StoreRefreshedSession;
            //Event to Handle AuthToken Completed Event
            RefreshAuthTokenCompleted += StoreRefreshedAuth;
            //Event to handle Get OTP and Authorization Token after expiry
            RequiresReEstablisingOTPandAuthToken += ReEstablisingOTPandAuthToken;
        }
       
        private async void StoreRefreshedSession(object sender, GSTSession e)
        {
            //Update SessionID and ASPEk to ApiSettings
            Shared.SaveAPISetting(ApiSetting);
 
        }
        private async void StoreRefreshedAuth(object sender, GSTSession e)
        {
            //Update Refresh Token Information for TaxPayer like AuthToken, SEK,TokenExp and AppKey
            Shared.SaveAPILoginDetails(ApiLoginDetails);
        }
 
        private void StartAPITransactionHandler(object sender, GSTSession e)
        {
            //Event Handler for StartAPI Transaction : You can check Licensing or anything that you want to do before starting API Transaction
            //if(true )
            //{
            //    CancleApiTxn = true;
            //    CancelApiMsg = "API Cancel";
            //}
        }
        public async void ReEstablisingOTPandAuthToken(object sender, GSTSession e)
        {
           
        }
        /// <summary>
        /// Login Details of API Transaction
        /// </summary>
        /// <param name="e"></param>
        public override void LogAPITxn(GSTSession e)
        {
            string LogLine = DateTime.Now.ToString("dd/MM/yyyy HH:mm") + " ";
            LogLine += e.TxnID + " ";
            LogLine += e.FormNo + " ";
            LogLine += e.ApiAction + " ";
            LogLine += e.ApiTitle + " ";
            LogLine += e.OutcomeMsg + " ";
            LogLine += e.ErrCode + " ";
            LogLine += e.Info2 + " ";
            File.WriteAllText("GstApiTxnLog.txt", LogLine);
        }
      
    }