diff --git a/matrix-util.js b/matrix-util.js
index 1bae060..be8e6fd 100644
--- a/matrix-util.js
+++ b/matrix-util.js
@@ -110,7 +110,7 @@ MatrixUtil.prototype.isPartnerOffline = function(partner) {
     return true;
 }
 
-MatrixUtil.prototype.isPartnerHealthy = function(partner) {
+MatrixUtil.prototype._isPartnerHealthy = function(partner) {
     if (!partner) { return; }
     partner = _cleanPartnerId(partner);
 
@@ -135,6 +135,26 @@ MatrixUtil.prototype.isPartnerHealthy = function(partner) {
     return isHealthy;
 }
 
+MatrixUtil.prototype.isPartnerHealthy = function(partner) {
+    let isHealthy = this._isPartnerHealthy(partner);
+
+    if (!matrix.healthy_partners) {
+        matrix.healthy_partners = [];
+    }
+
+    // update matrix
+    if (isHealthy) {
+        matrix.healthy_partners.push(partner);
+    }
+    else {
+        let idx = matrix.healthy_partners.indexOf(partner);
+        if (idx > -1) {
+            matrix.healthy_partners.splice(idx, 1);
+        }
+    }
+
+    return isHealthy;
+}
 
 MatrixUtil.prototype._updateLastResponseTime = function(partner) {
     let matrix = this.matrix;