
    u[Pi                     @   d dl mZmZ d dlZd dlZ G d de      Z G d d      Zedk(  rY ed ej                                  ed	 ej                  d
               ed      Zej                           ed       	 	 	 y# e$ r ej                          Y yw xY w)    )
HTTPServerSimpleHTTPRequestHandlerNc                   .     e Zd Z fdZ fdZd Z xZS )OverlayHTTPHandlerc                     t         j                  j                  t         j                  j                  t                    }t        |   |d|i| y )N	directory)ospathdirnameabspath__file__super__init__)selfargskwargsbase_dir	__class__s       /root/twitch_bot/web_server.pyr   zOverlayHTTPHandler.__init__
   s9    77??277??8#<=$=(=f=    c                 j    | j                  dd       | j                  dd       t        | 	          y )NzAccess-Control-Allow-Origin*zCache-Controlz#no-store, no-cache, must-revalidate)send_headerr   end_headers)r   r   s    r   r   zOverlayHTTPHandler.end_headers   s0    6<*OPr   c                      y N )r   formatr   s      r   log_messagezOverlayHTTPHandler.log_message   s    r   )__name__
__module____qualname__r   r   r   __classcell__)r   s   @r   r   r      s    >
r   r   c                        e Zd ZddZd Zd Zy)	WebServerc                 .    || _         d | _        d | _        y r   )portserverthread)r   r'   s     r   r   zWebServer.__init__   s    	r   c                    	 t         j                  j                  d      st        d       t        d       yt         j                  j                  d      s:ddl}t        dd      5 }|j                  dd	dd
|       ddd       t        d       t        d| j                  ft              | _
        t        j                  | j                  j                  d      | _        | j                  j                          t        d| j                          t        dt        j                                  t        d| j                   d       t        d| j                   d       t        d       dD ]?  }t         j                  j                  |      rt        d|        1t        d| d       A y# 1 sw Y   :xY w# t"        $ r}t        d|        Y d}~yd}~ww xY w)u"   Запуск веб-сервераoverlay.htmlu2   ❌ [WEB] Файл overlay.html не найден!uM   💡 [WEB] Создайте файл overlay.html в папке с ботомFwinner_data.jsonr   Nw )activewinnerdeadlineu0   ✅ [WEB] Создан файл winner_data.jsonz0.0.0.0T)targetdaemonu=   ✅ [WEB] Веб-сервер запущен на порту u&   📁 [WEB] Рабочая папка: u=   🌐 [WEB] Локальный доступ: http://localhost:z/overlay.htmlu=   🌐 [WEB] Внешний доступ: http://192.168.1.108:u)   📄 [WEB] Доступные файлы:)r+   r,   u      ✅ u      ❌ u    (не найден)u6   ❌ [WEB] Ошибка запуска сервера: )r	   r
   existsprintjsonopendumpr   r'   r   r(   	threadingThreadserve_foreverr)   startgetcwd	Exception)r   r6   ffilees        r   r<   zWebServer.start   s   "	77>>.1JKef 77>>"45,c2 QaII"!LaPQHI$i%;=OPDK#**$++2K2KTXYDKKKQRVR[R[Q\]^:299;-HIQRVR[R[Q\\ijkQRVR[R[Q\\ijk=? = @77>>$'GD6*+GD6)=>?	@ +Q Q,  	J1#NO	s5   5G /G 'F6>D7G 6G ;G 	G$GG$c                 h    | j                   r&| j                   j                          t        d       yy)u(   Остановка веб-сервераu3   👋 [WEB] Веб-сервер остановленN)r(   shutdownr5   )r   s    r   stopzWebServer.stopE   s'    ;;KK  "GH r   N)"  )r    r!   r"   r   r<   rD   r   r   r   r%   r%      s    
$LIr   r%   __main__u   Текущая папка: u   Файлы в папке: .rE   u0   
Нажмите Ctrl+C для остановки)http.serverr   r   r9   r	   r   r%   r    r5   r=   listdirr(   r<   KeyboardInterruptrD   r   r   r   <module>rK      s    =  	1 "0I 0If z	'			}
56	&zrzz#&7
89t_F
LLN	
=>    s   B BB