diff --git a/src/app/datasources/stores/synchronizer.store.ts b/src/app/datasources/stores/synchronizer.store.ts
index 635e6db..e1b26b3 100644
--- a/src/app/datasources/stores/synchronizer.store.ts
+++ b/src/app/datasources/stores/synchronizer.store.ts
@@ -36,7 +36,7 @@
         if (!e.msg || !e.msg.changed_fields) {
           return false;
         }
-        return e.msg.changed_fields.indexOf('backend_status') > -1;
+        return (e.msg.changed_fields.indexOf('backend_status') > -1 || e.msg.changed_fields.indexOf('backend_code') > -1) && !e.skip_notification;
       })
       .subscribe(
         (event: IWSEvent) => {
diff --git a/src/app/datasources/websocket/global.ts b/src/app/datasources/websocket/global.ts
index 1367dc7..32f6f4a 100644
--- a/src/app/datasources/websocket/global.ts
+++ b/src/app/datasources/websocket/global.ts
@@ -23,6 +23,7 @@
 
 export interface IWSEvent {
   model: string;
+  skip_notification?: boolean;
   msg: {
     changed_fields: string[],
     object?: any,
@@ -60,18 +61,20 @@
           return;
         }
 
-        this.$log.info(`[WebSocket] Received Event for: ${data.model} [${data.msg.pk}]`);
+        this.$log.info(`[WebSocket] Received Event for: ${data.model} [${data.msg.pk}]`, data);
 
         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(',');
+          let event: IWSEvent = angular.copy(data);
           _.forEach(models, (m: string) => {
             // send event only if the parent class is not the same as the model class
-            if (data.model !== m) {
-              data.model = m;
-              this._events.next(data);
+            if (event.model !== m && m !== 'object') {
+              event.model = m;
+              event.skip_notification = true;
+              this._events.next(event);
             }
           });
         }
