OpenFin FDC3 support

OpenFin has supported FDC3 for several years, but since the release of 19.89.61, we have updated our FDC3 support with the intention of making FDC3 easier for developers to use. What used to be a separate service that required configuration and administration is now built right into our platform offering.

With OpenFin 19.89.61 we introduced FDC3 1.2 contexts into our new, easy to use API. With 20.91.63 we introduced FDC3 1.2 intents. With 21.93.65 we have full API compliance for FDC3 1.2 intents.

With OpenFin v29, currently in Canary release, OpenFin introduces FDC3 2.0 support. This allows you to test out the new features of FDC3 2.0 within the OpenFin environment.

OpenFin's FDC3 support is forward and backward compatible, which allows you to use and interconnect FDC3 1.2 and FDC3 2.0 applications simultaneously, easing your migration path to FDC3 2.0.

You can download the Canary release at the OpenFin Runtime Versions download page.

Specifics of FDC3 development in OpenFin

OpenFin makes FDC3 application and platform development easier by providing built-in functionality needed by both application developers and platform developers.

OpenFin FDC3 application development

OpenFin simplifies FDC3 application development by providing a built-in DesktopAgent (called the Interop Broker), automatically connecting applications to the Interop Broker, and providing built-in System Channel and App Channel management.

OpenFin FDC3 App Development

OpenFin FDC3 platform development

OpenFin also simplifies platform development by providing the built-in Interop Broker, which handles cross-app communication for you.

OpenFin FDC3 Platform Development

How to enable support for FDC3 1.2 and 2.0

OpenFin allows you to select which version of FDC3 you want to enable in a View or a Window and allows you to use multiple versions within the same platform application.

Use the fdc3InteropApi property to set the version of FDC3 support.

  • Set it to 1.2 to use FDC3 1.2
  • Set it to 2.0 to use FDC3 2.0

You can set the fdc3InteropApi property in defaultViewOptions or defaultWindowOptions in the platform manifest to set a default for the platform.

You can also set the fdc3InteropApi property for an individual View or Window, which overrides any default, in case the underlying application requires a specific version.

Example configuration snippet:

{
  "platform": {
    "uuid": "example_platform",
    ...,
    "defaultViewOptions": {
      "fdc3InteropApi" : '1.2',
      ...
    }
  },
  ...
}

How to migrate from the FDC3 service to the OpenFin FDC3 API

It's a bit of a change to move from a system where you had to do a lot of things yourself, to a system where a lot is taken care of for you. If you'd like to read some of our guidelines on how best to migrate your existing apps from our previous FDC3 service to our current FDC3 service, read How to migrate from the FDC3 service to the OpenFin FDC3 API.