
    N[it                     D    d dl mZ d dlZd dlmZ d dlmZ  G d d      Zy)    )UnionN)raw)typesc                   N    e Zd Z	 	 	 	 ddddeeef   dedededed	ed
   ddfdZy)SendGameNselfzpyrogram.Clientchat_idgame_short_namedisable_notificationreply_to_message_id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                  t        j                  j                         |            d|xs d|| j                         ||r|j                  |        d{   nd             d{   }|j                  D ]  }t        |t        j                  j                  t        j                  j                  f      sBt        j                   j#                  | |j$                  |j&                  D ci c]  }|j(                  | c}|j*                  D ci c]  }|j(                  | c}       d{   c S  y7 o7 7 c c}w c c}w 7 w)u  Send a game.

        .. include:: /_includes/usable-by/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).

            game_short_name (``str``):
                Short name of the game, serves as the unique identifier for the game. Set up your games via Botfather.

            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.

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

            reply_markup (:obj:`~pyrogram.types.InlineKeyboardMarkup`, *optional*):
                An object for an inline keyboard. If empty, one ‘Play game_title’ button will be shown automatically.
                If not empty, the first button must launch the game.

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

        Example:
            .. code-block:: python

                await app.send_game(chat_id, "gamename")
        N)bot_id
short_name)id )peermediamessagesilentreply_to_msg_id	random_id
noforwardsr   )invoker   	functionsmessages	SendMediaresolve_peerr   InputMediaGameInputGameShortNameInputUserSelfrnd_idwriteupdates
isinstanceUpdateNewMessageUpdateNewChannelMessageMessage_parser   usersr   chats)	r   r	   r
   r   r   r   r   ris	            R/var/www/files/kim/lib/python3.12/site-packages/pyrogram/methods/bots/send_game.py	send_gamezSendGame.send_game   so    b ++MM"",,,,W55ii..yy33"yy668#2 4  /  +3t 3++-*?K<#5#5d#;;;QU - 
 
$  	A!cii88#)):[:[\]"]]11!))&'gg.QTT1W.&'gg.QTT1W.  	! 6 <
, /.sh   AGF4B
GF7G#F9$AG63G)F;=GG !
G+G,	G7G9G;G)NNNN)__name__
__module____qualname__r   intstrboolr1        r0   r   r      s~    
 &*#' $ IIsCxI I #	I
 !I I 
I 
Ir9   r   )typingr   pyrogramr   r   r   r8   r9   r0   <module>r<      s   &    J Jr9   