aboutsummaryrefslogtreecommitdiff
path: root/public/docs/Code Documentation/SocketIO
diff options
context:
space:
mode:
authorJakob Stendahl <jakob.stendahl@outlook.com>2021-09-19 19:43:11 +0200
committerJakob Stendahl <jakob.stendahl@outlook.com>2021-09-19 19:43:11 +0200
commit7bdce37fd3f18e2712e18c4e2c64cac69af0aca1 (patch)
treeb7ad3f1cca92e2dfd2664ae9e65652bd03ff58b2 /public/docs/Code Documentation/SocketIO
parente6880cd8ccf82d993f222cb14b4860581654acb8 (diff)
downloadLuxcena-Neo-7bdce37fd3f18e2712e18c4e2c64cac69af0aca1.tar.gz
Luxcena-Neo-7bdce37fd3f18e2712e18c4e2c64cac69af0aca1.zip
:boom: Introduce new UI based on svelte, and rewrite a lot of the node app and the NeoRuntime
Diffstat (limited to 'public/docs/Code Documentation/SocketIO')
-rw-r--r--public/docs/Code Documentation/SocketIO/index.html989
1 files changed, 989 insertions, 0 deletions
diff --git a/public/docs/Code Documentation/SocketIO/index.html b/public/docs/Code Documentation/SocketIO/index.html
new file mode 100644
index 0000000..edcf9b1
--- /dev/null
+++ b/public/docs/Code Documentation/SocketIO/index.html
@@ -0,0 +1,989 @@
+
+
+
+
+<!doctype html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.4.2">
+
+
+
+ <title>Socket-IO - Luxcena Neo Documentation</title>
+
+
+
+ <link rel="stylesheet" href="../../assets/stylesheets/application.30686662.css">
+
+
+
+
+ <script src="../../assets/javascripts/modernizr.74668098.js"></script>
+
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono&display=fallback">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+
+ <link rel="stylesheet" href="../../assets/fonts/material-icons.css">
+
+
+ <link rel="stylesheet" href="../../assets/luxcena-colors.css">
+
+
+
+
+
+ </head>
+
+ <body dir="ltr">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
+
+ <a href="#socketio" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../.." title="Luxcena Neo Documentation" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+ <span class="md-header-nav__topic">
+ Luxcena Neo Documentation
+ </span>
+ <span class="md-header-nav__topic">
+
+ Socket-IO
+
+ </span>
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="__search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="__search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ &#xE5CD;
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main" role="main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="__drawer">
+ <a href="../.." title="Luxcena Neo Documentation" class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ Luxcena Neo Documentation
+ </label>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../.." title="Introduction" class="md-nav__link">
+ Introduction
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../FuturePlan/" title="Plan for the future" class="md-nav__link">
+ Plan for the future
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Usage
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Usage
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../Usage/Install/" title="Install" class="md-nav__link">
+ Install
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../Usage/Configuration/" title="Configuration" class="md-nav__link">
+ Configuration
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../Usage/CLI/" title="CLI" class="md-nav__link">
+ CLI
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
+
+ <label class="md-nav__link" for="nav-4">
+ Scripting
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ Scripting
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../Scripting/SupportLib/" title="Support Library" class="md-nav__link">
+ Support Library
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2">
+
+ <label class="md-nav__link" for="nav-4-2">
+ Examples
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ Examples
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../Scripting/Examples/strandtest/" title="Strandtest" class="md-nav__link">
+ Strandtest
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5" checked>
+
+ <label class="md-nav__link" for="nav-5">
+ Code Documentation
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Code Documentation
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-1" type="checkbox" id="nav-5-1">
+
+ <label class="md-nav__link" for="nav-5-1">
+ Modules
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-5-1">
+ Modules
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../Modules/CompileAndRun/" title="CompileAndRun" class="md-nav__link">
+ CompileAndRun
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../Run/" title="Run" class="md-nav__link">
+ Run
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../Design/" title="Design" class="md-nav__link">
+ Design
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-4" type="checkbox" id="nav-5-4" checked>
+
+ <label class="md-nav__link" for="nav-5-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-5-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
+
+
+
+
+ <label class="md-nav__link md-nav__link--active" for="__toc">
+ Socket-IO
+ </label>
+
+ <a href="./" title="Socket-IO" class="md-nav__link md-nav__link--active">
+ Socket-IO
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="__toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#client" class="md-nav__link">
+ Client
+ </a>
+
+ <nav class="md-nav">
+ <ul class="md-nav__list">
+
+ <li class="md-nav__item">
+ <a href="#connect" class="md-nav__link">
+ Connect
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#actions" class="md-nav__link">
+ "Actions"
+ </a>
+
+ <nav class="md-nav">
+ <ul class="md-nav__list">
+
+ <li class="md-nav__item">
+ <a href="#neoruntimestatus" class="md-nav__link">
+ NeoRuntime/status
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptcreate" class="md-nav__link">
+ NeoRuntime/Script/Create
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptdelete" class="md-nav__link">
+ NeoRuntime/Script/Delete
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptselect" class="md-nav__link">
+ NeoRuntime/Script/Select
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptsget" class="md-nav__link">
+ NeoRuntime/Scripts/get
+ </a>
+
+</li>
+
+ </ul>
+ </nav>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#events" class="md-nav__link">
+ "Events"
+ </a>
+
+</li>
+
+ </ul>
+ </nav>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#server" class="md-nav__link">
+ Server
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="__toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#client" class="md-nav__link">
+ Client
+ </a>
+
+ <nav class="md-nav">
+ <ul class="md-nav__list">
+
+ <li class="md-nav__item">
+ <a href="#connect" class="md-nav__link">
+ Connect
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#actions" class="md-nav__link">
+ "Actions"
+ </a>
+
+ <nav class="md-nav">
+ <ul class="md-nav__list">
+
+ <li class="md-nav__item">
+ <a href="#neoruntimestatus" class="md-nav__link">
+ NeoRuntime/status
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptcreate" class="md-nav__link">
+ NeoRuntime/Script/Create
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptdelete" class="md-nav__link">
+ NeoRuntime/Script/Delete
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptselect" class="md-nav__link">
+ NeoRuntime/Script/Select
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#neoruntimescriptsget" class="md-nav__link">
+ NeoRuntime/Scripts/get
+ </a>
+
+</li>
+
+ </ul>
+ </nav>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#events" class="md-nav__link">
+ "Events"
+ </a>
+
+</li>
+
+ </ul>
+ </nav>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#server" class="md-nav__link">
+ Server
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+
+ <h1 id="socketio">SocketIO</h1>
+<h2 id="client">Client</h2>
+<p>Socketio is setup in the file <code class="codehilite"><span class="n">globals</span></code>.
+This means, import <code class="codehilite"><span class="n">globals</span></code>, and then you can use <code class="codehilite"><span class="n">Socket</span></code> from there.</p>
+<h3 id="connect">Connect</h3>
+<ol>
+<li>Client first needs to get an Authentication token,
+ this can be obtained by doing this:
+ <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span>1
+2
+3
+4
+5
+6
+7
+8
+9</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span><span class="nx">setCookie</span><span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;../../../cookies&quot;</span><span class="p">;</span>
+<span class="kd">let</span> <span class="nx">CryptoJS</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s2">&quot;crypto-js&quot;</span><span class="p">);</span>
+<span class="kd">let</span> <span class="nx">passwordHash</span> <span class="o">=</span> <span class="nx">CryptoJS</span><span class="p">.</span><span class="nx">SHA256</span><span class="p">(</span><span class="o">&lt;</span><span class="nx">PASSWORD</span><span class="o">&gt;</span><span class="p">;).</span><span class="nx">toString</span><span class="p">();</span>
+
+<span class="nx">Socket</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="s2">&quot;authenticate&quot;</span><span class="p">,</span> <span class="o">&lt;</span><span class="nx">USERNAME</span><span class="o">&gt;</span><span class="p">,</span> <span class="nx">passwordHash</span><span class="p">,</span> <span class="p">(</span><span class="nx">token</span><span class="p">)</span> <span class="p">=&gt;</span> <span class="p">{</span>
+ <span class="c1">// Token will be a string if username/password combo is right,</span>
+ <span class="c1">// if not, it is false.</span>
+ <span class="nx">setCookie</span><span class="p">(</span><span class="s2">&quot;session_token&quot;</span><span class="p">,</span> <span class="nx">token</span><span class="p">,</span> <span class="mi">500</span><span class="p">);</span>
+<span class="p">};)</span>
+</pre></div>
+</td></tr></table></li>
+<li>Then the user can authenticate like this:
+ <table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span>1
+2
+3
+4
+5
+6
+7</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span><span class="nx">getCookie</span><span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;../../../cookies&quot;</span><span class="p">;</span>
+<span class="kd">let</span> <span class="nx">cookieToken</span> <span class="o">=</span> <span class="nx">getCookie</span><span class="p">(</span><span class="s2">&quot;session_token&quot;</span><span class="p">);</span>
+
+<span class="nx">Socket</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="s2">&quot;authenticateToken&quot;</span><span class="p">,</span> <span class="nx">cookieToken</span><span class="p">,</span> <span class="p">(</span><span class="nx">res</span><span class="p">)</span> <span class="p">=&gt;</span> <span class="p">{</span>
+ <span class="c1">// Res is true if we got authenticated,</span>
+ <span class="c1">// If not, it is false.</span>
+<span class="p">});</span>
+</pre></div>
+</td></tr></table></li>
+<li>We are now authenticated, and all actions and events are available to the client.</li>
+</ol>
+<h3 id="actions">"Actions"</h3>
+<table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span>1
+2</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="nx">Socket</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="nx">Action</span><span class="p">,</span> <span class="o">*</span><span class="nx">Arguments</span><span class="p">,</span> <span class="p">(</span><span class="nx">Return</span><span class="p">)</span> <span class="p">=&gt;</span> <span class="p">{</span>
+<span class="p">};)</span>
+</pre></div>
+</td></tr></table>
+
+<h5 id="neoruntimestatus">NeoRuntime/status</h5>
+<table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>status</td>
+<td>object</td>
+<td></td>
+</tr>
+</tbody>
+</table>
+<details class="info"><summary>Return/status</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>currentScript</td>
+<td>string</td>
+<td>"None"/Name of current script</td>
+</tr>
+<tr>
+<td>scriptIsExited</td>
+<td>boolean</td>
+<td></td>
+</tr>
+<tr>
+<td>uptime</td>
+<td>number</td>
+<td></td>
+</tr>
+</tbody>
+</table>
+</details>
+<h5 id="neoruntimescriptcreate">NeoRuntime/Script/Create</h5>
+<details class="info"><summary>Arguments</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>scriptPath</td>
+<td>string</td>
+<td>Path of the new script, local/example</td>
+</tr>
+</tbody>
+</table>
+</details>
+<details class="info"><summary>Return</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>res</td>
+<td>boolean</td>
+<td>success</td>
+</tr>
+<tr>
+<td>resMsg</td>
+<td>string</td>
+<td>if fail, errorMessage</td>
+</tr>
+</tbody>
+</table>
+</details>
+<h5 id="neoruntimescriptdelete">NeoRuntime/Script/Delete</h5>
+<details class="info"><summary>Arguments</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>scriptPath</td>
+<td>string</td>
+<td>Path of the script to delete, local/example</td>
+</tr>
+</tbody>
+</table>
+</details>
+<details class="info"><summary>Return</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>res</td>
+<td>boolean</td>
+<td>success</td>
+</tr>
+<tr>
+<td>resMsg</td>
+<td>string</td>
+<td>if fail, errorMessage</td>
+</tr>
+</tbody>
+</table>
+</details>
+<h5 id="neoruntimescriptselect">NeoRuntime/Script/Select</h5>
+<details class="info"><summary>Arguments</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>scriptPath</td>
+<td>string</td>
+<td>Path of the script to start, local/example</td>
+</tr>
+</tbody>
+</table>
+</details>
+<h5 id="neoruntimescriptsget">NeoRuntime/Scripts/get</h5>
+<details class="info"><summary>Return</summary><table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>local</td>
+<td>list</td>
+<td>local scripts</td>
+</tr>
+<tr>
+<td>remote</td>
+<td>list</td>
+<td>remote scripts</td>
+</tr>
+</tbody>
+</table>
+</details>
+<h3 id="events">"Events"</h3>
+<p><table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span>1
+2
+3
+4
+5</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="c1">// Listen for a event</span>
+<span class="nx">Socket</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="nx">event</span> <span class="o">+</span> <span class="s2">&quot;::join&quot;</span><span class="p">);</span>
+<span class="nx">Socket</span><span class="p">.</span><span class="nx">on</span><span class="p">(</span><span class="nx">event</span><span class="p">,</span> <span class="p">(</span><span class="o">*</span><span class="nx">Return</span><span class="p">);</span> <span class="p">=&gt;</span> <span class="p">{</span>
+
+<span class="p">})</span>
+</pre></div>
+</td></tr></table>
+<table class="codehilitetable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span>1
+2</pre></div></td><td class="code"><div class="codehilite"><pre><span></span><span class="c1">// Stop listening for an event</span>
+<span class="nx">Socket</span><span class="p">.</span><span class="nx">emit</span><span class="p">(</span><span class="nx">event</span> <span class="o">+</span> <span class="s2">&quot;::leave&quot;</span><span class="p">)</span>
+</pre></div>
+</td></tr></table></p>
+<h2 id="server">Server</h2>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../Design/" title="Design" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Design
+ </span>
+ </div>
+ </a>
+
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="https://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../assets/javascripts/application.c648116f.js"></script>
+
+ <script>app.initialize({version:"1.0.4",url:{base:"../.."}})</script>
+
+ <script src="../../assets/luxcena-colors.js"></script>
+
+ <script src="../../assets/webfont.js"></script>
+
+ <script src="../../assets/snap.svg-min.js"></script>
+
+ <script src="../../assets/underscore-min.js"></script>
+
+ <script src="../../assets/sequence-diagram.min.js"></script>
+
+ <script src="../../assets/js-sequence.js"></script>
+
+
+ </body>
+</html> \ No newline at end of file