Ë
    ÝÄ'j
  ã            	       óª   — d dl Z d dlZd dlmZ ddlmZ defd„Zdefd„Zde	defd	„Z
defd
„Zde	defd„Zde	defd„Zde	defd„Zdde	dededefd„Zy)é    N)Ú	ZammadAPIé   )ÚsettingsÚreturnc                  óx   — t        t        j                  j                  d«      › d�t        j                  ¬«      S )Nú/z/api/v1)ÚurlÚ
http_token)r   r   Ú
zammad_urlÚrstripÚzammad_token© ó    ú-/var/www/html/zammad-automation/app/zammad.pyÚ_clientr      s/   € ÜœH×/Ñ/×6Ñ6°sÓ;Ð<¸GÐDÔQY×QfÑQfÔgÐgr   c                  ó,   — ddt         j                  › �iS )NÚAuthorizationzToken token=)r   r   r   r   r   Ú_headersr      s   € Ø˜|¬H×,AÑ,AÐ+BÐCÐDÐDr   Ú	ticket_idc              ƒ   óP   ‡ K  — t        j                  ˆ fd„«      ƒ d {  –—† S 7 Œ­w)Nc                  óJ   •— t        «       j                  j                  ‰ «      S ©N)r   ÚticketÚfind©r   s   €r   ú<lambda>zget_ticket.<locals>.<lambda>   s   ø€ ¬7«9×+;Ñ+;×+@Ñ+@ÀÓ+K€ r   ©ÚasyncioÚ	to_threadr   s   `r   Ú
get_ticketr       s   øè ø€ Ü×"Ñ"Ó#KÓL×LÐLÐLús   ƒ&Ÿ$ &c               ƒ   óö  K  — t         j                  j                  d«      › d�} t        j                  «       4 ƒd {  –—† }|j                  | t        «       ¬«      ƒ d {  –—† }|j                  dk7  r	 d d d «      ƒd {  –—†  y|j                  «       }|j                  dd«      › d|j                  dd«      › �j                  «       cd d d «      ƒd {  –—†  S 7 Œž7 Œ}7 Œ_7 Œ# 1 ƒd {  –—†7  sw Y   y xY w­w)	Nr   z/api/v1/users/me©ÚheaderséÈ   Ú Ú	firstnameú Úlastname©
r   r   r   ÚhttpxÚAsyncClientÚgetr   Ústatus_codeÚjsonÚstrip)r	   ÚclientÚrÚdatas       r   Úget_agent_namer3      sê   è ø€ Ü× Ñ ×'Ñ'¨Ó,Ð-Ð-=Ð
>€CÜ× Ñ Ó"÷ Qð Q fØ—*‘*˜S¬(«*�*Ó5×5ˆØ�=‰=˜CÒØ÷Q÷ Qð Qð �v‰v‹xˆØ—(‘(˜;¨Ó+Ð,¨A¨d¯h©h°zÀ2Ó.FÐ-GÐH×NÑNÓP÷Q÷ Qò QøØ5øðQøð Qø÷ Q÷ Qñ Qüsv   ‚;C9½C¾C9ÁC$Á CÁ!C$Á5C9Â C ÂC9ÂAC$Ã
C9ÃC"ÃC9ÃC$Ã C9Ã"C9Ã$C6Ã*C-Ã+C6Ã2C9Úcustomer_idc              ƒ   óú  K  — t         j                  j                  d«      › d| › �}t        j                  «       4 ƒd {  –—† }|j                  |t        «       ¬«      ƒ d {  –—† }|j                  dk7  r	 d d d «      ƒd {  –—†  y|j                  «       }|j                  dd«      › d|j                  dd«      › �j                  «       cd d d «      ƒd {  –—†  S 7 Œž7 Œ}7 Œ_7 Œ# 1 ƒd {  –—†7  sw Y   y xY w­w)	Nr   ú/api/v1/users/r"   r$   r%   r&   r'   r(   r)   )r4   r	   r0   r1   r2   s        r   Úget_customer_namer7      sí   è ø€ Ü× Ñ ×'Ñ'¨Ó,Ð-¨^¸K¸=Ð
I€CÜ× Ñ Ó"÷ Qð Q fØ—*‘*˜S¬(«*�*Ó5×5ˆØ�=‰=˜CÒØ÷Q÷ Qð Qð �v‰v‹xˆØ—(‘(˜;¨Ó+Ð,¨A¨d¯h©h°zÀ2Ó.FÐ-GÐH×NÑNÓP÷Q÷ Qò QøØ5øðQøð Qø÷ Q÷ Qñ Qüsw   ‚=C;¿CÁ C;ÁC&Á"C Á#C&Á7C;ÂC"ÂC;ÂAC&ÃC;ÃC$ÃC;Ã C&Ã"C;Ã$C;Ã&C8Ã,C/Ã-C8Ã4C;c              ƒ   óH  K  — t         j                  j                  d«      › d| › �}t        j                  «       4 ƒd{  –—† }|j                  |t        «       ¬«      ƒ d{  –—† }|j                  dk7  ri cddd«      ƒd{  –—†  S |j                  «       }|j                  dd«      › d|j                  d	d«      › �j                  «       }||j                  d
d«      |j                  dd«      dœcddd«      ƒd{  –—†  S 7 ŒÅ7 Œ¤7 Œ…7 Œ# 1 ƒd{  –—†7  sw Y   yxY w­w)z7Return name, email, and organization for a Zammad user.r   r6   Nr"   r$   r&   r%   r'   r(   ÚemailÚorganization)Únamer9   r:   r)   )r4   r	   r0   r1   r2   r;   s         r   Úget_customer_infor<   '   s  è ø€ ä× Ñ ×'Ñ'¨Ó,Ð-¨^¸K¸=Ð
I€CÜ× Ñ Ó"÷ 

ð 

 fØ—*‘*˜S¬(«*�*Ó5×5ˆØ�=‰=˜CÒØ÷

÷ 

ñ 

ð �v‰v‹xˆØ—(‘(˜;¨Ó+Ð,¨A¨d¯h©h°zÀ2Ó.FÐ-GÐH×NÑNÓPˆàØ—X‘X˜g rÓ*Ø ŸH™H ^°RÓ8ñ
÷

÷ 

ò 

øØ5øð

øð 

ø÷ 

÷ 

ñ 

üsw   ‚=D"¿DÁ D"ÁDÁ"DÁ#DÁ7D"ÂD	ÂD"Â	A*DÃ3D"Ã?DÄ D"ÄDÄ	D"ÄD"ÄDÄDÄDÄD"c              ƒ   ój  K  — t         j                  j                  d«      › d| › �}t        j                  «       4 ƒd {  –—† }|j                  |t        «       ¬«      ƒ d {  –—† }|j                  «        |j                  «       cd d d «      ƒd {  –—†  S 7 ŒX7 Œ77 Œ	# 1 ƒd {  –—†7  sw Y   y xY w­w)Nr   z"/api/v1/ticket_articles/by_ticket/r"   )	r   r   r   r*   r+   r,   r   Úraise_for_statusr.   )r   r	   r0   r1   s       r   Úget_ticket_articlesr?   7   s—   è ø€ Ü× Ñ ×'Ñ'¨Ó,Ð-Ð-OÐPYÈ{Ð
[€CÜ× Ñ Ó"÷ ð  fØ—*‘*˜S¬(«*�*Ó5×5ˆØ	×ÑÔØ�v‰v‹x÷÷ ò øØ5øðø÷ ÷ ñ üsX   ‚=B3¿BÁ B3ÁBÁ"BÁ##BÂB3ÂBÂB3ÂBÂB3ÂB0Â$B'Â%B0Â,B3ÚbodyÚ
devops_urlc              ƒ   óz   ‡K  — |}|r	|d|› d�z  }| |ddddœŠt        j                  ˆfd„«      ƒ d {  –—† S 7 Œ­w)Nz<br><br><a href="u   ">View in Azure DevOps â†’</a>ÚnoteFz	text/html)r   r@   ÚtypeÚinternalÚcontent_typec                  óJ   •— t        «       j                  j                  ‰ «      S r   )r   Úticket_articleÚcreate)Úparamss   €r   r   zpost_comment.<locals>.<lambda>K   s   ø€ ¬7«9×+CÑ+C×+JÑ+JÈ6Ó+R€ r   r   )r   r@   rA   Ú	full_bodyrJ   s       @r   Úpost_commentrL   ?   sV   øè ø€ Ø€IÙØÐ(¨¨Ð4RÐSÑSˆ	ð ØØØØ#ñ€Fô ×"Ñ"Ó#RÓS×SÐSÐSús   ƒ1;´9µ;)r%   )r   r*   Ú	zammad_pyr   Úconfigr   r   Údictr   Úintr    Ústrr3   r7   r<   Úlistr?   rL   r   r   r   ú<module>rS      s³   ðÛ Û Ý Ý ðh�ó hðE�$ó EðM ð M¨ó MðQ˜có QðQ¨ð Q°ó Qð
¨ð 
°ó 
ð ¨ð °ó ñT #ð T¨Sð T¸cð TÈ4ô Tr   