diff options
author | Loïc Hoguin <[email protected]> | 2023-01-16 16:49:08 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2023-01-16 16:49:08 +0100 |
commit | d73aae065ac85cd7de71b815c1c8f28df6391828 (patch) | |
tree | 92b7240ff230f87cea5db9ab70a8e727875012a4 /docs/en/gun/2.0 | |
parent | 992831c7a516b5183c2af06260829d41aa45267c (diff) | |
download | ninenines.eu-d73aae065ac85cd7de71b815c1c8f28df6391828.tar.gz ninenines.eu-d73aae065ac85cd7de71b815c1c8f28df6391828.tar.bz2 ninenines.eu-d73aae065ac85cd7de71b815c1c8f28df6391828.zip |
Cowlib 2.12
Also future-proof some templates. Unfortunately still have
to use a very old Hugo version to build as there's bugs
preventing proper asciidoc use otherwise (.asciidoc files
do not get rendered properly).
Diffstat (limited to 'docs/en/gun/2.0')
58 files changed, 331 insertions, 127 deletions
diff --git a/docs/en/gun/2.0/guide/connect/index.html b/docs/en/gun/2.0/guide/connect/index.html index 42b1c964..ca76c021 100644 --- a/docs/en/gun/2.0/guide/connect/index.html +++ b/docs/en/gun/2.0/guide/connect/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/http/index.html b/docs/en/gun/2.0/guide/http/index.html index f130c416..bf50805a 100644 --- a/docs/en/gun/2.0/guide/http/index.html +++ b/docs/en/gun/2.0/guide/http/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/index.html b/docs/en/gun/2.0/guide/index.html index cdfa5d76..338790f7 100644 --- a/docs/en/gun/2.0/guide/index.html +++ b/docs/en/gun/2.0/guide/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/internals_tls_over_tls/index.html b/docs/en/gun/2.0/guide/internals_tls_over_tls/index.html index 7ebc2221..ee15dbf4 100644 --- a/docs/en/gun/2.0/guide/internals_tls_over_tls/index.html +++ b/docs/en/gun/2.0/guide/internals_tls_over_tls/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/introduction/index.html b/docs/en/gun/2.0/guide/introduction/index.html index 8a12d196..2035c5f3 100644 --- a/docs/en/gun/2.0/guide/introduction/index.html +++ b/docs/en/gun/2.0/guide/introduction/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/migrating_from_1.0/index.html b/docs/en/gun/2.0/guide/migrating_from_1.0/index.html index aa949d8c..b3f3f3b3 100644 --- a/docs/en/gun/2.0/guide/migrating_from_1.0/index.html +++ b/docs/en/gun/2.0/guide/migrating_from_1.0/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/migrating_from_1.1/index.html b/docs/en/gun/2.0/guide/migrating_from_1.1/index.html index 9aae02b4..564e5b3a 100644 --- a/docs/en/gun/2.0/guide/migrating_from_1.1/index.html +++ b/docs/en/gun/2.0/guide/migrating_from_1.1/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/migrating_from_1.2/index.html b/docs/en/gun/2.0/guide/migrating_from_1.2/index.html index 608d4c2b..ddaab2d4 100644 --- a/docs/en/gun/2.0/guide/migrating_from_1.2/index.html +++ b/docs/en/gun/2.0/guide/migrating_from_1.2/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/migrating_from_1.3/index.html b/docs/en/gun/2.0/guide/migrating_from_1.3/index.html index e0af6714..7c54aa6b 100644 --- a/docs/en/gun/2.0/guide/migrating_from_1.3/index.html +++ b/docs/en/gun/2.0/guide/migrating_from_1.3/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/protocols/index.html b/docs/en/gun/2.0/guide/protocols/index.html index ccf854d0..135b734e 100644 --- a/docs/en/gun/2.0/guide/protocols/index.html +++ b/docs/en/gun/2.0/guide/protocols/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/start/index.html b/docs/en/gun/2.0/guide/start/index.html index 756bb9af..dcff2a51 100644 --- a/docs/en/gun/2.0/guide/start/index.html +++ b/docs/en/gun/2.0/guide/start/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/guide/websocket/index.html b/docs/en/gun/2.0/guide/websocket/index.html index b407ad4e..f952ad39 100644 --- a/docs/en/gun/2.0/guide/websocket/index.html +++ b/docs/en/gun/2.0/guide/websocket/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.await/index.html b/docs/en/gun/2.0/manual/gun.await/index.html index dbe34b83..d56eb283 100644 --- a/docs/en/gun/2.0/manual/gun.await/index.html +++ b/docs/en/gun/2.0/manual/gun.await/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.await_body/index.html b/docs/en/gun/2.0/manual/gun.await_body/index.html index f9df33ec..4713df20 100644 --- a/docs/en/gun/2.0/manual/gun.await_body/index.html +++ b/docs/en/gun/2.0/manual/gun.await_body/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.await_up/index.html b/docs/en/gun/2.0/manual/gun.await_up/index.html index c0927cef..2c922837 100644 --- a/docs/en/gun/2.0/manual/gun.await_up/index.html +++ b/docs/en/gun/2.0/manual/gun.await_up/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.cancel/index.html b/docs/en/gun/2.0/manual/gun.cancel/index.html index 8876cfd5..971150a5 100644 --- a/docs/en/gun/2.0/manual/gun.cancel/index.html +++ b/docs/en/gun/2.0/manual/gun.cancel/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.close/index.html b/docs/en/gun/2.0/manual/gun.close/index.html index b0fafc77..2295095a 100644 --- a/docs/en/gun/2.0/manual/gun.close/index.html +++ b/docs/en/gun/2.0/manual/gun.close/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.connect/index.html b/docs/en/gun/2.0/manual/gun.connect/index.html index b75c855d..555b0586 100644 --- a/docs/en/gun/2.0/manual/gun.connect/index.html +++ b/docs/en/gun/2.0/manual/gun.connect/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.data/index.html b/docs/en/gun/2.0/manual/gun.data/index.html index 48e7a302..f86e7921 100644 --- a/docs/en/gun/2.0/manual/gun.data/index.html +++ b/docs/en/gun/2.0/manual/gun.data/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.delete/index.html b/docs/en/gun/2.0/manual/gun.delete/index.html index 78854845..a1979aa5 100644 --- a/docs/en/gun/2.0/manual/gun.delete/index.html +++ b/docs/en/gun/2.0/manual/gun.delete/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.flush/index.html b/docs/en/gun/2.0/manual/gun.flush/index.html index 52d1ac59..5ef4226c 100644 --- a/docs/en/gun/2.0/manual/gun.flush/index.html +++ b/docs/en/gun/2.0/manual/gun.flush/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.get/index.html b/docs/en/gun/2.0/manual/gun.get/index.html index b4d908d0..a51367a7 100644 --- a/docs/en/gun/2.0/manual/gun.get/index.html +++ b/docs/en/gun/2.0/manual/gun.get/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.head/index.html b/docs/en/gun/2.0/manual/gun.head/index.html index a4e8ba11..e1c62c10 100644 --- a/docs/en/gun/2.0/manual/gun.head/index.html +++ b/docs/en/gun/2.0/manual/gun.head/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.headers/index.html b/docs/en/gun/2.0/manual/gun.headers/index.html index c54b1f7d..6103f749 100644 --- a/docs/en/gun/2.0/manual/gun.headers/index.html +++ b/docs/en/gun/2.0/manual/gun.headers/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.info/index.html b/docs/en/gun/2.0/manual/gun.info/index.html index 5d87f97a..2eb09ca8 100644 --- a/docs/en/gun/2.0/manual/gun.info/index.html +++ b/docs/en/gun/2.0/manual/gun.info/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.open/index.html b/docs/en/gun/2.0/manual/gun.open/index.html index 7253b733..554687b7 100644 --- a/docs/en/gun/2.0/manual/gun.open/index.html +++ b/docs/en/gun/2.0/manual/gun.open/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.open_unix/index.html b/docs/en/gun/2.0/manual/gun.open_unix/index.html index c681d915..a9b3b33f 100644 --- a/docs/en/gun/2.0/manual/gun.open_unix/index.html +++ b/docs/en/gun/2.0/manual/gun.open_unix/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.options/index.html b/docs/en/gun/2.0/manual/gun.options/index.html index 64ff4350..f0cc5887 100644 --- a/docs/en/gun/2.0/manual/gun.options/index.html +++ b/docs/en/gun/2.0/manual/gun.options/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.patch/index.html b/docs/en/gun/2.0/manual/gun.patch/index.html index bbb181e9..92457fa3 100644 --- a/docs/en/gun/2.0/manual/gun.patch/index.html +++ b/docs/en/gun/2.0/manual/gun.patch/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.post/index.html b/docs/en/gun/2.0/manual/gun.post/index.html index 382c9f1f..d1a5ed86 100644 --- a/docs/en/gun/2.0/manual/gun.post/index.html +++ b/docs/en/gun/2.0/manual/gun.post/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.put/index.html b/docs/en/gun/2.0/manual/gun.put/index.html index d6e160fc..22479544 100644 --- a/docs/en/gun/2.0/manual/gun.put/index.html +++ b/docs/en/gun/2.0/manual/gun.put/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.request/index.html b/docs/en/gun/2.0/manual/gun.request/index.html index 9b8de5ce..c5afcbfc 100644 --- a/docs/en/gun/2.0/manual/gun.request/index.html +++ b/docs/en/gun/2.0/manual/gun.request/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.set_owner/index.html b/docs/en/gun/2.0/manual/gun.set_owner/index.html index f1fbd8be..7b1a078f 100644 --- a/docs/en/gun/2.0/manual/gun.set_owner/index.html +++ b/docs/en/gun/2.0/manual/gun.set_owner/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.shutdown/index.html b/docs/en/gun/2.0/manual/gun.shutdown/index.html index 33c658f4..3f08ec1d 100644 --- a/docs/en/gun/2.0/manual/gun.shutdown/index.html +++ b/docs/en/gun/2.0/manual/gun.shutdown/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.stream_info/index.html b/docs/en/gun/2.0/manual/gun.stream_info/index.html index 7e2a43d7..326aa677 100644 --- a/docs/en/gun/2.0/manual/gun.stream_info/index.html +++ b/docs/en/gun/2.0/manual/gun.stream_info/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.update_flow/index.html b/docs/en/gun/2.0/manual/gun.update_flow/index.html index 55fc1806..ffd97353 100644 --- a/docs/en/gun/2.0/manual/gun.update_flow/index.html +++ b/docs/en/gun/2.0/manual/gun.update_flow/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.ws_send/index.html b/docs/en/gun/2.0/manual/gun.ws_send/index.html index 9761cf74..5ba82e60 100644 --- a/docs/en/gun/2.0/manual/gun.ws_send/index.html +++ b/docs/en/gun/2.0/manual/gun.ws_send/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun.ws_upgrade/index.html b/docs/en/gun/2.0/manual/gun.ws_upgrade/index.html index 40fb7115..740809a5 100644 --- a/docs/en/gun/2.0/manual/gun.ws_upgrade/index.html +++ b/docs/en/gun/2.0/manual/gun.ws_upgrade/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> @@ -81,7 +80,7 @@ http://www.gnu.org/software/src-highlite --> <font color="#009900">ConnPid</font> <font color="#990000">::</font> <b><font color="#000080">pid</font></b>() <font color="#009900">Path</font> <font color="#990000">::</font> <b><font color="#000000">iodata</font></b>() <font color="#009900">Headers</font> <font color="#990000">::</font> <b><font color="#000000">gun:req_headers</font></b>() -<font color="#009900">WsOpts</font> <font color="#990000">::</font> <font color="#FF6600">gun</font><font color="#990000">:</font><font color="#FF6600">ws_opts</font> +<font color="#009900">WsOpts</font> <font color="#990000">::</font> <b><font color="#000000">gun:ws_opts</font></b>() <font color="#009900">StreamRef</font> <font color="#990000">::</font> <b><font color="#000000">gun:stream_ref</font></b>()</tt></pre> </div></div> <p>Upgrade to Websocket.</p> @@ -89,6 +88,7 @@ http://www.gnu.org/software/src-highlite --> <p>HTTP/1.1 cannot handle Websocket and HTTP requests concurrently. The upgrade, if successful, will result in the complete takeover of the connection. Any subsequent HTTP requests will be rejected.</p> <p>Gun does not currently support Websocket over HTTP/2.</p> <p>By default Gun will take the Websocket options from the connection's <code>ws_opts</code>.</p> +<p>Websocket subprotocol negotiation is enabled when the <code>protocols</code> option is given. It takes a subprotocol name and a module implementing the <a href="../gun_ws_protocol">gun_ws_protocol(3)</a> behavior.</p> <h2 id="_arguments">Arguments</h2> <dl><dt>ConnPid</dt> <dd><p>The pid of the Gun connection process.</p> @@ -134,8 +134,20 @@ http://www.gnu.org/software/src-highlite --> <font color="#0000FF">compress</font> <font color="#990000">=></font> <font color="#000080">false</font> })<font color="#990000">.</font></tt></pre> </div></div> +<div class="listingblock"><div class="title">Upgrade to Websocket with protocol negotiation</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><font color="#009900">StreamRef</font> <font color="#990000">=</font> <b><font color="#000000">gun:ws_upgrade</font></b>(<font color="#009900">ConnPid</font>, <font color="#FF0000">"/ws"</font>, [], #{ + <font color="#0000FF">protocols</font> <font color="#990000">=></font> [ + {<font color="#990000"><<</font><font color="#FF0000">"mqtt"</font><font color="#990000">>></font>, <font color="#FF6600">gun_ws_mqtt_h</font>}, + {<font color="#990000"><<</font><font color="#FF0000">"v12.stomp"</font><font color="#990000">>></font>, <font color="#FF6600">gun_ws_stomp_h</font>} + ] +})<font color="#990000">.</font></tt></pre> +</div></div> <h2 id="_see_also">See also</h2> -<p><a href="../gun">gun(3)</a>, <a href="../gun.ws_send">gun:ws_send(3)</a>, <a href="../gun_upgrade">gun_upgrade(3)</a>, <a href="../gun_ws">gun_ws(3)</a></p> +<p><a href="../gun">gun(3)</a>, <a href="../gun.ws_send">gun:ws_send(3)</a>, <a href="../gun_upgrade">gun_upgrade(3)</a>, <a href="../gun_ws">gun_ws(3)</a>, <a href="../gun_ws_protocol">gun_ws_protocol(3)</a></p> diff --git a/docs/en/gun/2.0/manual/gun/index.html b/docs/en/gun/2.0/manual/gun/index.html index 7cf1858f..4bbbe760 100644 --- a/docs/en/gun/2.0/manual/gun/index.html +++ b/docs/en/gun/2.0/manual/gun/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> @@ -250,6 +249,7 @@ http://www.gnu.org/software/src-highlite --> <font color="#0000FF">cookie_ignore_informational</font> <font color="#990000">=></font> <b><font color="#000000">boolean</font></b>(), <font color="#0000FF">flow</font> <font color="#990000">=></font> <b><font color="#000000">pos_integer</font></b>(), <font color="#0000FF">keepalive</font> <font color="#990000">=></font> <b><font color="#000000">timeout</font></b>(), + <font color="#0000FF">keepalive_tolerance</font> <font color="#990000">=></font> <b><font color="#000000">non_neg_integer</font></b>(), <i><font color="#9A1900">%% HTTP/2 state machine configuration.</font></i> <font color="#0000FF">connection_window_margin_size</font> <font color="#990000">=></font> <font color="#993399">0</font><font color="#990000">..</font><font color="#993399">16#7fffffff</font>, @@ -286,6 +286,9 @@ http://www.gnu.org/software/src-highlite --> <dt>keepalive (infinity)</dt> <dd><p>Time between pings in milliseconds.</p> </dd> +<dt>keepalive_tolerance - see below</dt> +<dd><p>The number of unacknowledged pings in flight that are tolerated before the connection is closed. By default this mechanism is disabled even if <code>keepalive</code> is enabled.</p> +</dd> </dl> <h3 id="_opts">opts()</h3> <div class="listingblock"><div class="content"><!-- Generator: GNU source-highlight 3.1.9 @@ -358,8 +361,8 @@ http://www.gnu.org/software/src-highlite --> <dt>supervise (true)</dt> <dd><p>Whether the Gun process should be started under the <code>gun_sup</code> supervisor. Set to <code>false</code> to use your own supervisor.</p> </dd> -<dt>tcp_opts ([])</dt> -<dd><p>TCP options used when establishing the connection.</p> +<dt>tcp_opts (DefaultOpts)</dt> +<dd><p>TCP options used when establishing the connection. By default Gun enables send timeouts with the options <code>[{send_timeout, 15000}, {send_timeout_close, true}]</code>.</p> </dd> <dt>tls_handshake_timeout (infinity)</dt> <dd><p>TLS handshake timeout.</p> @@ -488,12 +491,14 @@ by Lorenzo Bettini http://www.lorenzobettini.it http://www.gnu.org/software/src-highlite --> <pre><tt><b><font color="#000000">ws_opts</font></b>() <font color="#990000">::</font> #{ - <font color="#0000FF">closing_timeout</font> <font color="#990000">=></font> <b><font color="#000000">timeout</font></b>(), - <font color="#0000FF">compress</font> <font color="#990000">=></font> <b><font color="#000000">boolean</font></b>(), - <font color="#0000FF">flow</font> <font color="#990000">=></font> <b><font color="#000000">pos_integer</font></b>(), - <font color="#0000FF">keepalive</font> <font color="#990000">=></font> <b><font color="#000000">timeout</font></b>(), - <font color="#0000FF">protocols</font> <font color="#990000">=></font> [{<b><font color="#000080">binary</font></b>(), <b><font color="#000000">module</font></b>()}], - <font color="#0000FF">silence_pings</font> <font color="#990000">=></font> <b><font color="#000000">boolean</font></b>() + <font color="#0000FF">closing_timeout</font> <font color="#990000">=></font> <b><font color="#000000">timeout</font></b>(), + <font color="#0000FF">compress</font> <font color="#990000">=></font> <b><font color="#000000">boolean</font></b>(), + <font color="#0000FF">default_protocol</font> <font color="#990000">=></font> <b><font color="#000000">module</font></b>(), + <font color="#0000FF">flow</font> <font color="#990000">=></font> <b><font color="#000000">pos_integer</font></b>(), + <font color="#0000FF">keepalive</font> <font color="#990000">=></font> <b><font color="#000000">timeout</font></b>(), + <font color="#0000FF">protocols</font> <font color="#990000">=></font> [{<b><font color="#000080">binary</font></b>(), <b><font color="#000000">module</font></b>()}], + <font color="#0000FF">silence_pings</font> <font color="#990000">=></font> <b><font color="#000000">boolean</font></b>(), + <font color="#0000FF">user_opts</font> <font color="#990000">=></font> <b><font color="#000000">any</font></b>() }</tt></pre> </div></div> <p>Configuration for the Websocket protocol.</p> @@ -504,6 +509,9 @@ http://www.gnu.org/software/src-highlite --> <dt>compress (false)</dt> <dd><p>Whether to enable permessage-deflate compression. This does not guarantee that compression will be used as it is the server that ultimately decides. Defaults to false.</p> </dd> +<dt>default_protocol (gun_ws_h)</dt> +<dd><p>Default protocol module when no Websocket subprotocol is negotiated.</p> +</dd> <dt>flow - see below</dt> <dd><p>The initial flow control value for the Websocket connection. By default flow control is disabled.</p> </dd> @@ -511,15 +519,19 @@ http://www.gnu.org/software/src-highlite --> <dd><p>Time between pings in milliseconds.</p> </dd> <dt>protocols ([])</dt> -<dd><p>A non-empty list enables Websocket protocol negotiation. The list of protocols will be sent in the sec-websocket-protocol request header. The handler module interface is currently undocumented and must be set to <code>gun_ws_h</code>.</p> +<dd><p>A non-empty list enables Websocket protocol negotiation. The list of protocols will be sent in the sec-websocket-protocol request header. The given module must follow the <a href="../gun_ws_protocol">gun_ws_protocol(3)</a> interface. Gun comes with a default interface in <code>gun_ws_h</code> that may be reused for negotiated protocols.</p> </dd> <dt>silence_pings (true)</dt> <dd><p>Whether the ping and pong frames should be sent to the user. In all cases Gun will automatically send a pong frame back when receiving a ping.</p> </dd> +<dt>user_opts - see below</dt> +<dd><p>Additional options that are not in use by Gun unless a custom Websocket subprotocol is configured and negotiated. By default no user option is defined.</p> +</dd> </dl> -<!-- @todo Document default_protocol and user_opts.--> <h2 id="_changelog">Changelog</h2> -<ul><li><strong>2.0</strong>: The <code>stream_ref()</code> type was added. +<ul><li><strong>2.0</strong>: The <code>default_protocol</code> and <code>user_opts</code> Websocket options were added. +</li> +<li><strong>2.0</strong>: The <code>stream_ref()</code> type was added. </li> <li><strong>2.0</strong>: The option <code>cookie_store</code> was added. It can be used to configure a cookie store that Gun will use automatically. A related option, <code>cookie_ignore_informational</code>, was added to both <code>http_opts()</code> and <code>http2_opts()</code>. </li> diff --git a/docs/en/gun/2.0/manual/gun_app/index.html b/docs/en/gun/2.0/manual/gun_app/index.html index 70f44278..04adf1b2 100644 --- a/docs/en/gun/2.0/manual/gun_app/index.html +++ b/docs/en/gun/2.0/manual/gun_app/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> @@ -76,6 +75,8 @@ </li> <li><a href="../gun_event">gun_event(3)</a> - Events </li> +<li><a href="../gun_ws_protocol">gun_ws_protocol(3)</a> - Websocket subprotocols +</li> </ul> <h2 id="_dependencies">Dependencies</h2> <ul><li><a href="../cowlib">cowlib(7)</a> - Support library for manipulating Web protocols diff --git a/docs/en/gun/2.0/manual/gun_cookies.domain_match/index.html b/docs/en/gun/2.0/manual/gun_cookies.domain_match/index.html index a67600e6..f0b12616 100644 --- a/docs/en/gun/2.0/manual/gun_cookies.domain_match/index.html +++ b/docs/en/gun/2.0/manual/gun_cookies.domain_match/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_cookies.path_match/index.html b/docs/en/gun/2.0/manual/gun_cookies.path_match/index.html index 930286a7..1d4222c7 100644 --- a/docs/en/gun/2.0/manual/gun_cookies.path_match/index.html +++ b/docs/en/gun/2.0/manual/gun_cookies.path_match/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_cookies/index.html b/docs/en/gun/2.0/manual/gun_cookies/index.html index 4d75dab8..8c24282b 100644 --- a/docs/en/gun/2.0/manual/gun_cookies/index.html +++ b/docs/en/gun/2.0/manual/gun_cookies/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_cookies_list/index.html b/docs/en/gun/2.0/manual/gun_cookies_list/index.html index c7eea531..973b5c0d 100644 --- a/docs/en/gun/2.0/manual/gun_cookies_list/index.html +++ b/docs/en/gun/2.0/manual/gun_cookies_list/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_data/index.html b/docs/en/gun/2.0/manual/gun_data/index.html index 080f442c..cc177d8c 100644 --- a/docs/en/gun/2.0/manual/gun_data/index.html +++ b/docs/en/gun/2.0/manual/gun_data/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_down/index.html b/docs/en/gun/2.0/manual/gun_down/index.html index 45a715df..5deecf4d 100644 --- a/docs/en/gun/2.0/manual/gun_down/index.html +++ b/docs/en/gun/2.0/manual/gun_down/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_error/index.html b/docs/en/gun/2.0/manual/gun_error/index.html index e0056f64..c4b3ea03 100644 --- a/docs/en/gun/2.0/manual/gun_error/index.html +++ b/docs/en/gun/2.0/manual/gun_error/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_event/index.html b/docs/en/gun/2.0/manual/gun_event/index.html index 1f6373c3..69f521df 100644 --- a/docs/en/gun/2.0/manual/gun_event/index.html +++ b/docs/en/gun/2.0/manual/gun_event/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_inform/index.html b/docs/en/gun/2.0/manual/gun_inform/index.html index 655ce50d..fa4c6348 100644 --- a/docs/en/gun/2.0/manual/gun_inform/index.html +++ b/docs/en/gun/2.0/manual/gun_inform/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_push/index.html b/docs/en/gun/2.0/manual/gun_push/index.html index 3a1bfd27..51364fdc 100644 --- a/docs/en/gun/2.0/manual/gun_push/index.html +++ b/docs/en/gun/2.0/manual/gun_push/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_response/index.html b/docs/en/gun/2.0/manual/gun_response/index.html index c995e535..29e34041 100644 --- a/docs/en/gun/2.0/manual/gun_response/index.html +++ b/docs/en/gun/2.0/manual/gun_response/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_trailers/index.html b/docs/en/gun/2.0/manual/gun_trailers/index.html index 45351e6a..fda6a656 100644 --- a/docs/en/gun/2.0/manual/gun_trailers/index.html +++ b/docs/en/gun/2.0/manual/gun_trailers/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_tunnel_up/index.html b/docs/en/gun/2.0/manual/gun_tunnel_up/index.html index d68424cb..9fcf952d 100644 --- a/docs/en/gun/2.0/manual/gun_tunnel_up/index.html +++ b/docs/en/gun/2.0/manual/gun_tunnel_up/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_up/index.html b/docs/en/gun/2.0/manual/gun_up/index.html index 64a8cb6e..fa87b7d7 100644 --- a/docs/en/gun/2.0/manual/gun_up/index.html +++ b/docs/en/gun/2.0/manual/gun_up/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_upgrade/index.html b/docs/en/gun/2.0/manual/gun_upgrade/index.html index f5930c2f..3fafdc45 100644 --- a/docs/en/gun/2.0/manual/gun_upgrade/index.html +++ b/docs/en/gun/2.0/manual/gun_upgrade/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_ws/index.html b/docs/en/gun/2.0/manual/gun_ws/index.html index 1bb62a49..9cf3102b 100644 --- a/docs/en/gun/2.0/manual/gun_ws/index.html +++ b/docs/en/gun/2.0/manual/gun_ws/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> diff --git a/docs/en/gun/2.0/manual/gun_ws_protocol/index.html b/docs/en/gun/2.0/manual/gun_ws_protocol/index.html new file mode 100644 index 00000000..783fc4a8 --- /dev/null +++ b/docs/en/gun/2.0/manual/gun_ws_protocol/index.html @@ -0,0 +1,231 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta name="description" content=""> + <meta name="author" content="Loïc Hoguin based on a design from (Soft10) Pol Cámara"> + + <title>Nine Nines: gun_ws_protocol(3)</title> + + <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic' rel='stylesheet' type='text/css'> + <link href="/css/99s.css?r=7" rel="stylesheet"> + + <link rel="shortcut icon" href="/img/ico/favicon.ico"> + <link rel="apple-touch-icon-precomposed" sizes="114x114" href="/img/ico/apple-touch-icon-114.png"> + <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> + <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> + + </head> + + +<body class=""> + <header id="page-head"> + <div id="topbar" class="container"> + <div class="row"> + <div class="span2"> + <h1 id="logo"><a href="/" title="99s">99s</a></h1> + </div> + <div class="span10"> + + <div id="side-header"> + <nav> + <ul> + <li><a title="Hear my thoughts" href="/articles">Articles</a></li> + <li><a title="Watch my talks" href="/talks">Talks</a></li> + <li class="active"><a title="Read the docs" href="/docs">Documentation</a></li> + <li><a title="Request my services" href="/services">Consulting & Training</a></li> + </ul> + </nav> + <ul id="social"> + <li> + <a href="https://github.com/ninenines" title="Check my Github repositories"><img src="/img/ico_github.png" data-hover="/img/ico_github_alt.png" alt="Github"></a> + </li> + <li> + <a title="Contact me" href="mailto:[email protected]"><img src="/img/ico_mail.png" data-hover="/img/ico_mail_alt.png"></a> + </li> + </ul> + </div> + </div> + </div> + </div> + + +</header> + +<div id="contents" class="two_col"> +<div class="container"> +<div class="row"> +<div id="docs" class="span9 maincol"> + +<h1 class="lined-header"><span>gun_ws_protocol(3)</span></h1> + +<h2 id="_name">Name</h2> +<p>gun_ws_protocol - Websocket subprotocols</p> +<h2 id="_description">Description</h2> +<p>The <code>gun_ws_protocol</code> module provides the callback interface and types for implementing Websocket subprotocols.</p> +<h2 id="_callbacks">Callbacks</h2> +<p>Websocket subprotocols implement the following interface.</p> +<h3 id="_init">init</h3> +<div class="listingblock"><div class="content"><!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><b><font color="#000000">init</font></b>(<font color="#009900">ReplyTo</font>, <font color="#009900">StreamRef</font>, <font color="#009900">Headers</font>, <font color="#009900">Opts</font>) <font color="#990000">-></font> {<font color="#FF6600">ok</font>, <font color="#009900">State</font>} + +<font color="#009900">ReplyTo</font> <font color="#990000">::</font> <b><font color="#000080">pid</font></b>() +<font color="#009900">StreamRef</font> <font color="#990000">::</font> <b><font color="#000080">reference</font></b>() +<font color="#009900">Headers</font> <font color="#990000">::</font> <b><font color="#000000">cow_http:headers</font></b>() +<font color="#009900">Opts</font> <font color="#990000">::</font> <b><font color="#000000">gun:ws_opts</font></b>() +<font color="#009900">State</font> <font color="#990000">::</font> <b><font color="#000000">protocol_state</font></b>()</tt></pre> +</div></div> +<p>Initialize the Websocket protocol.</p> +<dl><dt>ReplyTo</dt> +<dd><p>The pid of the process that owns the stream and to which messages will be sent to.</p> +</dd> +<dt>StreamRef</dt> +<dd><p>The reference for the stream. Must be sent in messages to distinguish between different streams.</p> +</dd> +<dt>Headers</dt> +<dd><p>Headers that were sent in the response establishing the Websocket connection.</p> +</dd> +<dt>Opts</dt> +<dd><p>Websocket options. Custom options can be provided in the <code>user_opts</code> key.</p> +</dd> +<dt>State</dt> +<dd><p>State for the protocol.</p> +</dd> +</dl> +<h3 id="_handle">handle</h3> +<div class="listingblock"><div class="content"><!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><b><font color="#000000">handle</font></b>(<font color="#009900">Frame</font>, <font color="#009900">State</font>) <font color="#990000">-></font> {<font color="#FF6600">ok</font>, <font color="#009900">FlowDec</font>, <font color="#009900">State</font>} + +<font color="#009900">Frame</font> <font color="#990000">::</font> <b><font color="#000000">cow_ws:frame</font></b>() +<font color="#009900">State</font> <font color="#990000">::</font> <b><font color="#000000">protocol_state</font></b>() +<font color="#009900">FlowDec</font> <font color="#990000">::</font> <b><font color="#000000">non_neg_integer</font></b>()</tt></pre> +</div></div> +<p>Handle a Websocket frame.</p> +<p>This callback may receive fragmented frames depending on the protocol and may need to rebuild the full frame to process it.</p> +<dl><dt>Frame</dt> +<dd><p>Websocket frame.</p> +</dd> +<dt>State</dt> +<dd><p>State for the protocol.</p> +</dd> +<dt>FlowDec</dt> +<dd><p>How many messages were sent. Used to update the flow control state when the feature is enabled.</p> +</dd> +</dl> +<h2 id="_types">Types</h2> +<h3 id="_protocol_state">protocol_state()</h3> +<div class="listingblock"><div class="content"><!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><b><font color="#000000">protocol_state</font></b>() <font color="#990000">::</font> <b><font color="#000000">any</font></b>()</tt></pre> +</div></div> +<p>State for the protocol.</p> +<p>As this part of the implementation of the protocol the type may differ between different Websocket protocol modules.</p> +<h2 id="_changelog">Changelog</h2> +<ul><li><strong>2.0</strong>: Module introduced. +</li> +</ul> +<h2 id="_see_also">See also</h2> +<p><a href="..">gun(7)</a>, <a href="../gun">gun(3)</a>, <a href="../gun.ws_upgrade">gun:ws_upgrade(3)</a></p> + + + + + + +</div> + +<div class="span3 sidecol"> + + +<h3> + Gun + 2.0 + Function Reference + +</h3> + +<ul> + + <li><a href="/docs/en/gun/2.0/guide">User Guide</a></li> + + + <li><a href="/docs/en/gun/2.0/manual">Function Reference</a></li> + + +</ul> + +<h4 id="docs-nav">Navigation</h4> + +<h4>Version select</h4> +<ul> + + + + <li><a href="/docs/en/gun/2.0/manual">2.0</a></li> + + <li><a href="/docs/en/gun/1.3/manual">1.3</a></li> + + <li><a href="/docs/en/gun/1.2/manual">1.2</a></li> + + <li><a href="/docs/en/gun/1.1/manual">1.1</a></li> + + <li><a href="/docs/en/gun/1.0/manual">1.0</a></li> + +</ul> + +<h3 id="_like_my_work__donate">Like my work? Donate!</h3> +<p>Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:</p> +<form action="https://www.paypal.com/cgi-bin/webscr" method="post" style="display:inline"> +<input type="hidden" name="cmd" value="_donations"> +<input type="hidden" name="business" value="[email protected]"> +<input type="hidden" name="lc" value="FR"> +<input type="hidden" name="item_name" value="Loic Hoguin"> +<input type="hidden" name="item_number" value="99s"> +<input type="hidden" name="currency_code" value="EUR"> +<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHosted"> +<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"> +<img alt="" border="0" src="https://www.paypalobjects.com/fr_FR/i/scr/pixel.gif" width="1" height="1"> +</form><p>Recurring payment options are also available via <a href="https://github.com/sponsors/essen">GitHub Sponsors</a>. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.</p> + + + +</div> +</div> +</div> +</div> + + <footer> + <div class="container"> + <div class="row"> + <div class="span6"> + <p id="scroll-top"><a href="#">↑ Scroll to top</a></p> + <nav> + <ul> + <li><a href="mailto:[email protected]" title="Contact us">Contact us</a></li><li><a href="https://github.com/ninenines/ninenines.github.io" title="Github repository">Contribute to this site</a></li> + </ul> + </nav> + </div> + <div class="span6 credits"> + <p><img src="/img/footer_logo.png"></p> + <p>Copyright © Loïc Hoguin 2012-2018</p> + </div> + </div> + </div> + </footer> + + + <script src="/js/custom.js"></script> + </body> +</html> + + diff --git a/docs/en/gun/2.0/manual/index.html b/docs/en/gun/2.0/manual/index.html index 3a4b3603..b615bd35 100644 --- a/docs/en/gun/2.0/manual/index.html +++ b/docs/en/gun/2.0/manual/index.html @@ -17,8 +17,7 @@ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png"> <link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png"> - -</head> + </head> <body class=""> @@ -76,6 +75,8 @@ </li> <li><a href="gun_event">gun_event(3)</a> - Events </li> +<li><a href="gun_ws_protocol">gun_ws_protocol(3)</a> - Websocket subprotocols +</li> </ul> <h2 id="_dependencies">Dependencies</h2> <ul><li><a href="cowlib_app">cowlib(7)</a> - Support library for manipulating Web protocols |