How to use the sails.io.js function in sails

To help you get started, we’ve selected a few sails examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github balderdashy / sails / test / integration / helpers / appHelper.js View on Github external
var _ = require('@sailshq/lodash');
var SocketIOClient = require('socket.io-client');
delete require.cache[require.resolve('socket.io-client')];
var SailsIOClient = require('sails.io.js');
var Sails = require('../../../lib/app');





// Build a Sails socket client instance.
//
// (Of course, this runs as soon as this file is first required.
//  But it's OK because we don't actually connect except in the
//  functions below.)
var io = SailsIOClient(SocketIOClient);
io.sails.environment = 'production';
io.sails.autoConnect = false;



// Make existsSync not crash on older versions of Node
fs.existsSync = fs.existsSync || path.existsSync;
// ^ probably not necessary anymore, this is only relevant for pre-Node-0.8
// (or maybe it was Node 0.8, can't remember). Anyways, it was back when
// `existsSync()` lived in the `path` lib.
github AngelMunoz / sails-nuxt / client / plugins / vue-socket.io.js View on Github external
import Vue from 'vue';
import socketio from "socket.io-client";
import VueSocketio from 'vue-socket.io';
import sailsio from 'sails.io.js';

const io = sailsio(socketio);

// try to reconnect if connection is lost
io.sails.reconnection = true;

io.sails.url = 'http://localhost:1337'; // or process.env.BASE_URL
// Remember this must match te same array in config/sockets.js (server config)
io.sails.transports = ['websocket'];
Vue.use(new VueSocketio({
  debug: process.env.NODE_ENV === 'development',
  connection: io.socket
}));
github meltyshev / planka / client / src / api / socket.js View on Github external
import socketIOClient from 'socket.io-client';
import sailsIOClient from 'sails.io.js';

import Config from '../constants/Config';

const io = sailsIOClient(socketIOClient);

io.sails.url = Config.SERVER_BASE_URL;
io.sails.autoConnect = false;
io.sails.reconnection = true;
io.sails.useCORSRouteToGetCookie = false;
io.sails.environment = process.env.NODE_ENV;

const { socket } = io;

socket.connect = socket._connect; // eslint-disable-line no-underscore-dangle

['GET', 'POST', 'PUT', 'PATCH', 'DELETE'].forEach((method) => {
  socket[method.toLowerCase()] = (url, data, headers) => new Promise((resolve, reject) => {
    socket.request(
      {
        method,
github lore / lore / packages / lore-hook-websockets-sails / src / SailsWebSocketConnection.js View on Github external
initialize: function(dispatchers, actions) {
    // sails.io.js modifies the `io` instance passed in which prevents you from
    // creating multiple clients using the same `io` import (will throw an
    // error if you try).
    // Currently this also means you can only talk to a SINGLE WebSockets server
    if (!sailsIoClient) {
      sailsIoClient = SailsIOClient(io);
      sailsIoClient.sails.url = this.serverUrl;
    }
    this.io = sailsIoClient;
  },
github sailshq / treeline1 / standalone / sails-client / index.js View on Github external
module.exports = function getSocketAndConnect(opts, cb){
  opts = opts || {};
  if (!opts.baseUrl) {
    return cb(new Error('opts.baseUrl is required!'));
  }
  opts.timeout = opts.timeout || 5000;

  // Instantiate the socket client (`io`)
  // (for now, you must explicitly pass in the socket.io client when using this library from Node.js)
  var io = sailsIOClient(socketIOClient);

  // Set some options:
  io.sails.autoConnect = false; // <= prevent a socket from being automatically connected
  io.sails.environment = 'production';    // <= disable log output

  var socket = io.sails.connect(opts.baseUrl, {
    multiplex: false,          //<= prevent weird entanglement if this happens to get required more than once
    transports: ['websocket']  //<= only use WebSockets (no need for long-polling, etc-- this isn't a browser.)
  });


  var isDoneAlready;
  var alarm = setTimeout(function (){
    if (isDoneAlready){
      return;
    }
github Tarrask / sails-template / template / client / plugins / socket.io.js View on Github external
export default (ctx, inject) => {
  const io = sailsIOClient(socketIOClient)
  ctx.$io = io
  ctx.$socket = io.socket
  inject('socket', io.socket)
}
github ndabAP / vue-sails-example / frontend / src / App.desktop.vue View on Github external
setIoHandler () {
      if (!this.io) {
        const isProductionEnvironment = (process.env.NODE_ENV === 'production')

        let io = sailsIo(socketIoClient)
        let url

        if (isProductionEnvironment) {
          url = `${location.protocol}//${location.hostname}${location.port ? ':' + location.port : ''}`
        } else url = 'http://localhost:1337'

        io.sails.url = url
        io.sails.environment = process.env.NODE_ENV || 'development'
        io.sails.useCORSRouteToGetCookie = false

        this.$set(this, 'io', io)
      }
    },
github Mordred / aurelia-sails-socket-client / src / index.js View on Github external
export function configure(config, configCallback) {
  let io = sailsIO(socketIO);
  io.sails.autoConnect = false;
  let sails = new SailsSocketClient();

  if (configCallback !== undefined && typeof(configCallback) === 'function') {
    configCallback(sails, io);
  }

  sails.setSocket(io.sails.connect());

  config.instance(SailsSocketClient, sails);
}
github Mordred / aurelia-sails-socket-client / dist / aurelia-sails-socket-client.js View on Github external
export function configure(config, configCallback) {
  let io = sailsIO(socketIO);
  io.sails.autoConnect = false;
  let sails = new SailsSocketClient();

  if (configCallback !== undefined && typeof(configCallback) === 'function') {
    configCallback(sails, io);
  }

  sails.setSocket(io.sails.connect());

  config.instance(SailsSocketClient, sails);
}
github Mordred / aurelia-sails-socket-client / dist / es2015 / aurelia-sails-socket-client.js View on Github external
export function configure(config, configCallback) {
  let io = sailsIO(socketIO);
  io.sails.autoConnect = false;
  let sails = new SailsSocketClient();

  if (configCallback !== undefined && typeof configCallback === 'function') {
    configCallback(sails, io);
  }

  sails.setSocket(io.sails.connect());

  config.instance(SailsSocketClient, sails);
}