import os import requests from environs import Env def send_lark_message(env: Env, text: str, chat_id: str): url = os.path.join(env.str('LANGLINK_ENDPOINT'), "applications", env.str('LANGLINK_APP_ID'), "async") headers = { "x-langlink-access-key": env.str('LANGLINK_ACCESS_KEY'), "x-langlink-access-secret": env.str('LANGLINK_ACCESS_SEC'), "x-langlink-user": 'magic-mirror:accounting', } r = requests.post( url, headers=headers, params={ "return_trace": True, }, json={ "input": { "text": text, "chat_id": chat_id, }, }, ) if r.status_code != 200: print(f'error on calling langlink app: {r.text}') else: print(f'send msg to {chat_id} success') def summary(env: Env, text: str) -> str: url = os.path.join(env.str('LANGLINK_ENDPOINT'), "applications", env.str('SUMMARY_APP_ID')) headers = { "x-langlink-access-key": env.str('LANGLINK_ACCESS_KEY'), "x-langlink-access-secret": env.str('LANGLINK_ACCESS_SEC'), "x-langlink-user": 'magic-mirror:accounting', } r = requests.post( url, headers=headers, params={ "return_trace": True, }, json={ "input": text, }, ) if r.status_code != 200: print(f'error on calling langlink app: {r.text}') return '' return r.json()['output'] def reason(env: Env, text: str, tenant_id: str, date: str) -> str: url = os.path.join(env.str('LANGLINK_ENDPOINT'), "applications", env.str('REASON_APP_ID')) headers = { "x-langlink-access-key": env.str('LANGLINK_ACCESS_KEY'), "x-langlink-access-secret": env.str('LANGLINK_ACCESS_SEC'), "x-langlink-user": 'magic-mirror:accounting', } r = requests.post( url, headers=headers, params={ "return_trace": True, }, json={ "input": { "billing_text": text, "tenant_id": tenant_id, "date": date, }, }, ) if r.status_code != 200: print(f'error on calling langlink app: {r.text}') return '' return r.json()['output']