Beispiel #1
0
exports.parseCmdLine = function (argv) {
    if (argv !== undefined) {
        return opts.parse(options, argv, true);
    } else {
        return opts.parse(options, true);
    }
}
Beispiel #2
0
module.exports.run = function () {
	var livereload = require('./livereload'),
		resolve = require('path').resolve,
		opts = require('opts'),
		log = require('util').log,
		path,
		port,
		server;

	opts.parse([
		{
			short: 'p',
			long: 'port',
			description: 'Specify the port',
			value: true,
			required: false
		},
		{
			short: 'd',
			long: 'debug',
			description: 'Debug mode',
			value: false,
			required: false
		}
	].reverse(), true);

	port = opts.get('port') || 35729;
	path = resolve(process.argv[2] || '.');

	log('Starting LiveReload for ' + path + ' on port ' + port + '.');

	server = livereload.createServer({
		port: port,
		debug: opts.get('debug')
	});
	server.watch(path);
};
Beispiel #3
0
, long        : 'port'
, description : 'The port to listen for WebSocket connections on'
, value       : true
},
{ long        : 'key'
, description : 'The server private key file to use in PEM format'
, value       : true
, callback    : readPrivateKey
},
{ long        : 'cert'
, description : 'The server certificate file to use in PEM format'
, value       : true
, callback    : readCertificate
}
];
opts.parse(options, true);

// create credentials for server
if(credentials.key === null || credentials.cert === null) {
  createCredentials('server', credentials);
}

// function to create TLS server connection
var createTls = function(websocket) {
  var state = {
    authenticated: false
  };
  return forge.tls.createConnection({
    server: true,
    caStore: [],
    sessionCache: {},
Beispiel #4
0
var form = require('connect-form');
var RedisStore = require('connect-redis');

var db = require('../db');
var controllers = require('../controllers');
var formStrategy = require('../controllers/formAuthStrategy');

var config = require('../../config');

var server = express.createServer();

opts.parse([
{
    'short': 'p',
    'long': 'port',
    'description': 'HTTP port',
    'value': true,
    'required': false
}
], true);

var port = opts.get('port') || config.HTTP_PORT;

db.connect(function() {});

server.set('view engine', 'html');
server.set('views', __dirname + '/../views');
server.register('.html', require('ejs'));

server.use(form());
server.use(express.cookieParser());
#!node

var _ = require('underscore')._;
var http = require('http');
var growl = require('growl');
var lru = require('lru-cache');
var opts = require('opts');

opts.parse([ {
  short : "i",
  long : "interval",
  description : "Update check interval",
  value : true
} ], [], true);

var interval = opts.get("i") || (300 * 1000);

if (!new String(interval).match(/^[0-9]+$/)) {
  console.log('Invalid interval value:' + interval);
  process.exit(0);
}

var options = {
  host : 'search.npmjs.org',
  path : '/_view/updated?descending=true&limit=20'
};
var Seen = {};
function checkUpdate() {
  http.get(options, function(res) {
    var that = this;
    var resBody = '';
Beispiel #6
0
var redis = require("redis");
var opts = require("opts");
var redis_conf = require("./redis_conf.js");
var ws = require("ws");


opts.parse([
    {
        'short':       'p',
        'long':        'port',
        'description': 'WebSocket Port',
        'value':       true,
        'required':    true
    }
]);

var rediscli = redis.createClient(redis_conf.setting);
rediscli.setMaxListeners(0);

//init rooms
var rooms = ["selectroom","room1","room2","room3","room4","room5","room6","room7","room8"];
var userdata_base = {
            'image_xscale':1,
            'visible':1,
            'express':-1,
            'hp':100,
            'img_level':0,
            'status':"stand",
            'movement':0,
            'opponent':"",
            'opp_name':""
Beispiel #7
0
#!/usr/bin/env node

gTaskFinished_Of = {};

var opts = require("opts");
var spawn = require("child_process").spawn;

opts.parse([{ short: "v",
              long: "verbose",
              description: "Show verbose.",
              value: false, }],
           true);

var verbose = opts.get("verbose");
var coptstr = verbose ? "--verbose" : "";
var sc_fetcher = "fetch_script_reference.js";
var sc_fetcher_path = __dirname+"/"+sc_fetcher;
var pg_maker = "build_reference.js";
var pg_maker_path = __dirname+"/"+pg_maker;
run_make_plugin();


function start_task(tasknm) {
    gTaskFinished_Of[tasknm] = false;
}

function finish_task(tasknm) {
    gTaskFinished_Of[tasknm] = true;
}

function is_all_task_finished() {
Beispiel #8
0
var io = require('socket.io-client')
	 , opts = require('opts')
	 , tty = require('tty');
var log = console.log;
opts.parse([
    {
        'short': 'n',
        'long': 'number',
        'description': 'Start Client Number',
        'value': true,
        'required': false
    },
]);
var client_number = opts.get("number")||0;
for( var i=0;i<client_number;i++){
	create_client();
}


process.stdin.resume();
tty.setRawMode(true);
process.stdin.on('keypress', function(char, key) {
	if (key && key.ctrl && key.name == 'c') {
		process.exit()
	}else{
		log("create_client");
		create_client();
	}
});

function create_client()
Beispiel #9
0
  long: 'port',
  description: 'Port to serve content on',
  value: true,
  callback: function(value) {
    port = value;
  }
}, {
  short: 'h',
  long: 'host',
  value: true,
  description: 'Host to serve content on',
  callback: function(value) {
    host = value;
  }
}];
opts.parse(options);

mime.define({
  'application/x-chrome-extension': ['crx'], // Chrome Extensions / Apps
  'text/cache-manifest': ['.appcache', '.mf'] // Appcache manifest file.
});


function Server() {
  var self = this;
  this.server = http.createServer(this.onRequest.bind(this));
  this.server.listen(port, host);

  this.playingFile = null;

  var io = sio.listen(this.server);
var http = require('http'), https = require('https'), WebSocketClient = require('websocket').client,opts = require('opts'), url = require('url'), net = require('net');
var wslib = require('../../libs/websocket-proxy-lib');

// TODO 受信時にContent-Lengthを確認して送受信を終了させる
// TODO 8008番で待ち受けてproxy.pacを配布する
// TODO HTTPS対応

opts.parse([{
	'short':'h',
	'long':'host',
	'value': true,
	'description':'WebSocket Proxy Server Host',
	'required':false
},{
	'short':'p',
	'long':'port',
	'value': true,
	'description':'WebSocket Proxy Server Port',
	'required':false	
}],true);

var listen_ports = [ 8000, 8001, 8002, 8003, 8004, 8005, 8006, 8007 ];
var proxy_server = {
		host:(opts.get('h') || '127.0.0.1'),
		port:opts.get('p') || '8080',
};

var responseArray = {};
var seq = 0;

var client = new WebSocketClient();
Beispiel #11
0
Generator.prototype.setConfig = function() {
  var
    options = [
      {
        'short': 'd',
        'long': 'dir',
        'description': 'dir',
        'value': true
      },
      {
        'short': 'f',
        'long': 'file',
        'description': 'file',
        'value': true
      },
      {
        'short': 'l',
        'long': 'line',
        'description': 'line id',
        'value': true
      },
      {
        'short': 'p',
        'long': 'prefecture',
        'description': 'prefecture id',
        'value': true
      },
      {
        'short': 'r',
        'long': 'results',
        'description': 'start',
        'value': true
      },
      {
        'short': 's',
        'long': 'start',
        'description': 'start',
        'value': true
      },
      {
        'short': 't',
        'long': 'train',
        'description': 'train id',
        'value': true
      }
    ];

  opts.parse(options);

  // 都道府県ID指定
  if (opts.get('p')) {
    try {
      this.setConfigByPrefectureId(opts.get('p'));
    } catch (error) {
    }
  // 路線ID指定
  } else if (opts.get('l')) {
    this.setConfigByLineId(opts.get('l'));
  // ファイル指定
  } else if (opts.get('f')) {
    this.setConfigByFile(opts.get('f'));
  // 指定がない場合
  } else {
    // 全都道府県数分ループ
    for (var prefectureId = 1; prefectureId < 48; prefectureId++) {
      prefectureId = String(prefectureId).replace(/^([1-9]{1})$/, '0$1');
      this.setConfigByPrefectureId(prefectureId);
    }
  }

  this.results = opts.get('r') !== undefined ? opts.get('r') : CONSTANT.RESULTS_DEFAULT;
  this.start = opts.get('s') !== undefined ? opts.get('s') : CONSTANT.START_DEFAULT;
};
Beispiel #12
0
opts.parse([
	{
		short      : 'mode',
		long       : 'mode',
		value      : true,
		required   : true
	},
	{
		short      : 's',
		long       : 'simulation',
		description: 'シミュレーション。実際には保存されません',
		value      : false,
		required   : false
	},
	{
		short      : 'en',
		long       : 'enable',
		description: '有効化',
		value      : false,
		required   : false
	},
	{
		short      : 'dis',
		long       : 'disable',
		description: '無効化',
		value      : false,
		required   : false
	},
	{
		short      : 'rm',
		long       : 'remove',
		description: '削除',
		value      : false,
		required   : false
	},
	{
		short      : 'simple',
		long       : 'simple',
		description: '簡略表示',
		value      : false,
		required   : false
	},
	{
		short      : 'detail',
		long       : 'detail',
		description: '詳細',
		value      : false,
		required   : false
	},
	{
		short      : 'n',
		long       : 'num',
		description: '番号',
		value      : true,
		required   : false
	},
	{
		short      : 'now',
		long       : 'now',
		description: '現在',
		value      : false,
		required   : false
	},
	{
		short      : 'today',
		long       : 'today',
		description: '今日',
		value      : false,
		required   : false
	},
	{
		short      : 'tomorrow',
		long       : 'tomorrow',
		description: '明日',
		value      : false,
		required   : false
	},
	{
		short      : 'id',
		long       : 'id',
		description: 'ID',
		value      : true,
		required   : false
	},
	{
		short      : 'type',
		long       : 'type',
		description: 'タイプ',
		value      : true,
		required   : false
	},
	{
		short      : 'ch',
		long       : 'channel',
		description: 'チャンネル',
		value      : true,
		required   : false
	},
	{
		short      : '^ch',
		long       : 'ignore-channels',
		description: '無視チャンネル',
		value      : true,
		required   : false
	},
	{
		short      : 'sid',
		long       : 'service-id',
		description: 'Service ID',
		value      : true,
		required   : false
	},
	{
		short      : 'cat',
		long       : 'category',
		description: 'カテゴリー',
		value      : true,
		required   : false
	},
	{
		short      : 'start',
		long       : 'start',
		description: '時間範囲開始(時)',
		value      : true,
		required   : false
	},
	{
		short      : 'end',
		long       : 'end',
		description: '時間範囲終了(時)',
		value      : true,
		required   : false
	},
	{
		short      : 'mini',
		long       : 'minimum',
		description: '最低放送時間(秒)',
		value      : true,
		required   : false
	},
	{
		short      : 'maxi',
		long       : 'maximum',
		description: '最大放送時間(秒)',
		value      : true,
		required   : false
	},
	{
		short      : 'title',
		long       : 'titles',
		description: 'タイトル',
		value      : true,
		required   : false
	},
	{
		short      : '^title',
		long       : 'ignore-titles',
		description: '無視タイトル',
		value      : true,
		required   : false
	},
	{
		short      : 'desc',
		long       : 'descriptions',
		description: '説明',
		value      : true,
		required   : false
	},
	{
		short      : '^desc',
		long       : 'ignore-descriptions',
		description: '無視説明',
		value      : true,
		required   : false
	},
	{
		short      : 'flag',
		long       : 'flags',
		description: 'フラグ',
		value      : true,
		required   : false
	},
	{
		short      : '^flag',
		long       : 'ignore-flags',
		description: '無視フラグ',
		value      : true,
		required   : false
	},
	{
		short      : 'host',
		long       : 'host',
		description: 'host',
		value      : true,
		required   : false
	},
	{
		short      : 'port',
		long       : 'port',
		description: 'port',
		value      : true,
		required   : false
	},
	{
		short      : 'nick',
		long       : 'nick',
		description: 'nick',
		value      : true,
		required   : false
	}
].reverse(), true);
Beispiel #13
0
// 引数
opts.parse([
	{
		short      : 'f',
		long       : 'force',
		description: '全てのデータを破棄して再取得します',
		value      : false,
		required   : false
	},
	{
		short      : 's',
		long       : 'simulation',
		description: 'シミュレーション。実際には保存されません',
		value      : false,
		required   : false
	},
	{
		short      : 'ch',
		long       : 'channel',
		description: '指定したチャンネルのみ取得します',
		value      : true,
		required   : false
	},
	{
		short      : 'l',
		long       : 'load',
		description: '指定したTSをch引数で指定したチャンネルに取り込みます',
		value      : true,
		required   : false
	}
], true);
Beispiel #14
0
var express = require('express')
var app = express()
var server = require('http').createServer(app)
var io = require("socket.io").listen(server)
var pub = require('redis').createClient()
var sub = require('redis').createClient()
var opts = require('opts')




opts.parse([
  {
    short  : 'p',
    long   : 'port',
    description : 'Port som app lytter til',
    required : true,
    value : true
  }
], true);






io.set('log level' , 0)

app.configure(function(){
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
/*

Plese rewrite <YOUR DOTCLOUD HOST NAME>, <YOUR DROPBOX APP KEY> and <YOUR DROPBOX APP KEY SECRET> in source.

*/
var express = require( 'express' ),
    dbox    = require( 'dbox' ),
    opts    = require( 'opts' );

opts.parse([
    {
        'short': 'd',
        'long': 'debug',
        'description': 'debug mode',
        'value': false,
        'required': false
    },
]);

/* Mode ( callback url ) */
var callback = "http://<YOUR DOTCLOUD HOST NAME>.dotcloud.com/callback";
if ( opts.get('debug') ) {
    callback = "http://127.0.0.1:8080/callback";
}

/* Express */
var app = express.createServer();
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({
    secret: "saginomiya"
Beispiel #16
0
// load modules
var util      = require('util');
var exec      = require('child_process').exec;
var fs        = require('fs');
var path      = require('path');
var opts      = require('opts');
var xml2js    = require('xml2js');
var xmlParser = new xml2js.Parser();

// opts
opts.parse([
	{
		short      : 'fr',
		long       : 'force-reload',
		description: 'disable read EPG from cache',
		value      : false,
		required   : false
	}
]);

// load configuration
var config = JSON.parse( fs.readFileSync(CONFIG_FILE, 'ascii') || '{}' );

var rules = JSON.parse( fs.readFileSync(RULES_FILE, 'ascii') || '[]' );

var reserves = JSON.parse( fs.readFileSync(RESERVES_FILE, 'ascii') || '[]' );

config.recordedDir  = (config.recordedDir.match('{full}') === null) ? __dirname + config.recordedDir : config.recordedDir.replace('{full}', '');
config.scheduleData = (config.scheduleData.match('{full}') === null) ? __dirname + config.scheduleData : config.scheduleData.replace('{full}', '');
config.recordingLog = (config.recordingLog.match('{full}') === null) ? __dirname + config.recordingLog : config.recordingLog.replace('{full}', '');
Beispiel #17
0
var state = 0;
var rdb = redis.createClient();
var SPEC = JSON.parse(require('fs').readFileSync(specfile));
//var SPEC = {'data':'0123456789012345678901234567890'};
var socket = new net.Socket();
setEvent(socket);
opts.parse([
           {'short': 'd',
               'long': 'debug',
               'description': 'debug mode',
               'value': false,
               'required': false
           },
           {'short': 'p',
               'long': 'port',
               'description': 'socket port',
               'value': true,
               'required': false
           },
           {'short': 'h',
               'long': 'host',
               'description': 'host name',
               'value': true,
               'required': false
           }
]);
var DEBUG = opts.get('debug') || 0;
var PORT = opts.get('port') || 3012;
var HOST = opts.get('host') || 'localhost';
var PARAM = {'port': PORT, 'host': HOST};

//socket = net.connect(PARAM, function () {
Beispiel #18
0
	return function (s) {
		return '"' + (s || '')
			.replace(/\\/g, '\\\\').replace(/"/g, '\\"')
			.replace(/[\x00-\x1f\x7f]/g, CTRLCHR)
			.replace(/<\/(script)>/ig, '<\x2f$1\x3e') + '"';
	};
}();

opts.parse([
	{short: 'g', long: 'global', value: true,
		callback: function(v){ globalVars[v] = {} }},
	{short: 't', long: 'target', value: true,
		callback: function(v){ target = require('./targets/' + v);}},
	{short: 'm', long: 'module', value: true,
		callback: function(mod){ initModules.push(mod) }}
], [{name: 'input', required: true, callback: function(value){
	path.exists(value, function(existQ){
		if(existQ){
			new compiler.Script(
				require('fs').readFileSync(value, 'utf-8'), 
				null,
				[globalVars].concat(initModules).concat(target.clibs || {}),
				function(script){
					console.log(target.wrap(script.compile().wrappedSource, initModules.map(STRIZE)))
				})
		} else {
			util.debug('File ' + value + ' Does Not Exist')
		}
	})
}}])
Beispiel #19
0
var http    = require("http");
var express = require("express");
var io      = require("socket.io");
var easyrtc = require("easyrtc");
var opts    = require("opts");

opts.parse([
  {
    'short': 'p'
    , 'long': 'port'
    , 'description': 'port number'
    , 'value': true
    , 'required': false
  },
  {
    'short': 'r'
    , 'long': 'resource'
    , 'description': 'path to resource'
    , 'value': true
    , 'required': false
  }
]);

var port = opts.get('port') || 8080;
var resource = opts.get('resource') || '';


var httpApp = express();
httpApp.configure(function() {
  httpApp.get('/js/resource.js', function(req, res) {
    res.setHeader('Content-Type', 'text/javascript');
Beispiel #20
0
(function main() {

    try {
        var opts = require('opts');
    } catch (e) {
        console.error(e);
        return -1;
    }

    opts.parse([
        {
            'short'      : 'v',
            'long'       : 'version',
            'description': 'show version of dnsmux.js',
            'value'      : false,
            'required'   : false,
            'callback'   : opt_version
        },
        {
            'short'      : 's',
            'long'       : 'server',
            'description': 'dns server ip (default: 8.8.8.8)',
            'value'      : true,
            'required'   : false,
            'callback'   : undefined
        },
        {
            'short'      : 'p',
            'long'       : 'port',
            'description': 'dns server port (default: 53)',
            'value'      : true,
            'required'   : false,
            'callback'   : undefined
        },
        {
            'short'      : 'l',
            'long'       : 'local',
            'description': 'proxy service port (default: 53)',
            'value'      : true,
            'required'   : false,
            'callback'   : undefined
        },
        {
            'short'      : '1',
            'long'       : 'one',
            'description': 'one query use one tcp sesstion',
            'value'      : false,
            'required'   : false,
            'callback'   : undefined
        },
        {
            'short'      : 'd',
            'long'       : 'debug',
            'description': 'show debug messages',
            'value'      : false,
            'required'   : false,
            'callback'   : undefined
        },
        {
            'short'      : 'h',
            'long'       : 'help',
            'description': 'show help command',
            'value'      : false,
            'required'   : false,
            'callback'   : opt_help
        }
    ]);

    function opt_version() {
        console.log('version 0.0.2');
        process.exit(0);
    };

    function opt_help() {
        console.log(opts.help());
        process.exit(0);
    };

    DEBUG = opts.get('debug');

    var odd_data = Buffer(0);

    var TCP_OPT = {};
    TCP_OPT.host = opts.get('server');
    if (TCP_OPT.host == undefined) {
        TCP_OPT.host= '8.8.8.8';
    }
    TCP_OPT.port = opts.get('port');
    if (TCP_OPT.port == undefined) {
        TCP_OPT.port = 53;
    }

    var UDP_HOST = 'localhost';
    var UDP_PORT = opts.get('local');
    if (UDP_PORT == undefined) {
         UDP_PORT = 53;
    }

    var ONE = opts.get('one');
    if (ONE == undefined) {
        ONE = false; 

    }

    var tcp_client = new net.Socket({type: 'tcp4'});
    tcp_client.connect(TCP_OPT.port, TCP_OPT.host);
    tcp_client.setNoDelay(true);
    tcp_client.setKeepAlive(true, 1000);
     
    var udp_wait_buffer = [];
    var udp4_server = dgram.createSocket('udp4');
    var udp6_server = dgram.createSocket('udp6');
     
    tcp_client.on('error', function(e) {
        if (e['code'] == 'Unknown system errno 37') {
            tcp_client.destroy();
        } else if (e['code'] == 'Unknown system errno 56') {
            tcp_client.destroy();
        } else if (e['code'] == 'EPIPE') {
            tcp_client.destroy();
        } else if (e['code'] == 'ECONNRESET') {
            tcp_client.destroy();
        } else {
            console.error(e);
            console.log(dump(this));
            process.exit();
        }
    });

    tcp_client.on('connect', function(){
        if (DEBUG) {
            console.log('connection EST - ' + TCP_OPT.host + ':' + TCP_OPT.port);
        }
        while (udp_wait_buffer.length != 0) {
            if (tcp_client.writable == true) {
                var wait_msg = udp_wait_buffer.shift();
                udp_handler(tcp_client, wait_msg[0], wait_msg[1]);
            } else {
                break;
            }
        }
    });

    tcp_client.on('end', function(had_error){
    });

    tcp_client.on('close', function(){
        if (DEBUG) {
            console.log('connection END - ' + TCP_OPT.host + ':' + TCP_OPT.port);
        }
    });

    tcp_client.on('data', function(data){
        if (ONE) {
            tcp_client.end();
        }
        var byte_stream = new Buffer(data);
        odd_data = tcp_handler(udp4_server, udp6_server, odd_data, byte_stream);
    });

    udp4_server.on("listening", function () {
        if (DEBUG) {
            var address = udp4_server.address();
            console.log('udp4 listening - ' + address.address + ':' + address.port);
        }
    });

    udp4_server.on("close", function () { 
        process.exit();
    });

    udp4_server.on("message", function (msg, rinfo) {
        /*
        console.log("w.finished: " + tcp_client._writableState.finished);
        console.log("w.end:      " + tcp_client._writableState.end);
        console.log("w.ending:   " + tcp_client._writableState.ending);
        */
        if (tcp_client.writable == true) {
            udp_handler(tcp_client, msg, rinfo);
        } else {
            udp_wait_buffer.push([msg, rinfo]);
            if (tcp_client._connecting == false) {
                tcp_client.connect(TCP_OPT.port, TCP_OPT.host);
            }
        }
    });

    udp4_server.on('error', function(e) {
        console.error(e);
        process.exit();
    });

    udp6_server.on("listening", function () {
        if (DEBUG) {
            var address = udp6_server.address();
            console.log('udp6 listening - ' + address.address + ':' + address.port);
        }
    });

    udp6_server.on("close", function () { 
        process.exit();
    });

    udp6_server.on("message", function (msg, rinfo) {
        if (tcp_client.writable == true) {
            udp_handler(tcp_client, msg, rinfo);
        } else {
            udp_wait_buffer.push([msg, rinfo]);
            if (tcp_client._connecting == false) {
                tcp_client.connect(TCP_OPT.port, TCP_OPT.host);
            }
        }
    });

    udp6_server.on('error', function(e) {
        console.error(e);
        process.exit();
    });

    udp4_server.bind(UDP_PORT, UDP_HOST);
    udp6_server.bind(UDP_PORT, UDP_HOST);

}).call(this);