async def edit_message_live_location(self, latitude: base.Float, longitude: base.Float,
                                         chat_id: typing.Union[base.Integer, base.String, None] = None,
                                         message_id: typing.Union[base.Integer, None] = None,
                                         inline_message_id: typing.Union[base.String, None] = None,
                                         reply_markup: typing.Union[types.InlineKeyboardMarkup,
                                                                    None] = None) -> types.Message or base.Boolean:
        """
        Use this method to edit live location messages sent by the bot or via the bot (for inline bots).
        A location can be edited until its live_period expires or editing is explicitly disabled by a call
        to stopMessageLiveLocation.

        Source: https://core.telegram.org/bots/api#editmessagelivelocation

        :param chat_id: Required if inline_message_id is not specified
        :type chat_id: :obj:`typing.Union[base.Integer, base.String, None]`
        :param message_id: Required if inline_message_id is not specified. Identifier of the sent message
        :type message_id: :obj:`typing.Union[base.Integer, None]`
        :param inline_message_id: Required if chat_id and message_id are not specified. Identifier of the inline message
        :type inline_message_id: :obj:`typing.Union[base.String, None]`
        :param latitude: Latitude of new location
        :type latitude: :obj:`base.Float`
        :param longitude: Longitude of new location
        :type longitude: :obj:`base.Float`
        :param reply_markup: A JSON-serialized object for a new inline keyboard
        :type reply_markup: :obj:`typing.Union[types.InlineKeyboardMarkup, None]`
        :return: On success, if the edited message was sent by the bot, the edited Message is returned,
            otherwise True is returned.
        :rtype: :obj:`typing.Union[types.Message, base.Boolean]`
        """
        reply_markup = prepare_arg(reply_markup)
        payload = generate_payload(**locals())

        result = await self.request(api.Methods.EDIT_MESSAGE_LIVE_LOCATION, payload)
        if isinstance(result, bool):
            return result
        return types.Message(**result)
async def edit_message_live_location ( self , latitude : base . Float , longitude : base . Float , chat_id : typing . Union [ base . Integer , base . String , None ] = None , message_id : typing . Union [ base . Integer , None ] = None , inline_message_id : typing . Union [ base . String , None ] = None , reply_markup : typing . Union [ types . InlineKeyboardMarkup , None ] = None ) -> types . Message or base . Boolean : reply_markup = prepare_arg ( reply_markup ) payload = generate_payload ( ** locals ( ) ) result = await self . request ( api . Methods . EDIT_MESSAGE_LIVE_LOCATION , payload ) if isinstance ( result , bool ) : return result return types . Message ( ** result )
Use this method to edit live location messages sent by the bot or via the bot (for inline bots).
        A location can be edited until its live_period expires or editing is explicitly disabled by a call
        to stopMessageLiveLocation.

        Source: https://core.telegram.org/bots/api#editmessagelivelocation

        :param chat_id: Required if inline_message_id is not specified
        :type chat_id: :obj:`typing.Union[base.Integer, base.String, None]`
        :param message_id: Required if inline_message_id is not specified. Identifier of the sent message
        :type message_id: :obj:`typing.Union[base.Integer, None]`
        :param inline_message_id: Required if chat_id and message_id are not specified. Identifier of the inline message
        :type inline_message_id: :obj:`typing.Union[base.String, None]`
        :param latitude: Latitude of new location
        :type latitude: :obj:`base.Float`
        :param longitude: Longitude of new location
        :type longitude: :obj:`base.Float`
        :param reply_markup: A JSON-serialized object for a new inline keyboard
        :type reply_markup: :obj:`typing.Union[types.InlineKeyboardMarkup, None]`
        :return: On success, if the edited message was sent by the bot, the edited Message is returned,
            otherwise True is returned.
        :rtype: :obj:`typing.Union[types.Message, base.Boolean]`