
    PIi5                     f    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	 d dl
mZ 	  G d dee      Zy	)
    )AbstractObject)AbstractCrudObject)ObjectParser)FacebookRequest)TypeChecker)ReachFrequencyPredictionMixinc                   B    e Zd Zd fd	Z G d dej
                        Z G d d      Z G d d      Z G d d	      Ze	d
        Z
ddZdd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%i d'd(d)d*d+dd,dd-dd.dd/dd0dd1dd2dd3dd4dd5dd6dd7dd8dd9d(i d:d;d<d=d>dd?d=d@d%dAd=dBddCd=dDd=dEd=dFddGddHddId#dJddKdLdMdi dNddOdPdQddRddSdPdTdPdUddVdPdWddXddYddZdd[dd\dd]dd^d_d`di dadbdcdddeddfddgddhddiddjddkddlddmddnddoddpddqdrdsddtdi duddvddwddxdydzdd{dd|dd}dd~dddLddPddddPddddPddPddddddddZe	d        Z xZS )ReachFrequencyPredictionc                 >    d| _         t        t        |   |||       y )NT)_isReachFrequencyPredictionsuperr
   __init__)selffbid	parent_idapi	__class__s       /var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/reachfrequencyprediction.pyr   z!ReachFrequencyPrediction.__init__   s    +/(&6tYL    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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.d-Z/d.Z0d/Z1d0Z2d1Z3d2Z4d3Z5d4Z6d5Z7d6Z8d7Z9d8Z:d9Z;d:Z<d;Z=d<Z>d=Z?d>Z@d?ZAd@ZBdAZCdBZDdCZEdDZFdEZGdFZHdGZIdHZJdIZKdJZLdKZMdLZNdMZOdNZPdOZQdPZRdQZSdRZTdSZUdTZVdUZWdVZXdWZYdXZZdYZ[dZZ\d[Z]d\Z^d]Z_d^Z`d_Zad`ZbdaZcdbZddcZeddZfdeZgdfZhdgZidhZjdiZkdjZldkZmyl)mReachFrequencyPrediction.Field
account_idactivity_status
ad_formatsauction_entry_option_indexaudience_size_lower_boundaudience_size_upper_boundbusiness_idbuying_typecampaign_group_idcampaign_idcampaign_time_startcampaign_time_stopcurrencycurve_budget_reachcurve_reachdaily_grp_curvedaily_impression_curvedaily_impression_curve_mapday_parting_scheduledestination_idend_timeexpiration_timeexternal_budgetexternal_impressionexternal_maximum_budgetexternal_maximum_impressionexternal_maximum_reachexternal_minimum_budgetexternal_minimum_impressionexternal_minimum_reachexternal_reachfeed_ratio_0000frequency_capfrequency_distribution_mapfrequency_distribution_map_agggrp_audience_sizegrp_avg_probability_mapgrp_country_audience_size	grp_curvegrp_dmas_audience_sizegrp_filtering_threshold_00
grp_points	grp_ratiogrp_reach_ratio
grp_statusholdout_percentageidimpression_curveinstagram_destination_idinstream_packagesinterval_frequency_cap#interval_frequency_cap_reset_periodis_balanced_frequencyis_bonus_mediais_conversion_goalis_higher_average_frequencyis_iois_reserved_buyingis_trpname	objectiveobjective_nameodax_objectiveodax_objective_nameoptimization_goaloptimization_goal_namepause_periods!percent_reach_at_target_frequencyplacement_breakdownplacement_breakdown_map	plan_name	plan_typeprediction_modeprediction_progressreference_idreservation_status
start_timestatusstory_event_type
target_cpmtarget_frequencytarget_frequency_reset_periodtarget_spectime_createdtime_updatedtimezone_idtimezone_name
topline_idtrending_topics_specvideo_view_length_constraintviewtagactionbudgetdeal_iddestination_ids
exceptionsexisting_campaign_id
grp_buying
impressionis_full_view is_reach_and_frequency_io_buyingnum_curve_pointsreachrf_prediction_idrf_prediction_id_to_releaserf_prediction_id_to_share	stop_timeN)n__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/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r    r   r   Fieldr      sN   !
+!
%A"$?!$?!##/#311#+!9%A"5)++3";&C#!9";&C#!9)+'%A")I&/";$?!	!9%A"!
	+!
1-#= /!9.S+ 7)1&C#1	))3/!9',O)3";		+3%1!
-!
-(G%#%%#'!
5'E$+!
5!
!
%+M(--&C#$?!	r   r   c                       e Zd ZdZdZdZy)ReachFrequencyPrediction.ActioncancelquotereserveN)r   r   r   r   r   r   r   r   r   Actionr      s    r   r   c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	#ReachFrequencyPrediction.BuyingTypeAUCTIONDEPRECATED_REACH_BLOCK	FIXED_CPMMIXED
REACHBLOCKRESEARCH_POLLRESERVEDN)
r   r   r   auctiondeprecated_reach_block	fixed_cpmmixed
reachblockresearch_pollreservedr   r   r   
BuyingTyper      s&    !9	!
'r   r   c                   D    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y))ReachFrequencyPrediction.InstreamPackagesBEAUTYENTERTAINMENTFOODNORMALPREMIUMREGULAR_ANIMALS_PETSREGULAR_FOODREGULAR_GAMESREGULAR_POLITICSREGULAR_SPORTSREGULAR_STYLEREGULAR_TV_MOVIESSPANISHSPORTSN)r   r   r   beautyentertainmentfoodnormalpremiumregular_animals_petsregular_foodregular_gamesregular_politicsregular_sportsregular_styleregular_tv_moviesspanishsportsr   r   r   InstreamPackagesr      sK    '5%'-)'/r   r   c                      y)Nreachfrequencypredictionsr   )clss    r   get_endpointz%ReachFrequencyPrediction.get_endpoint   s    *r   c                 ^    ddl m}  || j                  |      j                  ||||||      S )Nr   )	AdAccount)r   r   )%facebook_business.adobjects.adaccountr   _api!create_reach_frequency_prediction)	r   r   fieldsparamsbatchsuccessfailurependingr   s	            r   
api_createz#ReachFrequencyPrediction.api_create   s?    CTYYY7YYZ`bhjoqx  {B  DK  L  	L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_utilsz:`success` and `failure` callback only work for batch call.rF   GET/NODE)reuse_object)node_idmethodendpointr   param_checkertarget_classapi_typeresponse_parser)r   r   )facebook_business.utilsr   warningr   r   r   r
   r   
add_params
add_fieldsadd_to_batchassure_callexecute)r   r   r   r   r   r   r   r   param_typesenumsrequests              r   api_getz ReachFrequencyPrediction.api_get   s    5=g1W5H


X
Y

!J		%k591(d;	
 	6"6"   INN??$$r   r   intr   ReachFrequencyActivityr   zlist<ReachFrequencyAdFormat>r   r   zunsigned intr   r   r   stringr    r!   r"   datetimer#   r$   r%   ReachFrequencyEstimatesCurver&   zlist<unsigned int>r'   zlist<float>r(   r)   z$list<map<unsigned int, list<float>>>r*   zlist<ReachFrequencyDayPart>r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   z+list<map<unsigned int, list<unsigned int>>>r;   floatr<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   zlist<string>rJ   rK   rL   boolrM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   zlist<Object>r[   r\   )ReachFrequencyEstimatesPlacementBreakdownr]   zBlist<map<unsigned int, ReachFrequencyEstimatesPlacementBreakdown>>r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   	Targetingrk   rl   rm   rn   ro   rp   TrendingTopicsSpecrq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   )r~   r   r   r   r   c                    i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j
                  j                  j                         |d<   |S )Nr   r   r   )r
   r   __dict__valuesr   r   )r   field_enum_infos     r   _get_field_enum_infoz-ReachFrequencyPrediction._get_field_enum_info?  sk    $<$C$C$L$L$S$S$U!(@(K(K(T(T([([(]%.F.W.W.`.`.g.g.i*+r   )NNN)NNNNNF)r   r   r   r   r   r   r   r   r   classmethodr   r   r   _field_typesr   __classcell__)r   s   @r   r
   r
      sU   
Mk $$ k Z 
  " + +L%<lel3l 	4l 	%e	l
 	$^l 	$^l 	ul 	xl 	Ul 	xl 	zl 	jl 	Hl 	<l 	+l  	=!l" 	!-#l$ 	%&L%l& 	 ='l( 	()l* 	J+l, 	:-l. 	5/l0 	~1l2 	"53l4 	&x5l6 	!.7l8 	"59l: 	&~;l< 	!.=l> 	.?l@ 	>AlB 	ClD 	%&LElF 	)*WGlH 	WIlJ 	"8KlL 	$WMlN 	]OlP 	!'QlR 	%nSlT 	gUlV 	WWlX 	7YlZ 	h[l\ 	n]l^ 	h_l` 	0alb 	#Hcld 	^elf 	!.glh 	.~ilj 	 kll 	.mln 	nolp 	&vqlr 	slt 	nulv 	&wlx 	ylz 	^{l| 	(}l~ 	.l@ 	xAlB 	^ClD 	!(ElF 	GlH 	,UIlJ 	JKlL 	"#gMlN 	XOlP 	XQlR 	>SlT 	~UlV 	WlX 	nYlZ 	j[l\ 	.]l^ 	N_l` 	nalb 	Ncld 	(elf 	{glh 	
ilj 	
kll 	~mln 	olp 	nqlr 	 4slt 	'ulv 	8wlx 	(ylz 	.{l| 	8}l~ 	>l@ 	fAlB 	ClD 	fElF 	nGlH 	IlJ 	+FKlL 	NMlN  $'/%-#WlLZ  r   r
   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   Afacebook_business.adobjects.helpers.reachfrequencypredictionmixinr   r
   r   r   r   <module>r      s1    F M A 1 5 ko!or   