diff --git a/packages/at_client/CHANGELOG.md b/packages/at_client/CHANGELOG.md index 7ee4f0f45..7f8989cc1 100644 --- a/packages/at_client/CHANGELOG.md +++ b/packages/at_client/CHANGELOG.md @@ -1,3 +1,5 @@ +## 3.0.68 +- feat: have AtRpc use ephemeral notifications ## 3.0.67 - feat: Make enrollment available to SyncService/NotificationService for authentication ## 3.0.66 diff --git a/packages/at_client/lib/src/preference/at_client_config.dart b/packages/at_client/lib/src/preference/at_client_config.dart index 683850a15..bf344f2cc 100644 --- a/packages/at_client/lib/src/preference/at_client_config.dart +++ b/packages/at_client/lib/src/preference/at_client_config.dart @@ -10,7 +10,7 @@ class AtClientConfig { /// Represents the at_client version. /// Must always be the same as the actual version in pubspec.yaml - final String atClientVersion = '3.0.67'; + final String atClientVersion = '3.0.68'; /// Represents the client commit log compaction time interval /// diff --git a/packages/at_client/lib/src/rpc/at_rpc.dart b/packages/at_client/lib/src/rpc/at_rpc.dart index 41aa7bb0c..3c06412ab 100644 --- a/packages/at_client/lib/src/rpc/at_rpc.dart +++ b/packages/at_client/lib/src/rpc/at_rpc.dart @@ -32,6 +32,8 @@ abstract class AtRpcCallbacks { class AtRpc { static final AtSignLogger logger = AtSignLogger('AtRpc'); + static Duration defaultNotificationExpiry = Duration(seconds: 30); + /// The [AtClient] used by this AtRpc final AtClient atClient; @@ -143,7 +145,9 @@ class AtRpc { logger.info( 'Sending notification ${requestRecordID.toString()} with payload $requestJson'); await atClient.notificationService.notify( - NotificationParams.forUpdate(requestRecordID, value: requestJson), + NotificationParams.forUpdate(requestRecordID, + value: requestJson, + notificationExpiry: defaultNotificationExpiry), checkForFinalDeliveryStatus: false, waitForFinalDeliveryStatus: false); sent = true; @@ -171,9 +175,7 @@ class AtRpc { final Metadata _defaultMetaData = Metadata() ..isPublic = false ..isEncrypted = true - ..namespaceAware = true - ..ttr = -1 - ..ttl = 60 * 60 * 1000; // 1 hour + ..namespaceAware = true; /// Not part of API, but visibleForTesting. /// Receives 'request' notifications, and @@ -343,7 +345,8 @@ class AtRpc { "Sending notification $responseAtKey with payload ${response.toJson()}"); await atClient.notificationService.notify( NotificationParams.forUpdate(responseAtKey, - value: jsonEncode(response.toJson())), + value: jsonEncode(response.toJson()), + notificationExpiry: defaultNotificationExpiry), checkForFinalDeliveryStatus: false, waitForFinalDeliveryStatus: false); sent = true; diff --git a/packages/at_client/pubspec.yaml b/packages/at_client/pubspec.yaml index 137fb8c39..797644aa6 100644 --- a/packages/at_client/pubspec.yaml +++ b/packages/at_client/pubspec.yaml @@ -4,7 +4,7 @@ description: The at_client library is the non-platform specific Client SDK which ## ## ## NB: When incrementing the version, please also increment the version in AtClientConfig file -version: 3.0.67 +version: 3.0.68 ## NB: When incrementing the version, please also increment the version in AtClientConfig file ##