Melalui protokol websocket, informasi transaksi bitcoin dikirim ke WeChat, yang dapat digunakan sebagai latihan untuk protokol WSS. Prinsipnya adalah dengan memperbarui listenKey setiap 30 menit, lalu berlangganan ke datastream yang berlangganan akun tersebut.
function main() {
var listenKey = JSON.parse(HttpQuery('https://api.binance.com/api/v1/userDataStream','',null,'X-MBX-APIKEY:'+APIKEY)).listenKey;
HttpQuery('https://api.binance.com/api/v1/userDataStream', {method:'DELETE',data:'listenKey='+listenKey}, null,'X-MBX-APIKEY:'+ APIKEY);
listenKey = JSON.parse(HttpQuery('https://api.binance.com/api/v1/userDataStream','',null,'X-MBX-APIKEY:'+ APIKEY)).listenKey;
var datastream = Dial("wss://stream.binance.com:9443/ws/"+listenKey, 100);
var update_listenKey_time = Date.now()/1000;
while (true){
if (Date.now()/1000 - update_listenKey_time > 1800){
update_listenKey_time = Date.now()/1000;
HttpQuery('https://api.binance.com/api/v1/userDataStream', {method:'PUT',data:'listenKey='+listenKey}, null,'X-MBX-APIKEY:'+ APIKEY);
Log('keep listenKey alive');
}
var data = datastream.read();
if(data){
data = JSON.parse(data);
if(data.e == 'executionReport' && data.x == 'TRADE'){
Log(data.S, data.s, 'amount is ', data.l, 'at price:', data.p, '@');
}
}
}
}