code: def advertise(self):
          
  
          # Advertise is disabled.
          if not self.enable_advertise:
              self.debug_print("Advertise is disbled!")
              return None
  
          # Direct net server is reserved for direct connections only.
          if self.net_type == "direct" and self.node_type == "passive":
              return None
  
          # Net isn't started!.
          if not self.is_net_started:
              raise Exception("Please call start() before you call advertise()")
  
          # Avoid raping the rendezvous server with excessive requests.
          t = time.time()
          if self.last_advertise is not None:
              if t - self.last_advertise <= advertise_interval:
                  return None
  
              if len(self.inbound) >= self.min_connected:
                  return None
  
          self.last_advertise = t
  
          # Tell rendezvous server to list us.
          try:
              # We're a passive node.
              if self.node_type == "passive" and\
                              self.passive_port is not None and\
                              self.enable_advertise:
                  self.rendezvous.passive_listen(self.passive_port,
                                                 self.max_inbound)
  
              """
              Simultaneous open is only used as a fail-safe for connections to
              nodes on the direct_net and only direct_net can list itself as
              simultaneous so its safe to leave this enabled.
              """
              if self.node_type == "simultaneous":
                  self.rendezvous.simultaneous_listen()
          except Exception as e:
              error = parse_exception(e)
              log_exception(self.error_log_path, error)
  
          return self
docs: This function tells the rendezvous server that our node is ready to
          accept connections from other nodes on the P2P network that run the
          bootstrap function. It's only used when net_type == p2p