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