# Realtime resource

Canonical page: https://docs.ovok.com/flutter-sdk/reference/ovok_sdk/realtime-resource

{/* Generated by scripts/generate_reference.dart; do not edit. */}

## RealtimeNotification [#realtimenotification]

```dart
typedef RealtimeNotification = Map<String, dynamic>
```

A FHIR `SubscriptionStatus` event notification received over a WebSocket.

`resources` holds the changed resources sent with the notification, in the
order the server sent them.


## RealtimeNotificationHandler [#realtimenotificationhandler]

```dart
typedef RealtimeNotificationHandler = void Function(Map<String, dynamic>)
```

Receives each event notification for a realtime subscription.


## RealtimeResource [#realtimeresource]

```dart
class RealtimeResource
```

Creates FHIR subscriptions and receives matching resource updates.

### Constructors [#constructors]

#### RealtimeResource.new [#realtimeresourcenew]

```dart
RealtimeResource(
  HttpClient _http,
  FhirResource _fhir,
  String _baseUrl,
  UserSession _session,
)
```

Built by the client; use `ovok.realtime` instead.

| Parameter | Type | Kind | Default |
| ------ | ------ | ------ | ------ |
| `_http` | `HttpClient` | positional |  |
| `_fhir` | `FhirResource` | positional |  |
| `_baseUrl` | `String` | positional |  |
| `_session` | `UserSession` | positional |  |

### Methods [#methods]

#### RealtimeResource.subscribe [#realtimeresourcesubscribe]

```dart
Future<RealtimeUnsubscribe> subscribe(String criteria, RealtimeNotificationHandler handler)
```

Subscribes to resources matching a FHIR search `criteria`.

The returned function closes the WebSocket and deletes the Subscription.
Throws [`OvokValidationException`](/flutter-sdk/reference/ovok_sdk/ovok-exception#ovokvalidationexception) when `criteria` is blank.

| Parameter | Type | Kind | Default |
| ------ | ------ | ------ | ------ |
| `criteria` | `String` | positional |  |
| `handler` | `RealtimeNotificationHandler` | positional |  |

Returns `Future<Future<void> Function()>`.


## RealtimeUnsubscribe [#realtimeunsubscribe]

```dart
typedef RealtimeUnsubscribe = Future<void> Function()
```

Stops a realtime subscription and removes its FHIR Subscription resource.
