
    "j                     P    d dl Z d dlmZ d dlmZ  edg d      Z G d de      Zy)    N)
namedtuple)PluginTrafficState)idxifaceacct_tag_hexuid_tag_intcnt_setrx_bytes
rx_packetstx_bytes
tx_packetsrx_tcp_bytesrx_tcp_packetsrx_udp_bytesrx_udp_packetsrx_other_bytesrx_other_packetstx_tcp_bytestx_tcp_packetstx_udp_bytestx_udp_packetstx_other_bytestx_other_packetsc                       e Zd Zd Zy)Trafficc                    dj                  |      }| j                  |      j                         }d}|r(t        j                  ||      }|j                  d      }ny dj                  |      }| j                  |      }d }g }|rW|j                         j                  d      D ]3  }	t        ||	j                               }
|j                  t        |
        5 |S y )Nz dumpsys package {} | grep userIdzuserId=([\d]+)   z(cat /proc/net/xt_qtaguid/stats | grep {}c                 <    | j                         rt        |       S | S )N)isdigitint)tokens    `/var/www/oz-panel.ru/ozpay-pub/venv/lib/python3.12/site-packages/ppadb/plugins/device/traffic.pyconvertz$Traffic.get_traffic.<locals>.convert0   s    }}5z!    
)
formatshellstripresearchgroupsplitmapappendState)selfpackage_namecmdresultpatternmatchuidr$   stateslinevaluess              r#   get_trafficzTraffic.get_traffic    s    077EC&&("IIgv.E++a.C 8??DC	 ,,T2 .Wdjjl3eVn-. Mr%   N)__name__
__module____qualname__r;    r%   r#   r   r      s    r%   r   )r*   collectionsr   ppadb.pluginsr   r0   r   r?   r%   r#   <module>rB      s+    	 "  > $ 	2f r%   