| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | // First and foremost:
 | 
					
						
							|  |  |  | // I'm not a fan of `socket.io` because it's huge and complex.
 | 
					
						
							|  |  |  | // I much prefer `ws` because it's very simple and easy.
 | 
					
						
							|  |  |  | // That said, it's popular.......
 | 
					
						
							|  |  |  | "use strict"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Note: You DO NOT NEED socket.io
 | 
					
						
							|  |  |  | //       You can just use WebSockets
 | 
					
						
							|  |  |  | //       (see the websocket example)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-10 17:51:25 -07:00
										 |  |  | //require("greenlock-express")
 | 
					
						
							|  |  |  | require("../../") | 
					
						
							|  |  |  |     .init({ | 
					
						
							|  |  |  |         packageRoot: __dirname, | 
					
						
							|  |  |  |         configDir: "./greenlock.d", | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         maintainerEmail: "jon@example.com", | 
					
						
							|  |  |  |         cluster: false | 
					
						
							|  |  |  |     }) | 
					
						
							|  |  |  |     .ready(httpsWorker); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | function httpsWorker(glx) { | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |     var socketio = require("socket.io"); | 
					
						
							|  |  |  |     var io; | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |     // we need the raw https server
 | 
					
						
							|  |  |  |     var server = glx.httpsServer(); | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |     io = socketio(server); | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |     // Then you do your socket.io stuff
 | 
					
						
							|  |  |  |     io.on("connection", function(socket) { | 
					
						
							|  |  |  |         console.log("a user connected"); | 
					
						
							|  |  |  |         socket.emit("Welcome"); | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |         socket.on("chat message", function(msg) { | 
					
						
							|  |  |  |             socket.broadcast.emit("chat message", msg); | 
					
						
							|  |  |  |         }); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-01 15:14:07 -06:00
										 |  |  |     // servers a node app that proxies requests to a localhost
 | 
					
						
							|  |  |  |     glx.serveApp(function(req, res) { | 
					
						
							|  |  |  |         res.setHeader("Content-Type", "text/html; charset=utf-8"); | 
					
						
							|  |  |  |         res.end("Hello, World!\n\n💚 🔒.js"); | 
					
						
							|  |  |  |     }); | 
					
						
							| 
									
										
										
										
											2019-11-01 04:12:40 -06:00
										 |  |  | } |