English help on website



hidemaru.createSocketServer(Ver9.35対応版)
目次JavaScript対応Hidemaruオブジェクト− createSocketServer
createSocketServerメソッドは、SocketServerオブジェクトを作成します。(V9.25以降)[非同期]
js{
  server = hidemaru.createSocketServer( function( socket ){ } );
}
パラメータ1(関数)
接続が発生したときに呼ばれる関数を指定します。
呼ばれる関数のパラメータはSocketIOです。

返り値
SocketServerオブジェクトを返します。



debuginfo 2;
jsmode "\\" + currentmacrofilename; //オブジェクトが他のマクロと被らないように固有の名前空間にしてください
js{
  if(typeof(server)=="undefined"){
    server=hidemaru.createSocketServer(onAccept);
    server.listen(51234);
    if(server.listening){
      console.log("Server started");
    }
  }
  
  function onAccept(socket){
    console.log("Server accept");
    if(typeof(socket)!="undefined"){
      socket.onReadLine(function(s){
        console.log("Server received:"+s);
        socket.write("(echo)"+s);
        });
    }
  }
}
endmacro;
debuginfo 2;
jsmode "\\" + currentmacrofilename; //オブジェクトが他のマクロと被らないように固有の名前空間にしてください
js{
  var g_aSocket={};
  if(typeof(server)=="undefined"){
    server=hidemaru.createSocketServer(onAccept);
    server.listen(51234);
    if(server.listening){
      console.log("Server started:"+server.port);
    }
  }
  
  function onAccept(socketNew){
    console.log("Server accept");
    if(typeof(socketNew)!="undefined"){
      var idSockNew=socketNew.id;
      g_aSocket[idSockNew]=socketNew;
      socketNew.onReadSeparated(onSeparated);
    }
  }
  
  function onSeparated(s,idSock){
    console.log("Server received:"+s);
    g_aSocket[idSock].write("(echo)"+s+"\r\n");
    g_aSocket[idSock].onReadSeparated(onSeparated);
  }
  
}
endmacro;
参照:
createSocketServer
createSocketClient
SocketServer
SocketIO