private void send_message_complete_search(SearchCompleteData send)
        {
            send.time = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");

            string send_str = JsonConvert.SerializeObject(send);

            foreach (var session in session_ary.Values)
            {
                session.Send(send_str);

                add_log(send.time, "送信:SearchCompleteData");
            }
        }
        //メッセージ受信
        static void HandleServerNewMessageReceived(WebSocketSession session,
                                                   string e)
        {
            frm.Invoke((MethodInvoker) delegate()
            {
                MessageData recv = JsonConvert.DeserializeObject <MessageData>(e);

                switch (recv.command)
                {
                case "add_message_to_app":

                    frm.add_log(recv.time, "受信: " + recv.message);

                    break;

                case "start_search":

                    //検索開始

                    string keyword = recv.message;

                    frm.add_log(recv.time, "検索開始: " + keyword);

                    frm._browser_frm.keyword            = keyword;
                    frm._browser_frm.on_search_complete = delegate()
                    {
                        frm.add_log(recv.time, "検索終了: " + keyword);

                        //検索結果送信

                        SearchCompleteData send = new SearchCompleteData();

                        send.search_result_ary = frm._browser_frm.search_result_ary;

                        frm.send_message_complete_search(send);
                    };

                    frm._browser_frm.start();

                    break;
                }
            });
        }