{"id":22107,"date":"2019-09-21T09:27:38","date_gmt":"2019-09-21T00:27:38","guid":{"rendered":"https:\/\/agrimo.jp\/wp\/?page_id=22107"},"modified":"2020-01-17T22:16:51","modified_gmt":"2020-01-17T13:16:51","slug":"%ef%bc%92%ef%bc%8ewebsocket-api","status":"publish","type":"page","link":"https:\/\/agrimo.jp\/wp\/?page_id=22107","title":{"rendered":"\uff12\uff0eWebSocket API"},"content":{"rendered":"<p>\u5149CTI\u30b9\u30de\u30fc\u30c8\u30b3\u30cd\u30af\u30c8\u30b5\u30fc\u30d3\u30b9\u306f\u3001WebSocket API\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n<p style=\"padding-left: 40px;\"><span style=\"color: #ff0000;\">\u203bWindows 7SP1 \u3067\u306f\u52d5\u4f5c\u3057\u307e\u305b\u3093\u3002WebSocket API \u3092\u3054\u5229\u7528\u306e\u969b\u306f\u3001<\/span><span style=\"color: #ff0000;\"> Windows 8\u30018.1\u300110 \u3092\u3054\u4f7f\u7528\u304f\u3060\u3055\u3044\u3002<br \/>\n\uff08Windows 7SP1 \u306f OS\u30ec\u30d9\u30eb\u306e WebSocket\u306b\u975e\u5bfe\u5fdc\u306e\u305f\u3081\u3001<\/span><span style=\"color: #ff0000;\">\u3054\u5229\u7528\u3044\u305f\u3060\u3051\u307e\u305b\u3093\u3002\uff09<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\u3010\u30b5\u30f3\u30d7\u30eb\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u5229\u7528\u65b9\u6cd5\u3011<\/p>\n<ol>\n<li>\u30b5\u30fc\u30d0\u30fc\u306b\u3059\u308b\u30d1\u30bd\u30b3\u30f3\u306b\u300c\u5149CTI\u30b9\u30de\u30fc\u30c8\u30b3\u30cd\u30af\u30c8\u30b5\u30fc\u30d3\u30b9\u300d\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/li>\n<li>\u4ee5\u4e0b\u306e\u3010\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30d7\u30ed\u30b0\u30e9\u30e0\uff08JavaScript\uff09\u306e\u30b5\u30f3\u30d7\u30eb\u30bd\u30fc\u30b9\u3011\u3092\u53c2\u8003\u306b\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/li>\n<li>\u4f5c\u6210\u3057\u305f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30d7\u30ed\u30b0\u30e9\u30e0\uff08JavaScript\uff09\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u4e0a\u3067\u5b9f\u884c\u3057\u307e\u3059\u3002\uff08\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u304f\uff09<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>\u3010\u4f7f\u7528\u3059\u308b\u30dd\u30fc\u30c8\u3011<\/p>\n<ul>\n<li>55963\u30dd\u30fc\u30c8\uff08\u30b5\u30fc\u30d3\u30b9\u5074\u306e\u30d1\u30bd\u30b3\u30f3\u3067\u30aa\u30fc\u30d7\u30f3\u304c\u5fc5\u8981\u3067\u3059\u3002\uff09<\/li>\n<li>80\u30dd\u30fc\u30c8\uff08\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u5074\u306e\u30d1\u30bd\u30b3\u30f3\u3067\u30aa\u30fc\u30d7\u30f3\u304c\u5fc5\u8981\u3067\u3059\u3002\uff09<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>\u3010\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30d7\u30ed\u30b0\u30e9\u30e0\uff08JavaScript\uff09\u306e\u30b5\u30f3\u30d7\u30eb\u30bd\u30fc\u30b9\u3011<\/p>\n<pre class=\"lang:default decode:true \" title=\"index.html\">&lt;!DOCTYPE html&gt;\r\n&lt;html lang=\"ja\"&gt;\r\n&lt;head&gt;\r\n    &lt;meta charset=\"UTF-8\"&gt;\r\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\r\n    &lt;meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\"&gt;\r\n    &lt;title&gt;Document&lt;\/title&gt;\r\n&lt;\/head&gt;\r\n&lt;body&gt;\r\n    &lt;button id=\"btn1\"&gt;Regist&lt;\/button&gt;\r\n    &lt;button id=\"btn2\"&gt;UnRegist&lt;\/button&gt;\r\n    &lt;button id=\"btn3\"&gt;KeepAlive&lt;\/button&gt;&lt;br&gt;\r\n    &lt;span id=\"text1\"&gt;\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u53d7\u4fe1\u3057\u305f\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u3053\u3053\u306b\u8868\u793a\u3057\u307e\u3059\u3002&lt;\/span&gt;\r\n\r\n    &lt;script&gt;\r\n        const sock = new WebSocket(\"ws:\/\/localhost:55963\/CTI_SmartConnectService\/WebSocket\/\");\r\n\r\n        sock.addEventListener(\"open\", e =&gt; {\r\n            console.log(\"\u63a5\u7d9a\u304c\u958b\u304b\u308c\u305f\u3068\u304d\u306b\u547c\u3073\u51fa\u3055\u308c\u308b\u30a4\u30d9\u30f3\u30c8\");\r\n        });\r\n\r\n        sock.addEventListener(\"message\", e =&gt; {\r\n            console.log(\"\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u53d7\u4fe1\u3057\u305f\u3068\u304d\u306b\u547c\u3073\u51fa\u3055\u308c\u308b\u30a4\u30d9\u30f3\u30c8\");\r\n            console.log(e.data);\r\n            document.getElementById(\"text1\").innerHTML = e.data;\r\n\r\n            \/\/\u30e1\u30c3\u30bb\u30fc\u30b8\u3092JSON\u30d1\u30fc\u30b9\r\n            var data = JSON.parse(e.data.replace(\/\\r?\\n\/g, ' '));   \/\/\u6539\u884c\u6587\u5b57\u3092\u534a\u89d2\u30b9\u30da\u30fc\u30b9\u306b\u5909\u63db\u3059\u308b\r\n            console.log(\"title             : \" + data.title);\r\n            console.log(\"msg               : \" + data.msg);\r\n            console.log(\"tyakusin_nichiji  : \" + data.tyakusin_nichiji);\r\n            console.log(\"from              : \" + data.from);\r\n            console.log(\"to                : \" + data.to);\r\n            console.log(\"kokyaku_id        : \" + data.kokyaku_id);\r\n            console.log(\"kokyaku_name      : \" + data.kokyaku_name);\r\n            console.log(\"tantou_name       : \" + data.tantou_name);\r\n            console.log(\"syubetsu          : \" + data.syubetsu);\r\n        });\r\n\r\n        sock.addEventListener(\"close\", e =&gt; {\r\n            console.log(\"\u63a5\u7d9a\u304c\u9589\u3058\u3089\u308c\u305f\u3068\u304d\u306b\u547c\u3073\u51fa\u3055\u308c\u308b\u30a4\u30d9\u30f3\u30c8\");\r\n        });\r\n\r\n        sock.addEventListener(\"error\", e =&gt; {\r\n            console.log(\"\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u3068\u304d\u306b\u547c\u3073\u51fa\u3055\u308c\u308b\u30a4\u30d9\u30f3\u30c8\");\r\n        });\r\n\r\n        btn1.addEventListener(\"click\", e =&gt; {\r\n            sock.send(\"Regist('\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d')\");\r\n        });\r\n\r\n        btn2.addEventListener(\"click\", e =&gt; {\r\n            sock.send(\"UnRegist('\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d')\");\r\n        });\r\n\r\n        btn3.addEventListener(\"click\", e =&gt; {\r\n            sock.send(\"KeepAlive('\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d')\");\r\n        });\r\n    &lt;\/script&gt;\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>\u3010\u5b9f\u884c\u753b\u9762\u30b5\u30f3\u30d7\u30eb\u3011<\/p>\n<p style=\"padding-left: 40px;\"><a href=\"https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-22620\" src=\"https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37-300x169.png\" alt=\"\" width=\"300\" height=\"169\" srcset=\"https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37-300x169.png 300w, https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37-1024x577.png 1024w, https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37-50x28.png 50w, https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37-820x462.png 820w, https:\/\/agrimo.jp\/wp\/wp-content\/uploads\/2019\/10\/2019-10-27_04h15_37.png 1363w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>\u3010\u5149CTI\u30b9\u30de\u30fc\u30c8\u30b3\u30cd\u30af\u30c8\u30b5\u30fc\u30d3\u30b9WebSocket API\u4ed5\u69d8\u3011<\/p>\n<table style=\"border-collapse: collapse; width: 100%;\">\n<tbody>\n<tr>\n<th style=\"width: 15%;\" scope=\"col\">\u30a2\u30c9\u30ec\u30b9<\/th>\n<td style=\"width: 85%;\">ws:\/\/\uff08\u30b5\u30fc\u30d3\u30b9\u5b9f\u884c\u4e2d\u306e\u30d1\u30bd\u30b3\u30f3\u306eIP\u30a2\u30c9\u30ec\u30b9\uff09:55963\/CTI_SmartConnectService\/WebSocket\/<\/td>\n<\/tr>\n<tr>\n<th style=\"width: 15%;\" scope=\"col\">\u30d0\u30a4\u30f3\u30c7\u30a3\u30f3\u30b0<\/th>\n<td style=\"width: 85%;\">\n<div>\n<div>customBinding\uff08n<span style=\"font-family: inherit; font-size: inherit;\">etHttpBinding \u304b\u3089\u306e\u6d3e\u751f\uff09<\/span><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table style=\"border-collapse: collapse; width: 100%; height: 239px;\">\n<thead>\n<tr style=\"height: 24px;\">\n<th style=\"width: 30%; height: 24px;\" scope=\"row\">\u30c7\u30fc\u30bf\u540d\u79f0<\/th>\n<th style=\"width: 70%; height: 24px;\" colspan=\"2\" scope=\"row\">Send \u30e1\u30c3\u30bb\u30fc\u30b8<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"height: 24px;\">\n<td style=\"height: 24px; width: 30%;\" rowspan=\"2\">\u63a5\u7d9a\u4e2d\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30ea\u30b9\u30c8\u3078\u767b\u9332\u3059\u308b<\/td>\n<td style=\"height: 24px; width: 70%;\" colspan=\"2\"><strong>Regist(&#8216;name&#8217;)<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 70%;\" colspan=\"2\">\n<ul>\n<li>name = \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"height: 24px; width: 30%;\" rowspan=\"2\">\u63a5\u7d9a\u4e2d\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u30ea\u30b9\u30c8\u304b\u3089\u767b\u9332\u89e3\u9664\u3059\u308b<\/td>\n<td style=\"height: 24px; width: 70%;\" colspan=\"2\"><strong>UnRegist(&#8216;name&#8217;)<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 70%;\" colspan=\"2\">\n<ul>\n<li>name = \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 23px;\">\n<td style=\"height: 23px; width: 30%;\" rowspan=\"2\">\u30ad\u30fc\u30d7\u30a2\u30e9\u30a4\u30d6\uff08\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u3092\u9632\u3050\u305f\u3081\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304b\u30895\u5206\u9593\u9694\u3067\u547c\u3073\u51fa\u3059\uff09<\/p>\n<p><span style=\"color: #ff0000;\">\u203b\u8abf\u67fb\u306e\u7d50\u679c\u3001\u672c\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1\u3057\u306a\u304f\u3066\u3082\u63a5\u7d9a\u304c\u30ad\u30fc\u30d7\u3055\u308c\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u3002<\/span><\/td>\n<td style=\"height: 23px; width: 70%;\" colspan=\"2\"><strong>KeepAlive(&#8216;name&#8217;)<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 70%;\" colspan=\"2\">WCF\u306e\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u3092\u9632\u3050\u305f\u3081\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304b\u3089\u5b9a\u671f\u7684\u306b\u30ad\u30fc\u30d7\u30a2\u30e9\u30a4\u30d6\u3092\u30b3\u30fc\u30eb\u3057\u307e\u3059\u3002\uff0810\u5206\u4ee5\u5185\u306b1\u56de\u30b3\u30fc\u30eb\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\uff09<\/p>\n<ul>\n<li>name = \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u540d\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table style=\"border-collapse: collapse; width: 100%; height: 167px;\">\n<thead>\n<tr style=\"height: 24px;\">\n<th style=\"width: 30%; height: 24px;\" scope=\"row\">\u30c7\u30fc\u30bf\u540d\u79f0<\/th>\n<th style=\"width: 70%; height: 24px;\" colspan=\"2\" scope=\"row\">CallBack \u30e1\u30c3\u30bb\u30fc\u30b8<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"height: 24px;\">\n<td style=\"height: 48px; width: 30%;\" rowspan=\"2\">\u30b5\u30fc\u30d3\u30b9\u304b\u3089\u306e\u901a\u77e5<\/td>\n<td style=\"height: 24px;\" colspan=\"2\"><strong>{<br \/>\n&#8220;title&#8221;:&#8221;\u30bf\u30a4\u30c8\u30eb&#8221;,<br \/>\n&#8220;msg&#8221;:&#8221;\u30e1\u30c3\u30bb\u30fc\u30b8&#8221;,<br \/>\n&#8220;tyakusin_nichiji&#8221;:&#8221;\u7740\u4fe1\u65e5\u6642&#8221;,<br \/>\n&#8220;from&#8221;:&#8221;\u76f8\u624bTEL&#8221;,<br \/>\n&#8220;to&#8221;:&#8221;\u7740\u4fe1TEL&#8221;,<br \/>\n&#8220;kokyaku_id&#8221;:&#8221;\u9867\u5ba2ID&#8221;,<br \/>\n&#8220;kokyaku_name&#8221;:&#8221;\u9867\u5ba2\u540d\uff08\u4f1a\u793e\u540d\uff09&#8221;,<br \/>\n&#8220;tantou_name&#8221;:&#8221;\u62c5\u5f53\u8005\u540d&#8221;,<br \/>\n&#8220;syubetsu&#8221;:&#8221;\u56de\u7dda\u7a2e\u5225&#8221;<br \/>\n}<br \/>\n<\/strong><\/p>\n<p style=\"padding-left: 40px;\"><strong>\u203bJSON\u5f62\u5f0f<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 70%;\" colspan=\"2\">\u30b5\u30fc\u30d3\u30b9\u304b\u3089\u7740\u4fe1\u30e1\u30c3\u30bb\u30fc\u30b8\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u751f\u5b58\u78ba\u8a8d\u3001\u51e6\u7406\u5b8c\u4e86\u901a\u77e5\u304c\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3055\u308c\u307e\u3059\u3002<\/p>\n<ul>\n<li>title\u3000 = \u30e1\u30c3\u30bb\u30fc\u30b8\u30bf\u30a4\u30c8\u30eb\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>msg = \u30e1\u30c3\u30bb\u30fc\u30b8\u672c\u6587\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>tyakusin_nichiji = \u7740\u4fe1\u65e5\u6642\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>from = \u76f8\u624bTEL\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>to = \u7740\u4fe1TEL\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>kokyaku_id = \u9867\u5ba2ID\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>kokyaku_name = \u9867\u5ba2\u540d\uff08\u4f1a\u793e\u540d\uff09\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>tantou_name = \u62c5\u5f53\u8005\u540d\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<li>syubetsu = \u56de\u7dda\u7a2e\u5225\u304c\u30bb\u30c3\u30c8\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>\u5149CTI\u30b9\u30de\u30fc\u30c8\u30b3\u30cd\u30af\u30c8\u30b5\u30fc\u30d3\u30b9\u306f\u3001WebSocket API\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002 \u203bWindows 7SP1 \u3067\u306f [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-22107","page","type-page","status-publish","hentry"],"wppr_data":{"cwp_meta_box_check":"No"},"_links":{"self":[{"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/pages\/22107","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=22107"}],"version-history":[{"count":74,"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/pages\/22107\/revisions"}],"predecessor-version":[{"id":22993,"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=\/wp\/v2\/pages\/22107\/revisions\/22993"}],"wp:attachment":[{"href":"https:\/\/agrimo.jp\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}