# Running Store Protocol ## How to Build: ``` # make wakunode2 is run as part of scripts2 target make scripts2 ``` Run two nodes and connect them: ``` # Starts listening on 60000 with RPC server on 8545. # Note the "listening on address" in logs. ./build/wakunode2 --ports-shift:0 # Run another node with staticnode argument ./build/wakunode2 --ports-shift:1 --staticnode:/ip4/0.0.0.0/tcp/60000/p2p/16Uiu2HAmF4tuht6fmna6uDqoSMgFqhUrdaVR6VQRyGr6sCpfS2jp --storenode:/ip4/0.0.0.0/tcp/60000/p2p/16Uiu2HAmF4tuht6fmna6uDqoSMgFqhUrdaVR6VQRyGr6sCpfS2jp ``` When flag `persist-messages` is passed messages are going to be persisted in-memory. If additionally flag `dbpath` is passed with a path, messages are persisted and stored in a database called `store` under the specified path. If flag `persist-messages` is not passed, messages are not persisted and stored at all. You should see your nodes connecting. Do basic RPC calls: ``` ./build/rpc_subscribe 8545 ./build/rpc_subscribe 8546 ./build/rpc_publish 8545 # enter your message in STDIN ./build/rpc_query 8546 # enter your content topic; default is "1" ``` You should see other node receive something.