diff --git a/ring-android/app/src/main/java/cx/ring/service/DRingService.java b/ring-android/app/src/main/java/cx/ring/service/DRingService.java
index c56d4eb294e2307509c356f6daa608388a9be8f1..2a8f2ba4c1198d7e0879e9110ebeaff1075acfc1 100644
--- a/ring-android/app/src/main/java/cx/ring/service/DRingService.java
+++ b/ring-android/app/src/main/java/cx/ring/service/DRingService.java
@@ -1496,5 +1496,14 @@ public class DRingService extends Service {
                 }
             });
         }
+
+        public void connectivityChanged() {
+            getExecutor().execute(new SipRunnable() {
+                @Override
+                protected void doRun() throws SameThreadException, RemoteException {
+                    Ringservice.connectivityChanged();
+                }
+            });
+        }
     };
 }
diff --git a/ring-android/app/src/main/java/cx/ring/service/IDRingService.aidl b/ring-android/app/src/main/java/cx/ring/service/IDRingService.aidl
index 68c14998e2a721c91d0b286f48eb66761c0a59c1..24ffd145a45d57baf12a32ccc887360a7f25b4ec 100644
--- a/ring-android/app/src/main/java/cx/ring/service/IDRingService.aidl
+++ b/ring-android/app/src/main/java/cx/ring/service/IDRingService.aidl
@@ -111,4 +111,6 @@ interface IDRingService {
 
     int exportAccounts(in List accountIDs, in String toDir, in String password);
     int importAccounts(in String archivePath, in String password);
+
+    void connectivityChanged();
 }
diff --git a/ring-android/app/src/main/java/cx/ring/service/LocalService.java b/ring-android/app/src/main/java/cx/ring/service/LocalService.java
index 12611460bf8d19240915c9996641cee781cefd3e..a68e950f1518709d8f4b66ae113cce443fe8455b 100644
--- a/ring-android/app/src/main/java/cx/ring/service/LocalService.java
+++ b/ring-android/app/src/main/java/cx/ring/service/LocalService.java
@@ -1083,6 +1083,7 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
         if (dringStarted) {
             try {
                 getRemoteService().setAccountsActive(isConnected());
+                getRemoteService().connectivityChanged();
             } catch (RemoteException e) {
                 e.printStackTrace();
             }
diff --git a/ring-android/app/src/main/jni/configurationmanager.i b/ring-android/app/src/main/jni/configurationmanager.i
index 59b485b6059947b6f6dda15310c3f7e9c6176c10..a8d92a886a3c41e442c0654c44f2f312be0bca9a 100644
--- a/ring-android/app/src/main/jni/configurationmanager.i
+++ b/ring-android/app/src/main/jni/configurationmanager.i
@@ -169,6 +169,7 @@ void sendTrustRequest(const std::string& accountId, const std::string& to, const
 int exportAccounts(std::vector<std::string> accountIDs, std::string toDir, std::string password);
 int importAccounts(std::string archivePath, std::string password);
 
+void connectivityChanged();
 }
 
 class ConfigurationCallback {