diff --git a/src/app/datasources/websocket/global.ts b/src/app/datasources/websocket/global.ts
index a5852c8..a820269 100644
--- a/src/app/datasources/websocket/global.ts
+++ b/src/app/datasources/websocket/global.ts
@@ -1,4 +1,5 @@
 import * as io from 'socket.io-client';
+import * as _ from 'lodash';
 import {Subject, Observable} from 'rxjs/Rx';
 import {IXosAppConfig} from '../../../index';
 
@@ -17,16 +18,31 @@
 
 export class WebSocketEvent {
 
-  static $inject = ['AppConfig'];
+  static $inject = [
+    'AppConfig',
+    '$log'
+  ];
 
   private _events: Subject<IWSEvent> = new Subject<IWSEvent>();
     private socket;
     constructor(
-      private AppConfig: IXosAppConfig
+      private AppConfig: IXosAppConfig,
+      private $log: ng.ILogService
     ) {
       this.socket = io(this.AppConfig.websocketClient);
       this.socket.on('event', (data: IWSEvent): void => {
+          this.$log.debug(`[WebSocket] Received Event for: ${data.model} [${data.msg.pk}]`);
           this._events.next(data);
+
+          // NOTE update observers of parent classes
+          if (data.msg.object.class_names && angular.isString(data.msg.object.class_names)) {
+            const models = data.msg.object.class_names.split(',');
+            _.forEach(models, (m: string) => {
+              data.model = m;
+              this._events.next(data);
+            });
+          }
+
         });
     }
     list() {
