import json
import requests
import os
from dotenv import load_dotenv

load_dotenv()

def send_slack_notification(all_summary, file_url, vimeo_link):
    """Slackに通知を送信"""
    slack_vimeo_link = f"動画リンク：{vimeo_link}"
    send_slack(f"""
    {all_summary}
    ファイル詳細URL：{file_url}
    {slack_vimeo_link}
    """)

def send_slack(response):
    headers = {'Content-Type': 'application/json'}
                
    data = {'text': response}
    
    webhook_url = os.getenv("SLACK_WEBHOOK_URL")
    
    response = requests.post(webhook_url, headers=headers, data=json.dumps(data))
    return response.text  # Slack APIからのレスポンスを返す

def send_slack_to_dev(response):
    headers = {'Content-Type': 'application/json'}
                
    data = {'text': response}
    
    webhook_url = os.getenv("WEBHOOK_URL_DEV_TEST")
    
    response = requests.post(webhook_url, headers=headers, data=json.dumps(data))
    return response.text  # Slack APIからのレスポンスを返す

def send_slack_error(response):
    headers = {'Content-Type': 'application/json'}
    message = f"""
                <@UECMYCL3C>
                ZOOM議事録作成アプリ・エラー発生
                エラー内容：{response}
                """
                
    data = {'text': message}
    
    webhook_url = os.getenv("SLACK_WEBHOOK_URL")
    
    response = requests.post(webhook_url, headers=headers, data=json.dumps(data))
    return response.text  # Slack APIからのレスポンスを返す

def send_slack_to_agent(agent_id,company_recommend_text,job_axe):
    headers = {'Content-Type': 'application/json'}
    message = f"""
<@{agent_id}>
担当学生の議事録です。

【おすすめの企業】
{company_recommend_text}

【就活軸】
{job_axe}
"""
                
    data = {'text': message}
    
    #meeting notes memberチャンネル
    webhook_url = os.getenv("WEBHOOK_URL_MEETING_NOTES_MEMBER")
    
    response = requests.post(webhook_url, headers=headers, data=json.dumps(data))
    return response.text  # Slack APIからのレスポンスを返す

def notify_mgr_via_slack(all_summary_edited, vimeo_link):
    """議事録が完成したら担当MGRにSlackで通知する"""
    if all_summary_edited and vimeo_link:
        slack_vimeo_link = f"動画リンク：{vimeo_link}"
        message = f"""
        {all_summary_edited}
        {slack_vimeo_link}
        """
        send_slack(message)
        return True
    return False