Skip to content

Latest commit

 

History

History
73 lines (52 loc) · 2.59 KB

README.md

File metadata and controls

73 lines (52 loc) · 2.59 KB

Cettia JavaScript Client

Cettia JavaScript Client is a lightweight JavaScript client for browser-based and Node-based application and distributed via the npm registry with the name, cettia-client.

Installation

script tag

Add the following script tag to your HTML.

<script src="https://cdn.jsdelivr.net/npm/cettia-client/cettia-browser.min.js"></script>
window.cettia;

Bundler

Install and load the package.

npm install cettia-client
var cettia = require('cettia-client/cettia-bundler');

Note: You should use this way to use Cettia in React Native.

Node

Install and load the package.

npm install cettia-client
var cettia = require('cettia-client');

Usage

Cettia will be familiar to people using other real-time web frameworks and libraries. You open a socket and send and receive events with Cettia's API. Here is the main.js contents which is a Node example of the Cettia Starter Kit.

const cettia = require("cettia-client");
const username = "DH";
const uri = `http://localhost:8080/cettia?username=${encodeURIComponent(username)}`;
const socket = cettia.open(uri);

const addMessage = ({sender, text}) => console.log(`${sender} sends ${text}`);
socket.on("message", addMessage);

const addSystemMessage = text => addMessage({sender: "system", text});
socket.on("connecting", () => addSystemMessage("The socket starts a connection."));
socket.on("open", () => addSystemMessage("The socket establishes a connection."));
socket.on("close", () => addSystemMessage("All transports failed to connect or the connection was disconnected."));
socket.on("waiting", (delay) => addSystemMessage(`The socket will reconnect after ${delay} ms`));

// Once a socket has opened, sends a message every 5 seconds
socket.once("open", () => setInterval(() => socket.send("message", {text: `A message - ${Date.now()}`}), 5000));

Besides a Node example, the Cettia starter kit provides Web example and React Native example which demonstrate how you can use Cettia JavaScript Client in various runtime environment.

See Also