/**
 * WebSocket Server Settings
 * (sails.config.sockets)
 *
 * Use the settings below to configure realtime functionality in your app.
 * (for additional recommended settings, see `config/env/production.js`)
 *
 * For all available options, see:
 * https://sailsjs.com/config/sockets
 */

module.exports.sockets = {
  onlyAllowOrigins: [
    "http://192.168.0.169:8080",
   "http://127.0.0.1:8080", 
   "http://jdd.afro-made.com", 
   "https://jdd.afro-made.com", 
   "https://vast-sea-03061.herokuapp.com", 
   "http://localhost:3000", 
   "http://app.logicielperlene.com", 
   "http://www.logicielperlene.com", 
   "http://logicielperlene.com", 
   "https://corossolwb.perlenedg.com", 
   "https://corossolwb-back.evolutiosystem.com", 
   "https://perlenedg.com", 
   "https://evolutiosystem.com",
   "https://cssaintemireille.com",
   "http://cssaintemireille.com",
   "https://back.ccnda-djeregbe.com",
   "https://plateforme.cssaintemireille.com",

  ],

  /***************************************************************************
  *                                                                          *
  * `transports`                                                             *
  *                                                                          *
  * The protocols or "transports" that socket clients are permitted to       *
  * use when connecting and communicating with this Sails application.       *
  *                                                                          *
  * > Never change this here without also configuring `io.sails.transports`  *
  * > in your client-side code.  If the client and the server are not using  *
  * > the same array of transports, sockets will not work properly.          *
  * >                                                                        *
  * > For more info, see:                                                    *
  * > https://sailsjs.com/docs/reference/web-sockets/socket-client           *
  *                                                                          *
  ***************************************************************************/

  transports: ['websocket'],


  /***************************************************************************
  *                                                                          *
  * `beforeConnect`                                                          *
  *                                                                          *
  * This custom beforeConnect function will be run each time BEFORE a new    *
  * socket is allowed to connect, when the initial socket.io handshake is    *
  * performed with the server.                                               *
  *                                                                          *
  * https://sailsjs.com/config/sockets#?beforeconnect                        *
  *                                                                          *
  ***************************************************************************/

  beforeConnect: function (handshake, proceed) {
    let key = handshake._query['Authorization']
    if (!key) {
      proceed("authentification fail", false)
    }
    return proceed(undefined, true);

  },
  // beforeConnect: function(handshake, proceed) {
  //
  //   // `true` allows the socket to connect.
  //   // (`false` would reject the connection)
  //   return proceed(undefined, true);
  //
  // },


  /***************************************************************************
  *                                                                          *
  * `afterDisconnect`                                                        *
  *                                                                          *
  * This custom afterDisconnect function will be run each time a socket      *
  * disconnects                                                              *
  *                                                                          *
  ***************************************************************************/

  // afterDisconnect: function(session, socket, done) {
  //
  //   // By default: do nothing.
  //   // (but always trigger the callback)
  //   return done();
  //
  // },


  /***************************************************************************
  *                                                                          *
  * Whether to expose a 'GET /__getcookie' route that sets an HTTP-only      *
  * session cookie.                                                          *
  *                                                                          *
  ***************************************************************************/

  // grant3rdPartyCookie: true,


};
