2024/01/29
Make the
WebcomError.toException()
public
Switch the build chain to Gradle-Kotlin
2023/12/13
Fix the release version of the Webcom SDK, which was buggy when using minification/shrinking with pro-guard (WEBCOM-1958)
2023/10/31
datasync: Added retrieval of long-term subscriptions (through push notifications and webhooks) with
DatasyncService.getLongTermSubscriptions()
and
DatasyncService.cleanLongTermSubscriptions()
methods (WEBCOM-1676)
datasync: Added a callback
parameter to the
DatasyncNode.cancelNextDisconnectionAction()
method
datasync: Added a constructor to the
ISO8601Date()
class to build a date from an ISO6801 string
Added an API to manage logs emitted by the Webcom SDK in the
Webcom()
static object
Include version 3.5.3 of the javascript Webcom SDK (webcom-auth-sldb.js)
Update dependencies
2023/06/15
Include version 3.4.1 of the javascript Webcom SDK (webcom-auth-sldb.js)
2023/02/21
auth: removed Spain (OES) from Mobile Connect available OrangeVariant
countries (WEBCOM-1556)
2023/02/02
Fix calls to some SDK APIs may block calling application
2023/01/24
Fix missing classes from SDK (disable proguard minification)
2023/01/19
datasync: Added support of DatasyncTime.OnDisconnection
value for 'at' parameter of set/merge/clear APIs
datasync: Added CryptoMethod.availableMethods()
API to get list of the user's device currently available cryptographic methods.
datasync: Added isWebcomPushNotification()
API to know if push notification is originating from webcom
datasync: Added subscription API to data
and auth
through Livedata
auth: Added extra OAuth2 parameters expiresIn, refreshToken
datasync: Added dispose/finalize APIs to delete resources from manager
or application
datasync: Fix wrong usage of 'at' parameter of set
/merge
/clear
APIs
unit tests
Gitlab CImoved to grass runners, improved rdt devices release, fix wrong test results on failure
SDK:
2022/09/29
Moved sdkv2
package to sdk
Added missing parts of documentation
2022/09/16
Remove deprecated APIs
Internally, use only JS V3 APIs
Refactor project: removed old code and merge sdk and sdkv2 packages
2022/06/14
Upgrade to gradle 7 build tools
Improve unit tests
2022/05/18
Fix the obfuscation problems when activating proguard/R8 (WEBCOM-1296)
datasync: Synchronize the access to the list of current subscriptions within
DatasyncManager
in order to avoid exceptions when cancelling a subscription (WEBCOM-1267)
Include version 3.0.0 of the javascript Webcom SDK
2022/02/02
datasync: Fix the initialization of the online/offline events (WEBCOM-1245)
2022/01/24
datasync: Set the default keepAlive period to 170 seconds (instead of 45 seconds) in order to save the battery on mobile devices (WEBCOM-947)
datasync: Prevent the subscription callbacks from being called with data from the local cache when the subscription is done while the websocket is being established (WEBCOM-1152)
2021/12/09
auth: Add the PersonalPasswordMethod.resendVerificationToken()
method
auth: Better type the IdentityDetails.providerProfile
property
(Map<String,String>?
instead of Any?
)
auth: Add the mcc
parameter to the
AuthenticationService.getOrangeMobileNetworkMethod()
method
datasync: Add the previousKey
property to the SubscribableEvent.Child.Added
and SubscribableEvent.Child.Changed
interfaces
datasync: Add the Subscriber.cancelSubscriptionsThroughPushNotification()
and
Subscriber.cancelSubscriptionsThroughWebhook()
methods
datasync: Add the DatasyncManager.rootNode
property
datasync: Add the DatasyncNode.timestamp
property
datasync: Add the TimeStampData.Server
constant to represent the server timestamp
datasync: Add a constraint parameter to the DatasyncNode.get()
method
datasync: Add the startOnline
property to the WebcomConfiguration
class, in order to make it possible to start the DatasyncService of an application offline
datasync: Make the configuration
property of the WebcomApplication
class public
Add the WebcomConfiguration.withOfflineCache()
and WebcomConfiguration.withStartOnline()
methods to dynamically set up a Webcom configuration
datasync: Fix the getCache()
method on the root node of an application
datasync: Fix the cancelation of subscriptions with constraints (WEBCOM-1170)
datasync: Fix the unsubscription through the mobile push notification channel: revocations are no longer sent if not requested and are correctly deciphered if so (WEBCOM-1192)
datasync: Fix the getter of the DatasyncService.isConnectionEnabled
property when the
Webcom application starts offline
datasync: Fix the DatasyncNode.get()
method so that it keeps read data within the
local cache
datasync: Introduce the TreeLikeData
interface to specify the
DatasyncValue
API, entirely review the method set to convert instances to primitive or custom classes.
datasync: Rename the DatasyncManager.unsubscribeFromAllEvents
method into
DatasyncManager.dispose
.
datasync: Rename the DatasyncNode.getCache
method into
DatasyncNode.getFromCache
.
datasync: Review the design of event subscription and notification:
Notifiable
base interface for events (to subscribe to), with the special
SubscribableEvent
interface for all datasync node subscriptionsNotification<out T:Notifiable>
interface for notification of events, to be
passed to callback functionsSubscriber
class) to pass the subscribed
events as KClass<T:SubscribableEvent>
(instead of EventType
, which has been
removed)Subscriber
CallbackEvent
to SubscribableEvent
auth: Rename OAuth2Method.Provider.DIOD
into
OAuth2Method.Provider.OrangeConnect
, and OAuth2Method.Provider.Employee
into
OAuth2Method.Provider.OrangeEmployee
auth: Move the options
parameter (of type OAuth2Method.Options
of the
OAuth2Method.authenticate()
method to the AuthenticationService.getOAuth2Method()
method.
Replace the WebcomApplication
constructor with the WebcomApplication.fromConfiguration()
,
WebcomApplication.fromAsset()
and WebcomApplication.fromProperties()
static methods
Remove the WebcomApplication.withConfiguration()
, WebcomApplication.withAsset()
and
WebcomApplication.withProperties()
static methods
2021/09/16
auth: Add the withCustomTabsBuilder
method to the OAuth2Method.Options
class, to make it possible to customize the look and feel of the browser that displays the OAuth2 authorize endpoint
datasync: Add the SubscriptionOptions
class to support a cancelation policy
specifically to each subscription (WEBCOM-689)
datasync: Add the DatasyncNode.getCache
method to get the value of a data node
currently stored in the local cache (WEBCOM-689)
datasync: Rename DatasyncValuable
class into DatasyncValue
datasync: Move all subscription-related classes to the sdkv2.datasync.subscription
package
datasync: Introduce the Notification
class, and update accordingly the signature of
the Subscriber.subscribe
method
datasync: Rename SubscriptionCancelationPolicy
class into
CancelationPolicy
datasync: Rename Type
class into EventType
and update its class hierarchy
datasync: Rename DataEvent
class into PushNotificationEvent
and update
its class hierarchy according to the one of the new EventType
class
datasync: Rename Event
class into CallbackEvent
and update its class
hierarchy according to the one of the new EventType
class
auth: Replace the forcesWebView
property of OAuth2Method.Options
with userAgent
(WEBCOM-999)
Include version 2.15.0 of the javascript Webcom SDK
2021/05/11
datasync: Add the DatasyncNode.increment
method, which implements atomic increment in
a more efficient way than the TransactionOperation.increment
and
TransactionOperation.decrement
methods (WEBCOM-819)
datasync: Add the includesAcknowledgements
parameter to the
Subscriber.subscribe
method, as well as the Event.acknowledged
and
Event.isAcknowledgement
properties. All together, these make it possible to watch whether some
data is acknowledged by the Webcom back end (WEBCOM-727)
datasync: Add the Webcom.DeviceIdentifier
type to manage both FCM- and HMS- based push
notifications (WEBCOM-632)
datasync: Add the WebcomConfiguration.pingDelayMs
and
WebcomConfiguration.pongDelayMs
properties to control the keep-alive mechanism on the websocket
datasync: Add the DatasyncState.authenticationDetails
property
datasync: Add the ConnectionState.backendTimeOffsetMilliseconds
property
datasync: Update the DatasyncNode.push()
method so that the passed
callback
now receives the name of the created sub-node in parameter
auth: Add the AuthenticationState.details
property
datasync: Fix DatasyncSubscription.cancel()
method when subscribed to several event
types (WEBCOM-965)
datasync: Fix exceptions raised when handling asynchronously the execution of callbacks associated with already cancelled subscriptions
datasync: Make it possible to decode tokens from not encrypted notifications
auth: Fix the deserialization of the Email provider within authentication details
datasync: Remove the OneTimePasswordMethod.SMSSender
enum class (WEBCOM-962, 433, 1003)
datasync: Rename members of SubscriptionCancellationPolicy
into
SubscriptionCancelationPolicy
, and its members into KeepUpdating
,
KeepUpdatingWhenImplicit
and Clear
datasync: Replace DatasyncService.connect()
, DatasyncService.disconnect()
,
DatasyncService.shouldBeConnected
with the boolean settable
DatasyncService.isConnectionEnabled
property
datasync: Rename the DatasyncNode.name
property into key
and the
DatasyncNode.child()
method into relativeNode()
auth: Rename AuthenticationState.Required
into AuthenticationState.Invalid
Include version 2.14.0 of the javascript Webcom SDK
2020/09/09
datasync: Add the DatasyncService.state
property
datasync: Add the DatasyncService.PresenceState
class to simplify the usage of the
presence publisher feature
Replace the WebcomApplication.service()
methods with a specific property for each available service:
authenticationService
and datasyncService
datasync: Rename offlineData
into offlineCache
within property and method
names
2020/09/02
datasync: Improve the API and implementation of the DatasyncValuable
class
datasync: Improve the API of the subscribe
methods of the Subscriber
class in order to handle subscription revocations from the back end (the catchingCancel
method has
been removed)
datasync: Add a subscription cancelation policy to DatasyncManager
in order to
control how data watched by canceled subscriptions are kept within the local cache (WEBCOM-586)
datasync: Add offlineData
and cleanOfflineData
methods to the
DatasyncService
class in order to get or clean data within the local cache (WEBCOM-586)
authentication: Improve the OAuth2 call-flow (WEBCOM-599)
Fix some serialization/deserialization problems to/from the tree-like representation of values from the Datasync service
Complete the Kotlin documentation of classes and methods (except in the
com.orange.webcom.sdk.lifecycle
package)
Include version 2.11.4 of the javascript Webcom SDK
2020/06/02
The 2.X Webcom SDK for Android is out!