mirror of https://github.com/ethereum/go-ethereum
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.6 KiB
70 lines
1.6 KiB
<!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>
|
|
|
|
|
|
|