
    PIi8%                     X    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 	  G d de      Z
y)	    )AbstractObject)AbstractCrudObject)ObjectParser)FacebookRequest)TypeCheckerc                   6    e Zd Zd* fd	Z G d dej
                        Z G d d      Z G d d      Zed        Z	d+d	Z
d+d
Zd+dZd+dZd+dZi ddddddddddddddddddddddddd dd!dd"dd#d$d%d&d'dddddd(Zed)        Z xZS ),CustomConversionc                 >    d| _         t        t        |   |||       y )NT)_isCustomConversionsuperr	   __init__)selffbid	parent_idapi	__class__s       z/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/customconversion.pyr   zCustomConversion.__init__   s    #' .tYD    c                   h    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZy)CustomConversion.Field
account_idaggregation_rulebusinesscreation_timecustom_event_typedata_sourcesdefault_conversion_valuedescriptionevent_source_typefirst_fired_timeidis_archivedis_unavailablelast_fired_timenameoffline_conversion_data_setpixelretention_daysruleaction_source_typeadvanced_ruleevent_source_idcustom_conversion_idN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-    r   r   Fieldr      s}    !
-'/%#= #/-#)+&C#)1'+5r   r2   c                   \    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZy) CustomConversion.CustomEventTypeADD_PAYMENT_INFOADD_TO_CARTADD_TO_WISHLISTCOMPLETE_REGISTRATIONCONTACTCONTENT_VIEWCUSTOMIZE_PRODUCTDONATEFACEBOOK_SELECTEDFIND_LOCATIONINITIATED_CHECKOUTLEADLISTING_INTERACTIONOTHERPURCHASESCHEDULESEARCHSTART_TRIALSUBMIT_APPLICATION	SUBSCRIBEN)r.   r/   r0   add_payment_infoadd_to_cartadd_to_wishlistcomplete_registrationcontactcontent_viewcustomize_productdonatefacebook_selectedfind_locationinitiated_checkoutleadlisting_interactionotherpurchaseschedulesearchstart_trialsubmit_application	subscriber1   r   r   CustomEventTyper4   6   sm    -#+ 7%//'13#1	r   r]   c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zy
)!CustomConversion.ActionSourceTypeappbusiness_messagingchatemailrV   
phone_callphysical_storesystem_generatedwebsiteN)r.   r/   r0   r`   ra   rb   rc   rV   rd   re   rf   rg   r1   r   r   ActionSourceTyper_   L   s1    1!
)-r   rh   c                      y)Ncustomconversionsr1   )clss    r   get_endpointzCustomConversion.get_endpointX   s    "r   c                 ^    ddl m}  || j                  |      j                  ||||||      S )Nr   )	AdAccount)r   r   )%facebook_business.adobjects.adaccountrn   _apicreate_custom_conversion)	r   r   fieldsparamsbatchsuccessfailurependingrn   s	            r   
api_createzCustomConversion.api_create]   s;    CTYYY7PPQWY_afhoqx  {B  C  	Cr   c                 p   ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        |       	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   	api_utils:`success` and `failure` callback only work for batch call.r!   DELETE/NODEreuse_objectnode_idmethodendpointr   param_checkertarget_classapi_typeresponse_parserru   rv   )facebook_business.utilsr{   warningr   rp   r   r   r   
add_params
add_fieldsadd_to_batchassure_callexecuter   rr   rs   rt   ru   rv   rw   r{   param_typesenumsrequests              r   
api_deletezCustomConversion.api_deletea   s    5=g1W5H


X
Y

!J		%k59+(d;	
 	6"6"   INN??$$r   c                 p   ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        |       	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   rz   r|   r!   GETr~   r   r   r   r   r   r{   r   r   rp   r   r	   r   r   r   r   r   r   r   s              r   api_getzCustomConversion.api_get   s    5=g1W5H


X
Y

!J		%k59)(d;	
 	6"6"   INN??$$r   c                 x   ddl m} ||||j                  d       dddd}i }	t        | d   dd	| j                  t        ||	      t        d
t        |             }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   rz   r|   floatstring)r   r   r%   r!   POSTr~   r   r   r   r   r   r   s              r   
api_updatezCustomConversion.api_update   s    5=g1W5H


X
Y(/#


!J		%k59)(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} dddd}	d|j
                  j                  j                         i}
t        | d   d	d
| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j!                         S )Nr   rz   r|   )CustomConversionStatsResultaggregation_enumdatetime)aggregationend_time
start_timer!   r   z/statsEDGE)r   r   r   r   )r   r{   r   7facebook_business.adobjects.customconversionstatsresultr   Aggregation__dict__valuesr   rp   r   r   r   r   r   r   r   )r   rr   rs   rt   ru   rv   rw   r{   r   r   r   r   s               r   	get_statszCustomConversion.get_stats   s    5=g1W5H


X
Yg-"$
  ; G G P P W W Y
 "J		%k594(6QW[W`W`a	
 	6"6"   INN??$$r   r   r   r   r   Businessr   r   r   r   zlist<ExternalEventSource>r   intr   r   r    r!   r"   boolr#   r$   r%   r&   OfflineConversionDataSetr'   AdsPixelzunsigned int)r(   r)   r*   r+   r,   r-   c                     i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   |S )Nr]   rh   )r	   r]   r   r   rh   )rk   field_enum_infos     r   _get_field_enum_infoz%CustomConversion._get_field_enum_info   sM    -=-M-M-V-V-]-]-_)*.>.O.O.X.X._._.a*+r   )NNN)NNNNNF)r.   r/   r0   r   r   r2   r]   rh   classmethodrl   rx   r   r   r   r   _field_typesr   __classcell__)r   s   @r   r	   r	      s^   E6$$ 62   ,	 	 # #C%<%<%B!%FhH 	J 		
 	. 	3 	#E 	x 	X 	J 	h 	v 	& 	: 	  	&'A!" 	#$ )0!# (/L2  r   r	   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   r	   r1   r   r   <module>r      s+    F M A 1 5jjr   