
    N[i                     T    d dl m Z  d dlmZ d dlZd dlmZmZ d dlmZ  G d d      Zy)    )datetime)UnionN)rawutils)typesc                   l    e Zd Z	 	 	 	 	 	 	 ddddeeef   dedededed	ed
edededededed   ddfdZ	y)	SendVenueNselfzpyrogram.Clientchat_idlatitude	longitudetitleaddressfoursquare_idfoursquare_typedisable_notificationreply_to_message_idschedule_dateprotect_contentreply_markup)ztypes.InlineKeyboardMarkupztypes.ReplyKeyboardMarkupztypes.ReplyKeyboardRemoveztypes.ForceReplyreturnztypes.Messagec                 
  K   | j                  t        j                  j                  j	                  | j                  |       d{   t        j                  j                  t        j                  j                  ||      ||d||      d|xs d|	| j                         t        j                  |
      ||r|j                  |        d{   nd	             d{   }|j                  D ]  }t        |t        j                  j                  t        j                  j                   t        j                  j"                  f      s[t        j$                  j'                  | |j(                  |j*                  D ci c]  }|j,                  | c}|j.                  D ci c]  }|j,                  | c}t        t        j                  j"                               d{   c S  y7 7 $7 c c}w c c}w 7 w)a	  Send information about a venue.

        .. include:: /_includes/usable-by/users-bots.rst

        Parameters:
            chat_id (``int`` | ``str``):
                Unique identifier (int) or username (str) of the target chat.
                For your personal cloud (Saved Messages) you can simply use "me" or "self".
                For a contact that exists in your Telegram address book you can use his phone number (str).

            latitude (``float``):
                Latitude of the venue.

            longitude (``float``):
                Longitude of the venue.

            title (``str``):
                Name of the venue.

            address (``str``):
                Address of the venue.

            foursquare_id (``str``, *optional*):
                Foursquare identifier of the venue.

            foursquare_type (``str``, *optional*):
                Foursquare type of the venue, if known.
                (For example, "arts_entertainment/default", "arts_entertainment/aquarium" or "food/icecream".)

            disable_notification (``bool``, *optional*):
                Sends the message silently.
                Users will receive a notification with no sound.

            reply_to_message_id (``int``, *optional*):
                If the message is a reply, ID of the original message

            schedule_date (:py:obj:`~datetime.datetime`, *optional*):
                Date when the message will be automatically sent.

            protect_content (``bool``, *optional*):
                Protects the contents of the sent message from forwarding and saving.

            reply_markup (:obj:`~pyrogram.types.InlineKeyboardMarkup` | :obj:`~pyrogram.types.ReplyKeyboardMarkup` | :obj:`~pyrogram.types.ReplyKeyboardRemove` | :obj:`~pyrogram.types.ForceReply`, *optional*):
                Additional interface options. An object for an inline keyboard, custom reply keyboard,
                instructions to remove reply keyboard or to force a reply from the user.

        Returns:
            :obj:`~pyrogram.types.Message`: On success, the sent venue message is returned.

        Example:
            .. code-block:: python

                app.send_venue(
                    "me", latitude, longitude,
                    "Venue title", "Venue address")
        N)latlong )	geo_pointr   r   providervenue_id
venue_type)	peermediamessagesilentreply_to_msg_id	random_idr   
noforwardsr   )is_scheduled)invoker   	functionsmessages	SendMediaresolve_peerr   InputMediaVenueInputGeoPointrnd_idr   datetime_to_timestampwriteupdates
isinstanceUpdateNewMessageUpdateNewChannelMessageUpdateNewScheduledMessageMessage_parser"   usersidchats)r
   r   r   r   r   r   r   r   r   r   r   r   r   ris                  W/var/www/files/kim/lib/python3.12/site-packages/pyrogram/methods/messages/send_venue.py
send_venuezSendVenue.send_venue   s    X ++MM"",,,,W55ii//!ii55$& 6   #*. 0 
 +3t 3++-#99-H*?K<#5#5d#;;;QU' - 
 
0  		A!cii88!ii??!iiAAC D #]]11!))&'gg.QTT1W.&'gg.QTT1W.!+Asyy/R/R!S	 2   			- 6$ <)
< /.sh   AHG.BHG1H G4!A*H3H?G7H#G<7.H%H&	H1H4H7H)r   r   NNNNN)
__name__
__module____qualname__r   intstrfloatboolr   r?        r>   r	   r	      s      !%)#'"& $ %mmsCxm m 	m
 m m m m #m !m  m m 
m& 
'mrH   r	   )r   typingr   pyrogramr   r   r   r	   rG   rH   r>   <module>rK      s"   &     n nrH   