# j-WebSocket

> Senden und empfangen Sie JSON-Nachrichten über einen erneut verbindenden WebSocket.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: de
Content-SHA256: 62885de7f9b4f8723735e4b2d3351e23f596483c81e1de23a132c915c2c6a73a
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: usage-reviewed

Die Komponente sendet und empfängt JSON über eine WebSocket-Verbindung mit automatischer Wiederverbindung. Konfigurieren Sie `url`, binden Sie einen Modellpfad für eingehende Nachrichten und rufen Sie zum Senden von Objekten die Methode `send` auf.


__Konfiguration__:

- `url {String}` URL für Websocket, sie kann relativ oder absolut sein
- `reconnect {Number}` kann nur eine Zahl enthalten (Millisekunden, Standard: `3000`)
- `encoder {Boolean}` führt die Kodierung/Dekodierung von Nachrichten über `URI` durch (Standard: `false`)
- __NEU__: `statsinterval {Number}`-Statistikintervall in Millisekunden (Standard: `1000`)
- __NEU__: `stats {String}` ein Link zur Methode `function({ received: Number, sent: Number })` oder Pfad zu einer Variablen (gemessen in Bytes)

__Methoden__:

- `component.send(obj)` – sendet ein JSON-serialisiertes Objekt an den Server
- `component.close()` – schließt die Verbindung
- `component.connect()` – öffnet die Verbindung
- `component.idletime(is)` - __NEW__ kann die Verbindung abbrechen/erneut öffnen

__Ereignisse__:

- `ON('message', function(data) {})` - empfangene Daten
- `ON('online', function(isOnline) {})` - online/offline

## Nutzung

```html
<ui-component name="websocket" path="updates.latest"
  config="url:/updates/"></ui-component>
<script>
  function sendUpdate(value) {
    SETTER('websocket/send', { type: 'update', value: value });
  }
</script>
```

Quelle: [Total.js Komponenten](https://github.com/totaljs/components/tree/910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e/j-WebSocket). Copyright Peter Širka und Mitwirkende. [MIT-Lizenz](/knowledge-licenses.json).
