§
    t�’j?  ã                  óp   — d dl mZ d dlZd dlmZ ddlmZmZ  ej        d¦  «        Z	 G d„ d¦  «        Z
dS )	é    )ÚannotationsN)ÚAnyé   )Ú_normalize_errorÚ_utc_timestampz"dscons.desktop_automation.zalo_msgc                  ó    — e Zd ZdZ	 	 ddd„ZdS )ÚDesktopZaloMessagingMixinz0Zalo message sending and confirmation workflows.NTÚtarget_typeÚstrÚmessageÚtarget_nameú
str | NoneÚverify_before_sendÚboolÚreturnúdict[str, Any]c              ƒ  ó$  K  — |dk    �r_d}|rz|                       dd¬¦  «        ƒ d{V —†}|r[|                     d¦  «        sFddt          ¦   «         |||dd	…         |d
ddœd|it          |                     d¦  «        ¦  «        dœS 	 |                      d|d|pddœ¦  «        ƒ d{V —†}|                     di ¦  «         |d                              |d|dd	…         t          |¦  «        |ddddœ¦  «         |�||                     dg ¦  «        dœ|d<   |S # t          $ rB}ddt          ¦   «         |||dd	…         |ddœd|idt          |¦  «        ddidœdœcY d}~S d}~ww xY wddt          ¦   «         |||dd	…         |ddœi ddddidœdœS )z0Safely send a message to a verified Zalo target.Úmy_documentNzMy DocumentsT)Úexpected_nameÚallow_partial_matchÚokFÚzalo_send_message_to_targetéP   Úlocal_contract)r
   r   Úmessage_previewr   ÚbackendÚimplementedÚverify_chatÚerror)r   ÚactionÚ	timestampÚdataÚ	artifactsr   Ú!zalo_send_message_to_my_documents)r   Úpress_enterÚsearch_termr"   Úlive_mcpÚlocal_mcp_direct)r
   r   r   Úmessage_lengthr   Údelivery_moder   r   r#   )r   Ú
mcp_resultÚ	mcp_error)r
   r   r   r   r   Úzalo_send_message_failedÚsupported_target_type)Úcoder   ÚdetailsÚunsupportedÚunsupported_targetzIContact send flow is not available in the current DSCons desktop backend.)
Úzalo_verify_active_chatÚgetr   r   Ú_run_mcp_server_toolÚ
setdefaultÚupdateÚlenÚ	Exceptionr   )Úselfr
   r   r   r   Úverify_resultÚresultÚexcs           úDC:\Projects\DSCons\app\services\desktop_automation\zalo_messaging.pyr   z5DesktopZaloMessagingMixin.zalo_send_message_to_target   sÓ  è è € ð ˜-Ò'Ñ'Ø ˆMØ!ð Ø&*×&BÒ&BØ"0Ø(,ð 'Cñ 'ô 'ð !ð !ð !ð !ð !ð !�ð !ð ¨×):Ò):¸4Ñ)@Ô)@ð à#Ø"?Ý%3Ñ%5Ô%5à+6Ø+6Ø/6°s¸°s¬|Ø2DØ'7Ø+0ð!ð !ð *¨=ð&õ "2°-×2CÒ2CÀGÑ2LÔ2LÑ!MÔ!Mðð ð ð$0Ø#×8Ò8Ø7à#*Ø'+Ø'2Ð'D°nðð ñ ô  ð ð ð ð ð ð �ð ×!Ò! &¨"Ñ-Ô-Ð-Ø�v”×%Ò%à'2Ø'5Ø+2°3°B°3¬<Ý*-¨g©,¬,Ø.@Ø)3Ø#5Ø'+ð	ð 	ñô ð ð !Ð,à'4Ø&,§j¢j°¸bÑ&AÔ&Að+ð +�F˜;Ñ'ð �øÝð ð ð àØ;Ý!/Ñ!1Ô!1à'2Ø'2Ø+2°3°B°3¬<Ø.@Ø#.ðð ð & }ð"ð !;Ý#& s¡8¤8Ø$;¸]Ð#Kðð ðð ð ð ð ð ð ð øøøøðøøøð. Ø3Ý'Ñ)Ô)à*Ø*Ø#*¨3¨B¨3¤<Ø&8Ø(ðð ð à,ØfØ3°]ÐCðð ð
ð 
ð 	
s   Â	BD Ä
E&Ä$7E!ÅE&Å!E&)NT)
r
   r   r   r   r   r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   © ó    r>   r	   r	      sB   € € € € € Ø:Ð:ð #'Ø#'ðe
ð e
ð e
ð e
ð e
ð e
ð e
rD   r	   )Ú
__future__r   ÚloggingÚtypingr   Úcommonr   r   Ú	getLoggerÚloggerr	   rC   rD   r>   ú<module>rK      s™   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø Ð Ð Ð Ð Ð à 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4à	ˆÔ	Ð?Ñ	@Ô	@€ðh
ð h
ð h
ð h
ð h
ñ h
ô h
ð h
ð h
ð h
rD   