github.com/jonasnick/go-ethereum@v0.7.12-0.20150216215225-22176f05d387/cmd/mist/assets/examples/whisper.html (about) 1 <!doctype> 2 <html> 3 <title>Whisper test</title> 4 <head> 5 <script type="text/javascript" src="../ext/bignumber.min.js"></script> 6 <script type="text/javascript" src="../ext/ethereum.js/dist/ethereum.js"></script> 7 </head> 8 <body> 9 10 <h1>Whisper test</h1> 11 12 <button onclick="test()">Send</button> 13 <button onclick="test2()">Private send</button> 14 15 <table width="100%" id="table"> 16 <tr> 17 <td>Count</td> 18 <td id="count"></td> 19 </tr> 20 21 <tr> 22 <td>ID</td> 23 <td id="id"></td> 24 </tr> 25 26 <tr> 27 <td>Has identity</td> 28 <td id="known"></td> 29 </tr> 30 </table> 31 </body> 32 33 <script type="text/javascript"> 34 var web3 = require('web3'); 35 web3.setProvider(new web3.providers.HttpSyncProvider('http://localhost:8080')); 36 37 var shh = web3.shh; 38 39 var id = shh.newIdentity(); 40 document.querySelector("#id").innerHTML = id; 41 document.querySelector("#known").innerHTML = shh.haveIdentity(id); 42 43 var watch = shh.watch({topics: ["test"]}) 44 watch.arrived(function(message) { 45 document.querySelector("#table").innerHTML += "<tr><td colspan='2'>"+JSON.stringify(message)+"</td></tr>"; 46 }); 47 48 var selfWatch = shh.watch({to: id, topics: ["test"]}) 49 selfWatch.arrived(function(message) { 50 document.querySelector("#table").innerHTML += "<tr><td>To me</td><td>"+JSON.stringify(message)+"</td></tr>"; 51 }); 52 53 function test() { 54 shh.post({topics: ["test"], payload: web3.fromAscii("test it")}); 55 count(); 56 } 57 58 function test2() { 59 shh.post({to: id, topics: ["test"], payload: web3.fromAscii("Private")}); 60 count(); 61 } 62 63 function count() { 64 document.querySelector("#count").innerHTML = watch.messages().length; 65 } 66 </script> 67 68 </html> 69 70