Ping 0380 ms, pong!
Ping 1230 ms, pong!
Ping 2254 ms, pong!
Ping 3209 ms, pong!
Ping 4385 ms, pong!
Ping 5169 ms, pong!
Ping 6162 ms, pong!
Ping 71463 ms, pong!
Ping 8170 ms, pong!/**
* A user has send a ping action.
*/
exports.onPingAction = functions.database.ref('/users/{uid}/action/ping/{refreshToken}').onWrite(e => {
const uid = e.params['uid'];
const refreshToken = e.params['refreshToken'];
return admin.database().ref(`/users/${uid}/response/pong/${refreshToken}`).set(e.data.val());
});
const uid = firebase.auth().currentUser.uid;
const refreshToken = firebase.auth().currentUser.refreshToken;
const pingKeys = {};
let pingKeyInc = 0;
const sendPing = () => {
if (firebase.auth().currentUser !== null) {
const pingKey = pingKeyInc++;
pingKeys[pingKey] = Date.now();
console.log(`Ping ${pingKey}`);
return firebase.database().ref(`/users/${uid}/action/ping/${refreshToken}`).set(pingKey);
} else {
return Promise.reject('You are not signed in');
}
};
firebase.database().ref(`/users/${uid}/response/ping/${refreshToken}`).on('value', (e) => {
const pongKey = e.val();
const ms = Date.now() - pingKeys[pongKey];
console.log(`${ms} ms, pong!\n`);
// Send new ping.
sendPing();
});
firebase.database().ref(`/users/${uid}/response/ping/${refreshToken}`).on('value', (e) => {
const pongKey = e.val();
const ms = Date.now() - pingKeys[pongKey];
console.log(`${ms} ms, pong!\n`);
// Send new ping, when pong is received.
sendPing();
});
// Send initial ping
sendPing();
--
You received this message because you are subscribed to a topic in the Google Groups "Firebase Google Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/firebase-talk/muklfSitOho/unsubscribe.
To unsubscribe from this group and all its topics, send an email to firebase-talk+unsubscribe@googlegroups.com.
To post to this group, send email to fireba...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/firebase-talk/fe18b927-e215-47dc-932f-f1921f8ecc65%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.