Ë
    |¾�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/api.ozpay.ru/ozpay/venv/lib/python3.12/site-packages/ppadb/plugins/device/traffic.pyÚconvertz$Traffic.get_traffic.<locals>.convert0   s   € Ø�}‰}ŒÜ˜5“zÐ!à�ó    ú
)
Ú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“×&Ñ&Ó(ˆà"ˆáÜ—I‘I˜g vÓ.ˆEØ—+‘+˜a“.‰Cð à8×?Ñ?ÀÓDˆØ—‘˜C“ˆò	ð ˆÙØŸ™›×,Ñ,¨TÓ2ò .�Ü˜W d§j¡j£lÓ3�Ø—‘œe V˜nÕ-ð.ð ˆ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%   