code: def send_chat_action(chat_id, action,
                       **kwargs):
      
      # required args
      params = dict(
          chat_id=chat_id,
          action=action
      )
  
      return TelegramBotRPCRequest('sendChatAction', params=params, on_result=lambda result: result, **kwargs)
docs: Use this method when you need to tell the user that something is happening on the bot's side. The status is set
       for 5 seconds or less (when a message arrives from your bot, Telegram clients clear its typing status).
  
      Example: The ImageBot needs some time to process a request and upload the image. Instead of sending a text message
      along the lines of “Retrieving image, please wait…”, the bot may use sendChatAction with action = upload_photo.
      The user will see a “sending photo” status for the bot.
  
      We only recommend using this method when a response from the bot will take a noticeable amount of time to arrive.
  
      :param chat_id: Unique identifier for the target chat or username of the target channel (in the format @channelusername)
      :param action: Type of action to broadcast. Choose one, depending on what the user is about to receive:
                     typing for text messages, upload_photo for photos, record_video or upload_video for videos,
                     record_audio or upload_audio for audio files, upload_document for general files,
                     find_location for location data, record_video_note or upload_video_note for video notes.
      :param kwargs: Args that get passed down to :class:`TelegramBotRPCRequest`
  
      :type chat_id: int or str
      :type action: ChatAction
  
      :returns: Returns True on success.
      :rtype:  bool