ó
    ¥ gÒ
  ã                   ó¬   • S r SSKrSSKrSSKrSSKrSSKrSSKrSSKJr  SSKJ	r	J
r
  SSKJr  SSKJr  SSKJr  SS	KJr  S
 rS r\S:X  a  \" 5         gg)uÆ   
MÃ³dulo principal del sistema - MVP v1.0

Punto de entrada del sistema que coordina:
- InicializaciÃ³n de componentes
- Procesamiento histÃ³rico inicial
- Monitoreo continuo
- Interfaz de comandos
é    N)Údatetimeé   )Ú	LOG_LEVELÚPROCESS_INTERVAL)ÚHistoricalProcessor)ÚRealtimeProcessor)ÚCommandProcessor)Úcreate_menuc                  óh   • [         R                  " [        SS9  [        R                  " [
        5      $ )zConfigura el sistema de loggingz'%(asctime)s [%(levelname)s] %(message)s)ÚlevelÚfmt)ÚcoloredlogsÚinstallr   ÚloggingÚ	getLoggerÚ__name__© ó    Ú'/var/www/blue/EV-Temp_rev04/src/main.pyÚsetup_loggingr      s)   € ä×ÒÜØ5òô ×ÒœXÓ&Ð&r   c                  ój  • [        5       n [        R                  " SS9nUR                  SSS9  UR                  SSSS	S
9  UR	                  5       n [        UR                  5      n[        UR                  5      n[        U5      nUR                  (       a   UR                  5         UR                  5         U R                  S5        UR                  5       (       a  U R                  S5        OU R                  S5        [        R                  " S5      R                   R#                  UR$                  5        [&        R(                  " UR*                  S9nSUl        UR+                  5         U R                  S5        UR.                  (       a>  [        R0                  " 5         [2        R4                  " S5        UR.                  (       a  M>  S[;        5       ;   a  WR=                  5         S[;        5       ;   a  WR=                  5         U R                  S5        g ! [6         a    U R                  S5         Nk[8         a  nU R                  SU 3SS9   S nANŒS nAff = f! S[;        5       ;   a  WR=                  5         S[;        5       ;   a  WR=                  5         U R                  S5        f = f)Nz$Sistema de Monitoreo de Sensores IoT)ÚdescriptionÚdb_namezNombre de la base de datos)Úhelpz-vz	--verboseÚ
store_truezModo verbose)Úactionr   u/   Iniciando procesamiento de datos histÃ³ricos...u#   Procesamiento histÃ³rico completadou!   Error en procesamiento histÃ³ricor   )ÚtargetTz+Sistema iniciado en modo monitoreo continuou!   InterrupciÃ³n de usuario recibidazError en sistema: )Úexc_infoÚhistorical_procÚrealtime_proczSistema finalizado)r   ÚargparseÚArgumentParserÚadd_argumentÚ
parse_argsr   r   r   r	   ÚverboseÚtoggle_verboseÚinfoÚprocess_historical_dataÚerrorÚscheduleÚeveryÚminutesÚdoÚprocess_new_dataÚ	threadingÚThreadÚstartÚdaemonÚrunningÚrun_pendingÚtimeÚsleepÚKeyboardInterruptÚ	ExceptionÚlocalsÚstop)ÚloggerÚparserÚargsr   r    Úcommand_procÚcommand_threadÚes           r   ÚmainrA   !   s  € Ü‹_€Fô ×$Ò$Ð1WÑX€FØ
×Ñ˜	Ð(DÐÑEØ
×Ñ˜˜k°,À^ÐÑTØ×ÑÓ€Dð)*ä-¨d¯l©lÓ;ˆÜ)¨$¯,©,Ó7ˆÜ'¨Ó6ˆà�<�<Ø×*Ñ*Ô,Ø×(Ñ(Ô*ð 	�‰ÐEÔFØ×2Ñ2×4Ñ4Ø�K‰KÐ=Õ>à�L‰LÐ<Ô=ô 	�Š�qÓ×!Ñ!×$Ñ$ ]×%CÑ%CÔDô #×)Ò)°×1CÑ1CÑDˆØ $ˆÔØ×ÑÔà�‰ÐAÔBð ×#×#Ü× Ò Ô"Ü�JŠJ�qŒMð ×#×#Ñ#ð ¤£Ó(Ø× Ñ Ô"Øœf›hÓ&Ø×ÑÔ Ø�‰Ð(Õ)øô ó 9Ø�‰Ð7Ö8Üó >Ø�‰Ð)¨!¨Ð-¸ˆÖ=ûð>ûð ¤£Ó(Ø× Ñ Ô"Øœf›hÓ&Ø×ÑÔ Ø�‰Ð(Õ)ús8   ÁE;H ÈI È8I# È:	I ÉIÉI# ÉI É I# É#AJ2Ú__main__)Ú__doc__r!   r   r*   r5   r/   r   r   Úconfig.settingsr   r   Úprocessors.historicalr   Úprocessors.realtimer   Úcli.commandsr	   Úcli.menur
   r   rA   r   r   r   r   Ú<module>rI      sO   ðñó Û Û Û Û Û Ý ß 8Ý 6Ý 2Ý *Ý !ò'ò7*ðr ˆzÓÙ…Fð r   