code: def mark_received(self, visibility_timeout=None):
          
          if visibility_timeout:
              visibility_timeout = int(visibility_timeout)
          else:
              visibility_timeout = 0
  
          if not self.approximate_first_receive_timestamp:
              self.approximate_first_receive_timestamp = int(unix_time_millis())
  
          self.approximate_receive_count += 1
  
          # Make message visible again in the future unless its
          # destroyed.
          if visibility_timeout:
              self.change_visibility(visibility_timeout)
  
          self.receipt_handle = generate_receipt_handle()
docs: When a message is received we will set the first receive timestamp,
          tap the ``approximate_receive_count`` and the ``visible_at`` time.