Module: DefaultDangoReceive
- Included in:
- DangoServerFramework
- Defined in:
- lib/dango/default_dango_receive.rb
Overview
デフォルトのdango_receive_*群
Instance Method Summary collapse
-
#dango_receive__change_encode_type(ret_obj) ⇒ Object
action_nameがエンコード変更なら.
-
#dango_receive__monitor_get_server_info(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信.
-
#dango_receive__monitor_get_session_list(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信.
-
#dango_receive__monitor_get_shared(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信.
-
#dango_receive__monitor_get_socket_list(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信.
-
#dango_receive__monitor_send_system_message(ret_obj) ⇒ Object
メンテナンスコマンド:接続者全員へメッセージ送信.
-
#dango_receive__monitor_server_reload(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーデータ再読み込み.
-
#dango_receive__notice_heart_beat(ret_obj) ⇒ Object
クライアントから来たheart_beatなら.
Instance Method Details
#dango_receive__change_encode_type(ret_obj) ⇒ Object
action_nameがエンコード変更なら
20 21 22 23 |
# File 'lib/dango/default_dango_receive.rb', line 20 def dango_receive__change_encode_type(ret_obj) logger.debug "dango_receive__change_encode_type: #{ret_obj['encode_type'].inspect}" session[:encode_type] = ret_obj['encode_type'] end |
#dango_receive__monitor_get_server_info(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/dango/default_dango_receive.rb', line 31 def dango_receive__monitor_get_server_info(ret_obj) logger.debug "dango_receive__monitor_get_server_info:#{ret_obj.inspect}" dango_check_monitor_error() get_server_info = { 'server_start_time' => start_time.strftime("%Y-%m-%d %H:%M:%S"), 'up_time' => Time.now - start_time, 'recv_count' => recv_count, # 受信回数 'send_count' => send_count, # 送信回数 'recv_fail_count' => recv_fail_count, # 受信失敗回数 'send_fail_count' => send_fail_count, # 送信失敗回数 'log_level' => log_level_str, 'log_file' => log_file, 'log_max_size' => log_max_size, 'log_shift_age' => log_shift_age, } send_obj = {'code'=>0, 'get_server_info'=>get_server_info} send_notice('return__monitor_get_server_info', session[:sid], send_obj, :type=>2) end |
#dango_receive__monitor_get_session_list(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信
64 65 66 67 68 69 70 |
# File 'lib/dango/default_dango_receive.rb', line 64 def dango_receive__monitor_get_session_list(ret_obj) logger.debug "dango_receive__monitor_get_session_list:#{ret_obj.inspect}" dango_check_monitor_error() send_obj = {'code'=>0, 'get_session_list'=>session_list} send_notice('return__monitor_get_session_list', session[:sid], send_obj, :type=>2) end |
#dango_receive__monitor_get_shared(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信
55 56 57 58 59 60 61 |
# File 'lib/dango/default_dango_receive.rb', line 55 def dango_receive__monitor_get_shared(ret_obj) logger.debug "dango_receive__monitor_get_shared:#{ret_obj.inspect}" dango_check_monitor_error() send_obj = {'code'=>0, 'get_shared'=>shared.to_hash} send_notice('return__monitor_get_shared', session[:sid], send_obj, :type=>2) end |
#dango_receive__monitor_get_socket_list(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーからクライアントへのデータ送信
73 74 75 76 77 78 79 |
# File 'lib/dango/default_dango_receive.rb', line 73 def dango_receive__monitor_get_socket_list(ret_obj) logger.debug "dango_receive__monitor_get_socket_list:#{ret_obj.inspect}" dango_check_monitor_error() send_obj = {'code'=>0, 'get_socket_list'=>socket_list.keys} send_notice('return__monitor_get_socket_list', session[:sid], send_obj, :type=>2) end |
#dango_receive__monitor_send_system_message(ret_obj) ⇒ Object
メンテナンスコマンド:接続者全員へメッセージ送信
93 94 95 96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/dango/default_dango_receive.rb', line 93 def (ret_obj) logger.debug "dango_receive__monitor_send_system_message:#{ret_obj.inspect}" dango_check_monitor_error() # 全員へ_notice_system_messageを通知 socket_list.keys.each do |sid| next if session[:sid] == sid send_obj = { "message" => ret_obj["message"] } send_notice('_notice_system_message', sid, send_obj) end send_obj = {'code'=>0, } send_notice('return__monitor_send_system_message', session[:sid], send_obj, :type=>2) end |
#dango_receive__monitor_server_reload(ret_obj) ⇒ Object
メンテナンスコマンド:サーバーデータ再読み込み
82 83 84 85 86 87 88 89 90 |
# File 'lib/dango/default_dango_receive.rb', line 82 def dango_receive__monitor_server_reload(ret_obj) logger.debug "dango_receive__monitor_server_reload" dango_check_monitor_error() @server_reload = true logger.debug "@server_reload=#{@server_reload.inspect}" send_obj = {'code'=>0, 'message'=>'success'} send_notice('return__monitor_server_reload', session[:sid], send_obj, :type=>2) end |
#dango_receive__notice_heart_beat(ret_obj) ⇒ Object
クライアントから来たheart_beatなら
10 11 12 13 14 15 16 17 |
# File 'lib/dango/default_dango_receive.rb', line 10 def dango_receive__notice_heart_beat(ret_obj) logger.debug "dango_receive__notice_heart_beat:#{session[:sid]}:#{ret_obj['_hb_id']} " shared.transaction(:_heart_beat_time_hash) do |heart_beat_time_hash| heart_beat_time_hash[session[:sid]] = Time.now shared.commit(heart_beat_time_hash) end end |