Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import {Injectable} from "@angular/core";
- import {WebSocketBroadcaster} from "./websocket.broadcaster";
- @Injectable()
- export class WebSocketService {
- protected ws: WebSocket = null;
- protected broadcaster:WebSocketBroadcaster;
- constructor() {
- this.broadcaster = new WebSocketBroadcaster();
- }
- run(onMessage: any) {
- if (this.ws === null) {
- this.ws = new WebSocket('ws://localhost:8082');
- this.ws.onopen = this.onOpen;
- this.ws.onmessage = onMessage;
- this.ws.onclose = this.onClose;
- this.ws.onerror = this.onError;
- }
- }
- public onOpen = () => {
- }
- public send = (data) => {
- if (typeof data === 'string') {
- this.ws.send(data);
- } else if (typeof data === 'object') {
- this.ws.send(JSON.stringify(data));
- }
- }
- public onError = (event: Event): any => {
- //console.error('WebSocket error: ', event);
- this.broadcaster.ee.emit({
- data: 'blbasdasdasd'
- });
- console.log(this.broadcaster.ee);
- }
- public onClose = (event:CloseEvent) => {
- if (event.wasClean) {
- console.log('Соединение закрыто чисто');
- } else {
- console.log('Обрыв соединения'); // server unavailable
- }
- this.broadcaster.ee.emit({
- data: 'blbasdasdasd'
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement