
    PIig                     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                       e Zd Zdf fd	Z G d dej
                        Z G d d      Z G d d      Z G d d	      Z G d
 d      Z	 G d d      Z
 G d d      Z G d d      Z G d d      Z G d d      ZdgdZdgdZdgdZdgdZdgdZdgdZdgdZdhdZdgdZdgdZdgd Zdgd!Zdgd"Zdgd#Zi d$d%d&d'd(d)d*d+d,d-d.d'd/d0d1d2d3d%d4d2d5d'd6d-d7d2d8d9d:d;d<d;d=d'i d>d'd?d2d@d;dAd2dBd2dCd2dDd0dEd0dFd0dGd0dHd0dId0dJd0dKd0dLd0dMd2dNd2i dOd%dPd0dQd0dRd2dSd2dTd2dUd2dVd2dWdXdYdZd[d2d\d2d]d%d^d_d`d'dad2dbd2d2d%d0dcd'd2d2d-d'd)d;ddZede        Z xZ S )iPostc                 >    d| _         t        t        |   |||       y )NT)_isPostsuperr	   __init__)selffbid	parent_idapi	__class__s       n/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/post.pyr   zPost.__init__   s    dD"4C8    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@y?)@
Post.Fieldactionsadmin_creatorallowed_advertising_objectivesapplicationbackdated_timecall_to_actioncan_reply_privatelycaptionchild_attachmentscomments_mirroring_domaincoordinatescreated_timedescriptioneventexpanded_heightexpanded_widthfeed_targetingfromfull_pictureheighticonidinstagram_eligibilityis_app_shareis_eligible_for_promotion
is_expired	is_hiddenis_inline_createdis_instagram_eligible
is_popularis_publishedis_sphericallinkmessagemessage_tagsmulti_share_end_cardmulti_share_optimizedname	object_idr   permalink_urlpictureplaceprivacypromotable_idpromotion_status
propertiesscheduled_publish_timesharessourcestatus_typestory
story_tags
subscribedtarget	targetingtimeline_visibilitytypeupdated_timeviavideo_buying_eligibilitywidthN)A__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   
field_fromr)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   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    r   r   Fieldr      sF   ')I&#))3/$?!#%#+))
% 7%$?!!
	/ 7!
%%%5 7		''-!
!9#!
!
	3%#= r   rY   c                   $    e Zd ZdZdZdZdZdZdZy)Post.BackdatedTimeGranularitydayhourminmonthnoneyearN)	rT   rU   rV   r\   r]   r^   r_   r`   ra   rX   r   r   BackdatedTimeGranularityr[   ]   s     r   rb   c                       e Zd ZdZdZy)Post.FormattingMARKDOWN	PLAINTEXTN)rT   rU   rV   markdown	plaintextrX   r   r   
Formattingrd   e   s    	r   ri   c                       e Zd ZdZdZy)Post.PlaceAttachmentSetting12N)rT   rU   rV   value_1value_2rX   r   r   PlaceAttachmentSettingrk   i   s    r   rp   c                        e Zd ZdZdZdZdZdZy)Post.PostSurfacesBlacklistrl   rm   345N)rT   rU   rV   rn   ro   value_3value_4value_5rX   r   r   PostSurfacesBlacklistrr   m   s    r   ry   c                       e Zd ZdZdZy)Post.PostingToRedspacedisabledenabledN)rT   rU   rV   r|   r}   rX   r   r   PostingToRedspacer{   t   s    r   r~   c                       e Zd ZdZdZy)Post.TargetSurfaceSTORYTIMELINEN)rT   rU   rV   rI   timelinerX   r   r   TargetSurfacer   x   s    r   r   c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	Post.UnpublishedContentTypeADS_POSTDRAFTINLINE_CREATED	PUBLISHEDREVIEWABLE_BRANDED_CONTENT	SCHEDULEDSCHEDULED_RECURRINGN)
rT   rU   rV   ads_postdraftinline_created	publishedreviewable_branded_content	scheduledscheduled_recurringrX   r   r   UnpublishedContentTyper   |   s'    )	%A"	3r   r   c                       e Zd ZdZdZy)Post.FeedStoryVisibilityhiddenvisibleN)rT   rU   rV   r   r   rX   r   r   FeedStoryVisibilityr      s    r   r   c                       e Zd ZdZdZdZy)Post.TimelineVisibilityforced_allowr   normalN)rT   rU   rV   r   r   r   rX   r   r   TimelineVisibilityr      s    %r   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successfailurefacebook_business.utilsr   warningr   _apir   r   r   
add_params
add_fieldsadd_to_batchassure_callexecuter   fieldsparamsbatchr   r   pendingr   param_typesenumsrequests              r   
api_deletezPost.api_delete   s    5=g1W5H


X
Y

!J		%k59+(d;	
 	6"6"   INN??$$r   c                 v   ddl m} ||||j                  d       ddd}i }	t        | d   dd| j                  t        ||	      t        d	t        | 
            }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r   r   string)primary_fb_page_idprimary_ig_user_idr,   GETr   r   r   r   r   r   r   r   r   r   r   r	   r   r   r   r   r   r   r   s              r   api_getzPost.api_get   s    5=g1W5H


X
Y"*"*

!J		%k59(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       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dddddddd }t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         d!}	t        | d"   d#d$| j                  t        ||	      t        d%t        | &      '      }
|
j                  |       |
j                  |       ||
j                  |||(       |
S |r|
S | j!                          |
j#                         S ))Nr   r   r   attached_medialist<Object>r   datetimebackdated_time_granularitybackdated_time_granularity_enumcomposer_session_idr   direct_share_statusunsigned intexplicitly_added_mentionee_idszlist<unsigned int>feed_story_visibilityfeed_story_visibility_enumis_explicit_locationboolr1   	is_pinnedr5   r8   og_action_type_idog_hide_object_attachment
og_icon_idog_object_id	og_phraseObjectz	list<int>timeline_visibility_enum)og_set_profile_badgeog_suggestion_mechanismr@   rA   product_itemrE   should_sync_product_editsource_type
sponsor_idsponsor_relationshiptagstext_format_preset_idrN   tracking)r   r   r   r,   POSTr   r   r   r   r   )r   r   r   r	   rb   __dict__valuesr   r   r   r   r   r   r   r   r   r   r   r   s              r   
api_updatezPost.api_update   s   5=g1W5H


X
Y 
n 
j 
 )*K 
 "8	 

 "> 
 -.B 
 $%A 
 #F 
  
  
 F 
 x 
   
 ( 
 ( 
  H! 
" # 
$ %+'/$&4(.#"$2%-#= ? 
D 04/L/L/U/U/\/\/^*.*B*B*K*K*R*R*T(,(?(?(H(H(O(O(Q

 "J		%k59(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r   r   r,   r   z/attachmentsEDGEr   r   r   r   r   r   s              r   get_attachmentszPost.get_attachments  s    5=g1W5H


X
Y

!J#		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                 h   ddl m} ||||j                  d       ddlm} ddddd	}	|j
                  j                  j                         |j                  j                  j                         |j                  j                  j                         d
}
t        | d   dd| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j!                  |||       |S |r|S | j#                          |j%                         S )Nr   r   r   Commentfilter_enumlive_filter_enum
order_enumr   )filterlive_filterordersince)r   r   r   r,   r   	/commentsr   r   r   r   )r   r   r   #facebook_business.adobjects.commentr   Filterr   r   
LiveFilterOrderr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   s               r   get_commentszPost.get_comments*  s#   5=g1W5H


X
Y?#-!	
 #>>2299; ' 2 2 ; ; B B D!--00779

 "J 		%k59 (g499M	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} dddddddd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   r   r   r   r   comment_privacy_value_enumr   )attachment_idattachment_share_urlattachment_urlcommentcomment_privacy_valuefeedback_sourcer8   nectar_moduleparent_comment_idpost_idr   r,   r   r   r   r   r   r   )r   r   r   r   r   CommentPrivacyValuer   r   r   r   r   r   r   r   r   r   r   r  s               r   create_commentzPost.create_commentP  s   5=g1W5H


X
Y?%$,&%A'%!) 
 )'*E*E*N*N*U*U*W
 "J 		%k59 (g499M	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r   r   )RTBDynamicPostr,   r   z/dynamic_postsr   r   r   r   )r   r   r   *facebook_business.adobjects.rtbdynamicpostr  r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r  r   r   r   s               r   get_dynamic_postszPost.get_dynamic_posts{  s    5=g1W5H


X
YM

!J%		%k59'(n$))T	
 	6"6"   INN??$$r   c                 V   ddl m} ||||j                  d       ddlm}	 |r| j                  ||||||      S dddddd	}
|	j                  j                  j                         |	j                  j                  j                         d
}t        | d   dd| j                  t        |
|      |	dt        |	| j                        d	      }|j                  |       |j                  |       ||j!                  |||       |S |r|S | j#                          |j%                         S )Nr   r   r   )InsightsResultdate_preset_enumr   period_enumr   )date_presetmetricperiodr   until)r  r  r,   r   z	/insightsr   r   F)	r   r   r   r   r   r   r   r   include_summaryr   )r   r   r   *facebook_business.adobjects.insightsresultr  get_insights_async
DatePresetr   r   Periodr   r   r   r   r   r   r   r   r   )r   r   r   is_asyncr   r   r   r   r   r  r   r   r   s                r   get_insightszPost.get_insights  s4   5=g1W5H


X
YM((RYZ
Z-$#
 !/ 9 9 B B I I K)0099@@B
 "J 		%k59'(n$))T!

 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddd}i }	t        | d   dd| j                  t        ||	      t        d	t        t        | j                  
            }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r   r   r   )r  r   r,   r   /likesr   r   r   r   r   r   s              r   delete_likeszPost.delete_likes  s    5=g1W5H


X
Y% 

!J		%k59+(6HdiiX	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       dddd}i }	t        | d   dd| j                  t        ||	      t        d	t        t        | j                  
            }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r   r   r   )r  r  r   r,   r   r'  r   r   r   r   r   r   s              r   create_likezPost.create_like  s    5=g1W5H


X
Y'% 


!J		%k59(d		J	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddi}	d|j
                  j                  j                         i}
t        | d   dd	| j                  t        |	|
      |d
t        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j!                         S )Nr   r   r   ProfilerO   	type_enumr,   r   z
/reactionsr   r   r   r   )r   r   r   #facebook_business.adobjects.profiler-  Typer   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r-  r   r   r   s               r   get_reactionszPost.get_reactions  s    5=g1W5H


X
Y?K
 ..557
 "J!		%k59 (g499M	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        t        | j                        	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   r   r   r,   r   z/sharedpostsr   r   r   r   r   r   s              r   get_shared_postszPost.get_shared_posts%  s    5=g1W5H


X
Y

!J#		%k59(d		J	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r   r   )Pager,   r   z/sponsor_tagsr   r   r   r   )r   r   r    facebook_business.adobjects.pager6  r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r6  r   r   r   s               r   get_sponsor_tagszPost.get_sponsor_tagsC  s    5=g1W5H


X
Y9

!J$		%k59(d		J	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r   r   r,  r,   r   z/tor   r   r   r   )r   r   r   r/  r-  r   r   r   r   r   r   r   r   r   r1  s               r   get_tozPost.get_tob  s    5=g1W5H


X
Y?

!J		%k59 (g499M	
 	6"6"   INN??$$r   r   listr   r   r   zlist<string>r   Applicationr   r   r   r   r   r   r   r   r    r!   r"   r#   r$   Eventr%   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?   r@   PlacerA   PrivacyrB   rC   rD   rE   floatrF   rG   rH   r-  )rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   c                    i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j
                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d	<   |S )
Nrb   ri   rp   ry   r~   r   r   r   r   )r	   rb   r   r   ri   rp   ry   r~   r   r   r   r   )clsfield_enum_infos     r   _get_field_enum_infozPost._get_field_enum_info  s)   6:6S6S6\6\6c6c6e23(,(@(@(G(G(I%484O4O4X4X4_4_4a01373M3M3V3V3]3]3_/0/3/E/E/N/N/U/U/W+,+/+=+=+F+F+M+M+O(484O4O4X4X4_4_4a01151I1I1R1R1Y1Y1[-.040G0G0P0P0W0W0Y,-r   )NNN)NNNNNF)NNFNNNF)!rT   rU   rV   r   r   rY   rb   ri   rp   ry   r~   r   r   r   r   r   r   r   r   r  r  r  r%  r(  r*  r2  r4  r8  r:  _field_typesclassmethodrD  __classcell__)r   s   @r   r	   r	      s   9>$$ >@        4 4  
%<%@>%@%<$%L)%V%>'%R%@%B%B%<%>%>?6?? 	).? 	}	?
 	*? 	(? 	v? 	8? 	V? 	$X? 	x? 	
? 	x? 	? 	>?  	.!?" 	(#?$ 	%?& 	'?( 	.)?* 	+?, 	h-?. 	 /?0 	1?2 	$V3?4 	f5?6 	V7?8 	V9?: 	 ;?< 	f=?> 	??@ 	A?B 	C?D 	8E?F 	G?H 	I?J 	 K?L 	M?N 	XO?P 	XQ?R 	S?T 	8U?V 	W?X 	9Y?Z 	[?\ 	H]?^ 	f_?` 	!'a?b 	(c?d 	(e?f 	xg?h '"$2}?L@  r   r	   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   r	   rX   r   r   <module>rM     s+    F M A 1 5x
x
r   