
    :h                         % S SK r S SKrS SKJrJr  S SKJr  S SKJr  S SKJ	r	  Sq
\\S'   S rS rS	\4S
 jrS	\4S jrg)    N)	WebSocketWebSocketDisconnect)AIOKafkaProducer)datetime)connected_clientsproducerc                  Z   #    [        SS9q[        R                  5       I S h  vN   g  N7f)Nzlocalhost:9092)bootstrap_servers)r   r   start     JC:\Suresh\moveshuttle\MDcreated\moveengine\app\v1\sockets\tracking_data.pystart_kafka_producerr      s      2BCH
..
s   !+)+c                  `   #    [         (       a  [         R                  5       I S h  vN   g g  N7f)N)r   stopr   r   r   stop_kafka_producerr      s!     xmmo s   #.,.	websocketc                   #    U R                  5       I S h  vN     U R                  5       I S h  vN n[        R                  " U5      n[        R
                  " 5       R                  5       US'   [        (       aA  [        R                  S[        R                  " U5      R                  S5      5      I S h  vN   U R                  S5      I S h  vN   M   N N N# N! [         a     g f = f7f)Nreceived_atvehicle_trackingzutf-8zMessage queued successfully.)acceptreceive_textjsonloadsr   utcnow	isoformatr   senddumpsencode	send_textr   )r   messagedatas      r   websocket_tracking_datar#      s     



	%2244G::g&D"*//"3"="="?Dxmm$6

48H8O8OPW8XYYY%%&DEEE   5 ZE sg   C0CC0C  CBC  8C9C  CC  C0C  C  C   
C-*C0,C--C0c                 b  #    U R                  5       I S h  vN   [        R                  " U 5        [        S[	        [        5      5          [
        R                  " S5      I S h  vN   M    NU N! [         a2    [        R                  " U 5        [        S[	        [        5      5         g f = f7f)Nu   ✅ Client connected. Total:   u#   ❌ Client disconnected. Remaining:)	r   r   addprintlenasynciosleepr   remove)r   s    r   websocket_realtime_updatesr,   !   s     



)$	
(#.?*@AM--"""   # M  +3S9J5KLMsE   B/A,3B/A0 %A.&A0 ,B/.A0 09B,)B/+B,,B/)r)   r   fastapir   r   aiokafkar   r   app.utils.connectionsr   r   __annotations__r   r   r#   r,   r   r   r   <module>r1      sF      2 %  3!
 !
Y 
M	 
Mr   