Skip to content
 
 

Repository files navigation

NOTE

This fork allow using this library with newer gradle versions, so it affects only the Android part. see the original issue for information

nativescript-socket.io

Full-featured Socket.IO client implementation for NativeScript.

Status

Status npm npm dependency Status devDependency Status devDependency Status Build Status npm

This library is production-ready. Both Android and iOS implementations are stable and in sync.

Please check releases and changelog and roadmap for more information.

Dependencies

Android: Socket.IO-client Java v1.*

iOS: Socket.IO-Client-Swift v12.*

Install

tns plugin add nativescript-socket.io

Usage

const SocketIO = require('nativescript-socket.io');

SocketIO.enableDebug(); // optionnal

// or use your own debug function
// SocketIO.enableDebug(myCustomDebugFunction);

const options = {
  query: {
    token: 'SOME_TOKEN_HERE',
  },
  android: {
    // http://socketio.github.io/socket.io-client-java/apidocs/io/socket/client/IO.Options.html
  }
  ios: {
    // https://nuclearace.github.io/Socket.IO-Client-Swift/Enums/SocketIOClientOption.html
  }
};

const socketio = SocketIO.connect('http://somewhere/namespace', options);

socketio.on('connect', function(){
  console.log('connect');
});

socketio.on('hello', function(){
  console.log('hello', arguments);
});

socketio.on('request', function(info, ack){
  console.log('request', info);
  if (info === 'datetime') {
    ack(new Date());
  } elseif (info === 'random') {
    ack(Math.random());
  } else {
    ack(null);
  }
});

socketio.emit('hello', {
  username: 'someone',
});

socketio.emit('hello-ack', {
  username: 'someone',
}, function ack(){
  console.log('hello-ack', arguments);
})

Usage with TypeScript

import using either of the following:

import * as SocketIO from "nativescript-socket.io"`

// OR

const SocketIO = require("nativescript-socket.io")

Demo

  1. replace all instance of 192.168.1.111 with your IP address or domain.

  2. start the socket.io demo server

cd ./demo.server
npm start
  1. build and run the app
cd ./demo
tns run android

About

Fully-featured Socket.IO client implementation for NativeScript

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages