BoxLang 🚀 A New JVM Dynamic Language Learn More...

Socket.IO-Lucee

v0.6.2+0000115 Projects

Socket.io-lucee - Socket.IO protocol for Lucee

Continuous Integration

Socket.io-Lucee is a Socket.IO server implementation for the Lucee webserver. Socket.IO is a javascript library for realtime web applications. You can use the Socket.io-lucee project to marry your Lucee server with your frontend client(s) using the Socket.IO client library.

The project is currently in an ALPHA state. This means it is suitable for experimenting with, but unlikely that it is ready for production use. We have implemented much of the core feature set, but there is much to do to ensure that we have a robust, performant and feature complete set.

A note on Socket.IO version compatibility

Important note: The project currently supports up to version 2.3.1 of the Socket.IO client. Version 3.0.0 has very recently been released (as of November 2020) and we will need to wait for downstream project updates before we can tackle the upgrade.

Getting started

We recommend you follow the installation guide and getting started tutorial. However, below is a super-brief outline of how you use the project:

Lucee code

// create and start the embdeed Socket.IO server
io = new socketiolucee.models.SocketIoServer();

// listen to default namespace connection events and send an event to any sockets that connect
io.on( "connect", function( socket ){
	socket.send( "Hello world from Lucee @ #Now()#" );
} );

Frontend client

<!DOCTYPE html>
<html>
<head>
	<title>Socket.io-Lucee: Hello world</title>
</head>
<body>
	<invalidTag src="http://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
	<invalidTag src="https://cdn.socket.io/socket.io-2.3.1.js"></script>
	<invalidTag>
		// connect to our server
		var socket = io( "127.0.0.1:3000/" );

		// listen to the message event and output the message
		socket.on( 'message', function( message ){
			$( "#output" ).append( $( "<p>" + message + "</p>" ) );
		} );
	</script>
	<div id="output"></div>
</body>

Documentation

Full documentation and tutorials can be found here: https://pixl8.github.io/socket.io-lucee/

License

This project is licensed under the GPLv2 License - see the LICENSE.txt file for details.

Authors

The project is maintained by The Pixl8 Group. The lead developer is Dominic Watson.

Code of conduct

We are a small, friendly and professional community. For the eradication of doubt, we publish a simple code of conduct and expect all contributors, users and passers-by to observe it.

Changelog

v0.1.0

  • First alpha with basics of the core feature set, a test-harness application and documentation for the existing features.

$ box install socketiolucee

No collaborators yet.
     
  • {{ getFullDate("2020-11-17T16:58:38Z") }}
  • {{ getFullDate("2021-04-23T04:54:40Z") }}
  • 4,105
  • 63,093