Last active
May 8, 2021 20:16
-
-
Save jochasinga/63ceadc19c5139f55660 to your computer and use it in GitHub Desktop.
Node/Socket.io server code for syncing data from Firebase
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var Firebase = require("firebase"); | |
var express = require("express"); | |
// Create HTTP Server | |
var app = express(); | |
var server = require("http").createServer(app); | |
// Attach Socket.io server | |
var io = require("socket.io")(server); | |
// Indicate port 3000 as host | |
var port = process.env.PORT || 3000; | |
// Create a new firebase reference | |
var firebaseRef = new Firebase( | |
"https://burning-limbo-6666.firebaseio.com/colors" | |
); | |
// Make the server listens on port 3000 | |
server.listen(port, function() { | |
console.log("Server listening on port %d", port); | |
}); | |
// Routing to static files | |
app.use(express.static(__dirname + "/public")); | |
// Socket server listens on connection event | |
io.on("connection", function(socket) { | |
console.log("Connected and ready!"); | |
// firebase reference listens on value change, | |
// and return the data snapshot as an object | |
firebaseRef.on("value", function(snapshot) { | |
var colorChange = snapshot.val(); | |
// Print the data object's values | |
console.log("snapshot R: " + colorChange.r); | |
console.log("snapshot B: " + colorChange.b); | |
console.log("snapshot G: " + colorChange.g); | |
}); | |
}); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment