diff --git a/chat/index.ts b/chat/index.ts index 632a71fc7c..d865a9d3f8 100644 --- a/chat/index.ts +++ b/chat/index.ts @@ -3,18 +3,11 @@ import { TOPIC } from '../build/main/lib/waku_relay'; import { Message } from '../build/main/lib/waku_message'; import readline from 'readline'; +import { delay } from '../build/main/test_utils/delay'; ;(async function() { const waku = await Waku.create(); - console.log('Waku started'); - await waku.dial('/ip4/134.209.139.210/tcp/30303/p2p/16Uiu2HAmPLe7Mzm8TsYUubgCAW1aJoeFScxrLj8ppHFivPo97bUZ'); - // await waku.dial('/ip4/134.209.113.86/tcp/9000/p2p/16Uiu2HAmVVi6Q4j7MAKVibquW8aA27UNrA4Q8Wkz9EetGViu8ZF1'); - console.log('Static node has been dialed'); - - // TODO: Automatically subscribe - await waku.relay.subscribe(); - console.log('Subscribed to waku relay'); // TODO: Bubble event to waku, infere topic, decode msg waku.libp2p.pubsub.on(TOPIC, event => { @@ -22,6 +15,31 @@ import readline from 'readline'; console.log(msg.utf8Payload()); }); + console.log('Waku started'); + // Status static node + await waku.dial('/ip4/134.209.139.210/tcp/30303/p2p/16Uiu2HAmPLe7Mzm8TsYUubgCAW1aJoeFScxrLj8ppHFivPo97bUZ'); + + // Richard's node + // await waku.dial('/ip4/134.209.113.86/tcp/9000/p2p/16Uiu2HAmVVi6Q4j7MAKVibquW8aA27UNrA4Q8Wkz9EetGViu8ZF1'); + + // await waku.dial('/ip4/0.0.0.0/tcp/60000/p2p/16Uiu2HAmDVYacyxN4t1SYBhRSTDr6nmYwuY6qWWTgagZm558rFA6') + + await delay(100); + + console.log('Static node has been dialed'); + + await new Promise((resolve) => + waku.libp2p.pubsub.once('gossipsub:heartbeat', resolve) + ); + + // TODO: Automatically subscribe + await waku.relay.subscribe(); + console.log('Subscribed to waku relay'); + + await new Promise((resolve) => + waku.libp2p.pubsub.once('gossipsub:heartbeat', resolve) + ); + const rl = readline.createInterface({ input: process.stdin, output: process.stdout @@ -31,7 +49,7 @@ import readline from 'readline'; rl.prompt(); rl.on('line', async (line) => { rl.prompt(); - const msg = Message.fromUtf8String(line); + const msg = Message.fromUtf8String('(js-chat) ' + line); await waku.relay.publish(msg); }); diff --git a/src/lib/waku.ts b/src/lib/waku.ts index be6a734ceb..7148dfb1d3 100644 --- a/src/lib/waku.ts +++ b/src/lib/waku.ts @@ -20,7 +20,7 @@ export default class Waku { static async create(staticNoiseKey?: bytes): Promise { const libp2p = await Libp2p.create({ addresses: { - listen: ['/ip4/0.0.0.0/tcp/0'], + listen: ['/ip4/0.0.0.0/tcp/55123'], }, modules: { transport: [TCP],