sh = logging.StreamHandler() logger.addHandler(sh) formatter = logging.Formatter('%(asctime)s:%(lineno)d:%(levelname)s:%(message)s') sh.setFormatter(formatter) # Flask app = Flask(__name__) # LINE Pay API LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID") LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET") LINE_PAY_REQEST_BASE_URL = "https://{}".format( # set your server host name (ex. ngrok forwarding host) at HOST_NAME on .env file os.environ.get("HOST_NAME") ) api = LinePayApi(LINE_PAY_CHANNEL_ID, LINE_PAY_CHANNEL_SECRET, is_sandbox=True) # Cache CACHE = {} @app.route("/request", methods=['GET']) def pay_request(): order_id = str(uuid.uuid4()) amount = 1 currency = "JPY" product_name = "Sample product" CACHE["order_id"] = order_id CACHE["amount"] = amount CACHE["currency"] = currency CACHE["product_name"] = currency request_options = {
import datetime app = Flask(__name__) bootstrap = Bootstrap(app) # dotenv load_dotenv(verbose=True) dotenv_path = join(dirname(__file__), '.env') load_dotenv(dotenv_path) # LINE Pay API LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID") LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET") LINE_PAY_IS_SANDBOX = False # True | False api = LinePayApi(LINE_PAY_CHANNEL_ID, LINE_PAY_CHANNEL_SECRET, is_sandbox=LINE_PAY_IS_SANDBOX) # Cache CACHE = {} # kintone account = pykintone.load("account.yml") kintone = account.app() class PayTransaction(model.kintoneModel): def __init__(self): super(PayTransaction, self).__init__() self.transaction_id = "" self.transaction_type = ""
# 環境変数 CONFIRM_URL = os.environ.get("CONFIRM_URL") CANCEL_URL = os.environ.get("CANCEL_URL") LOGGER_LEVEL = os.environ.get("LOGGER_LEVEL") LIFF_CHANNEL_ID = os.getenv('LIFF_CHANNEL_ID', None) # LINE Pay API情報 LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID") LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET") if (os.environ.get("LINE_PAY_IS_SANDBOX") == 'True' or os.environ.get("LINE_PAY_IS_SANDBOX") == 'true'): LINE_PAY_IS_SANDBOX = True else: LINE_PAY_IS_SANDBOX = False api = LinePayApi(LINE_PAY_CHANNEL_ID, LINE_PAY_CHANNEL_SECRET, is_sandbox=LINE_PAY_IS_SANDBOX) # ログ出力の設定 logger = logging.getLogger() if LOGGER_LEVEL == 'DEBUG': logger.setLevel(logging.DEBUG) else: logger.setLevel(logging.INFO) # テーブル操作クラスの初期化 payment_order_table_controller = TableOrderPaymentOrderInfo() def lambda_handler(event, context): """ LINE Pay API(reserve)の通信結果を返す Parameters
from validation.table_order_param_check import TableOrderParamCheck from common.channel_access_token import ChannelAccessToken from table_order.table_order_payment_order_info import TableOrderPaymentOrderInfo # noqa501 # 環境変数 LOGGER_LEVEL = os.environ.get("LOGGER_LEVEL") # LINE Pay API LINE_PAY_CHANNEL_ID = os.environ.get("LINE_PAY_CHANNEL_ID") LINE_PAY_CHANNEL_SECRET = os.environ.get("LINE_PAY_CHANNEL_SECRET") if (os.environ.get("LINE_PAY_IS_SANDBOX") == 'True' or os.environ.get("LINE_PAY_IS_SANDBOX") == 'true'): LINE_PAY_IS_SANDBOX = True else: LINE_PAY_IS_SANDBOX = False api = LinePayApi(LINE_PAY_CHANNEL_ID, LINE_PAY_CHANNEL_SECRET, is_sandbox=LINE_PAY_IS_SANDBOX) # ログ出力の設定 logger = logging.getLogger() if LOGGER_LEVEL == 'DEBUG': logger.setLevel(logging.DEBUG) else: logger.setLevel(logging.INFO) # テーブル操作クラスの初期化 payment_order_table_controller = TableOrderPaymentOrderInfo() channel_access_token_controller = ChannelAccessToken() # LINE BOTリソースの宣言 CHANNEL_ID = os.getenv('LINE_CHANNEL_ID', None) if CHANNEL_ID is None: logger.error('Specify CHANNEL_ID as environment variable.') sys.exit(1)
def _get_api(): return LinePayApi(channel_id=os.getenv('LINE_CHANNEL_ID'), channel_secret=os.getenv('LINE_SECRET_KEY'), is_sandbox=os.getenv('LINE_SANDBOX').lower() == 'true')