On the answer's approach, I observe that each node can only send message to itself and other nodes don't filter/see those messages. For example, when node-1 sends a message to the network; it won't show up on the node-2 such that node-2's web3.shh.info{memory} remains 0, where I assume that it never catches the message.
I have tried using Web3.js and Web3.py where sent message on Node_1 does not show up on Node_2.
Then, node-1 sends message to the network, where only node-1 receives it but node-2 does not.
Following code is run on node-1's geth-client:
node-1's symKeyID is given:
web3.shh.post({
symKeyID: 'd5212e736703afbb21246e8acd192e4345ea910398544d765ed6b49f0ec524b5', //symKeyID of the node-1
ttl: 10,
topic: '0x07678231',
powTarget: 2.01,
powTime: 2,
payload: web3.fromAscii("Hello there!")
});
=> This is as far as I came by using Web3.py:
Node_1 runs shh_filter.get_new_entries() in order to catch messages but len(received_messages) returns 0, where there is no message is received and web3.shh.info{memory} remains 0.
receiverPubK: 0x04226d96bf9857ac0ba429c1e8b480a2811ce47cb526dbd3829d7586e5cae740198ba291f3eca0f279f82db8a136be90ea9ec629ed6cd1d45cc7f873159811757d
Press Enter to continue...
After Node_1's messages are sent; I have copied printed receiverPublicKey into receiver_pub variable on the following code. I run following code on Node 2. Node 2 sends a message to the network. Later I press enter on the Node_1 and any of those messages does not show up on theNode_1:
[Q] How could I send a whisper message from one node to another? What do I do wrong on my approaches?
On the reciever shh.info.memory remains 0 when sender node posts a message.
Please note that, I have opened issue on Web3.py and go-ethereum but no one responded. I have also tried one node is one of those nodes was bootnode and the other one needs to have its enode address in --bootnodes, which also did not work.
I have followed this answer.
On the answer's approach, I observe that each node can only send message to itself and other nodes don't filter/see those messages. For example, when
node-1
sends a message to the network; it won't show up on thenode-2
such that node-2'sweb3.shh.info{memory}
remains 0, where I assume that it never catches the message.I have tried using
Web3.js
andWeb3.py
where sent message onNode_1
does not show up onNode_2
.=> This is as far as I came by using
Web3.js
:The way I start
geth
:On node-1's geth-client:
On node-2's geth-client:
Then, node-1 sends message to the network, where only
node-1
receives it butnode-2
does not.Following code is run on
node-1's geth-client
:node-1's
symKeyID
is given:=> This is as far as I came by using
Web3.py
:Node_1
runsshh_filter.get_new_entries()
in order to catch messages butlen(received_messages)
returns 0, where there is no message is received andweb3.shh.info{memory}
remains 0.On node-1:
Output:
After
Node_1
's messages are sent; I have copied printedreceiverPublicKey
intoreceiver_pub
variable on the following code. I run following code onNode 2
.Node 2
sends a message to the network. Later I press enter on theNode_1
and any of those messages does not show up on theNode_1
:On node-2:
[Q] How could I send a whisper message from one node to another? What do I do wrong on my approaches?
On the reciever
shh.info.memory
remains 0 when sender node posts a message.Please note that, I have opened issue on
Web3.py
andgo-ethereum
but no one responded. I have also tried one node is one of those nodes was bootnode and the other one needs to have its enode address in--bootnodes
, which also did not work.