<!doctype> <html> <title>Whisper test</title> <head> <script type="text/javascript" src="../ext/bignumber.min.js"></script> <script type="text/javascript" src="../ext/ethereum.js/dist/ethereum.js"></script> </head> <body> <h1>Whisper test</h1> <button onclick="test()">Send</button> <button onclick="test2()">Private send</button> <table width="100%" id="table"> <tr> <td>Count</td> <td id="count"></td> </tr> <tr> <td>ID</td> <td id="id"></td> </tr> <tr> <td>Has identity</td> <td id="known"></td> </tr> </table> </body> <script type="text/javascript"> var web3 = require('web3'); web3.setProvider(new web3.providers.HttpSyncProvider('http://localhost:8080')); var shh = web3.shh; var id = shh.newIdentity(); document.querySelector("#id").innerHTML = id; document.querySelector("#known").innerHTML = shh.haveIdentity(id); var watch = shh.watch({topics: ["test"]}) watch.arrived(function(message) { document.querySelector("#table").innerHTML += "<tr><td colspan='2'>"+JSON.stringify(message)+"</td></tr>"; }); var selfWatch = shh.watch({to: id, topics: ["test"]}) selfWatch.arrived(function(message) { document.querySelector("#table").innerHTML += "<tr><td>To me</td><td>"+JSON.stringify(message)+"</td></tr>"; }); function test() { shh.post({topics: ["test"], payload: web3.fromAscii("test it")}); count(); } function test2() { shh.post({to: id, topics: ["test"], payload: web3.fromAscii("Private")}); count(); } function count() { document.querySelector("#count").innerHTML = watch.messages().length; } </script> </html>