diff --git a/waku/discovery/waku_kademlia.nim b/waku/discovery/waku_kademlia.nim index 26f987439..edebcddff 100644 --- a/waku/discovery/waku_kademlia.nim +++ b/waku/discovery/waku_kademlia.nim @@ -19,7 +19,7 @@ import waku/waku_core, waku/node/peer_manager logScope: topics = "waku kademlia" -const DefaultKademliaDiscoveryInterval* = chronos.seconds(10) +const DefaultKademliaDiscoveryInterval* = chronos.seconds(60) type WakuKademlia* = ref object protocol*: KademliaDiscovery @@ -130,6 +130,7 @@ proc new*( bootstrapNodes: seq[(PeerId, seq[MultiAddress])], providedServices: var seq[ServiceInfo], loopInterval: Duration = DefaultKademliaDiscoveryInterval, + xprPublishing: bool = false, ): T = if bootstrapNodes.len == 0: debug "creating kademlia discovery as seed node (no bootstrap nodes)" @@ -141,6 +142,7 @@ proc new*( validator = kad_types.ExtEntryValidator(), selector = kad_types.ExtEntrySelector() ), services = providedServices, + xprPublishing = xprPublishing, ) return WakuKademlia( diff --git a/waku/factory/node_factory.nim b/waku/factory/node_factory.nim index 95a1e240b..58eee4f29 100644 --- a/waku/factory/node_factory.nim +++ b/waku/factory/node_factory.nim @@ -165,12 +165,17 @@ proc setupProtocols( var providedServices: seq[ServiceInfo] + # For testing lets use only one service + + let deliveryService = ServiceInfo(id: "delivery", data: @[]) + providedServices.add(deliveryService) + #mount mix if conf.mixConf.isSome(): let mixConf = conf.mixConf.get() - let mixService = ServiceInfo(id: MixProtocolID, data: @(mixConf.mixPubKey)) - providedServices.add(mixService) + #let mixService = ServiceInfo(id: MixProtocolID, data: @(mixConf.mixPubKey)) + #providedServices.add(mixService) (await node.mountMix(mixConf.mixKey)).isOkOr: return err("failed to mount waku mix protocol: " & $error) @@ -198,8 +203,8 @@ proc setupProtocols( except CatchableError: return err("failed to mount waku store protocol: " & getCurrentExceptionMsg()) - let storeService = ServiceInfo(id: WakuStoreCodec, data: @[]) - providedServices.add(storeService) + #let storeService = ServiceInfo(id: WakuStoreCodec, data: @[]) + #providedServices.add(storeService) if storeServiceConf.storeSyncConf.isSome(): let confStoreSync = storeServiceConf.storeSyncConf.get() @@ -213,10 +218,10 @@ proc setupProtocols( ).isOkOr: return err("failed to mount waku store sync protocol: " & $error) - let reconciliationService = ServiceInfo(id: WakuReconciliationCodec, data: @[]) - let transferService = ServiceInfo(id: WakuTransferCodec, data: @[]) - providedServices.add(reconciliationService) - providedServices.add(transferService) + #let reconciliationService = ServiceInfo(id: WakuReconciliationCodec, data: @[]) + #let transferService = ServiceInfo(id: WakuTransferCodec, data: @[]) + #providedServices.add(reconciliationService) + #providedServices.add(transferService) if conf.remoteStoreNode.isSome(): let storeNode = parsePeerInfo(conf.remoteStoreNode.get()).valueOr: @@ -301,15 +306,15 @@ proc setupProtocols( protectedShard = shardKey.shard, publicKey = shardKey.key node.wakuRelay.addSignedShardsValidator(subscribedProtectedShards, conf.clusterId) - let relayService = ServiceInfo(id: WakuRelayCodec, data: @[]) - providedServices.add(relayService) + #let relayService = ServiceInfo(id: WakuRelayCodec, data: @[]) + #providedServices.add(relayService) if conf.rendezvous: await node.mountRendezvous(conf.clusterId, shards) await node.mountRendezvousClient(conf.clusterId) - let rendezvousService = ServiceInfo(id: WakuRendezVousCodec, data: @[]) - providedServices.add(rendezvousService) + #let rendezvousService = ServiceInfo(id: WakuRendezVousCodec, data: @[]) + #providedServices.add(rendezvousService) # Keepalive mounted on all nodes try: @@ -347,8 +352,8 @@ proc setupProtocols( except CatchableError: return err("failed to mount waku lightpush protocol: " & getCurrentExceptionMsg()) - let lightpushService = ServiceInfo(id: WakuLightPushCodec, data: @[]) - providedServices.add(lightpushService) + #let lightpushService = ServiceInfo(id: WakuLightPushCodec, data: @[]) + #providedServices.add(lightpushService) mountLightPushClient(node) mountLegacyLightPushClient(node) @@ -372,8 +377,8 @@ proc setupProtocols( except CatchableError: return err("failed to mount waku filter protocol: " & getCurrentExceptionMsg()) - let filterService = ServiceInfo(id: WakuFilterPushCodec, data: @[]) - providedServices.add(filterService) + #let filterService = ServiceInfo(id: WakuFilterPushCodec, data: @[]) + #providedServices.add(filterService) await node.mountFilterClient() if conf.remoteFilterNode.isSome(): @@ -395,8 +400,8 @@ proc setupProtocols( return err("failed to mount waku peer-exchange protocol: " & getCurrentExceptionMsg()) - let peerXchangeService = ServiceInfo(id: WakuPeerExchangeCodec, data: @[]) - providedServices.add(peerXchangeService) + #let peerXchangeService = ServiceInfo(id: WakuPeerExchangeCodec, data: @[]) + #providedServices.add(peerXchangeService) if conf.remotePeerExchangeNode.isSome(): let peerExchangeNode = parsePeerInfo(conf.remotePeerExchangeNode.get()).valueOr: