o
    hw                     @   s   d Z ddlZG dd dZdS )u5   
通知サービス
Slackなどへの通知を管理
    Nc                   @   sB   e Zd ZdZddefddZddedefdd	Zd
efddZdS )NotificationServiceu   通知サービスクラスNslack_webhook_urlc                 C   s
   || _ dS )u[   
        初期化

        Args:
            slack_webhook_url: Slack Webhook URL
        N)r   )selfr    r   @/var/www/html/openai_agents/src/services/notification_service.py__init__   s   
zNotificationService.__init__error_messagescript_namec              
   C   s   | j s	td dS z#|rd| nd}d| d| di}tj| j |dd	}|  W dS  tyF } ztd
|  W Y d}~dS d}~ww )u   
        Slackにエラー通知を送信

        Args:
            error_message: エラーメッセージ
            script_name: スクリプト名（オプション）
        /   Slack Webhook URLが設定されていませんNu   🚨 エラー発生: u   🚨 エラー発生textz
```
z
```
   jsontimeout+   Slack通知の送信に失敗しました: r   printrequestspostraise_for_status	Exception)r   r   r	   titlepayloadresponseer   r   r   send_slack_error   s"   z$NotificationService.send_slack_errormessagec              
   C   sp   | j s	td dS zd|i}tj| j |dd}|  W dS  ty7 } ztd|  W Y d}~dS d}~ww )ur   
        Slackにメッセージを送信

        Args:
            message: 送信するメッセージ
        r
   Nr   r   r   r   r   )r   r   r   r   r   r   r   r   send_slack_message.   s   z&NotificationService.send_slack_message)N)__name__
__module____qualname____doc__strr   r   r   r   r   r   r   r      s
    	r   )r!   r   r   r   r   r   r   <module>   s    