---
title: "Référence d'API — nodefony — realtime-channelAdmission"
source: docs/api/core/realtime-channelAdmission.md
url: https://nodefony.github.io/nodefony-core/docs/api/core/realtime-channelAdmission/
---


[Documentation](../../../) › [Référence d'API](../../) › [`nodefony`](../) › realtime-channelAdmission

> Générée depuis les déclarations de types publiées de `nodefony` **10.0.0-beta.6** : exactement ce que reçoit une application qui l'installe. Cette page n'existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

## `nodefony`

`import { … } from "nodefony"` — 6 symboles.

### Interfaces (3)

#### `IChannelAdmission`

```ts
interface IChannelAdmission
```

Règle d'admission d'un canal écrite en CLASSE — la forme à prendre dès que la règle lit les données de l'application (une appartenance en base) : ses services lui arrivent par le constructeur.

- `allow(channel: string, who: ISubscriberIdentity): boolean | Promise<boolean>` — Admet-on `who` sur `channel` ?

#### `IChannelPolicy`

```ts
interface IChannelPolicy
```

Politique d'autorisation d'un canal temps réel — ce qu'il faut satisfaire pour s'y abonner (`subscribe`) ou y pousser (canal entrant), déclarée par `@RealtimeChannel(nom, politique)`.

- `readonly authenticated?: boolean` — Exige une connexion authentifiée (jeton non anonyme).
- `readonly roles?: readonly string[]` — Un de ces rôles suffit (évalué AVEC la hiérarchie de rôles, côté sécurité).
- `readonly scopes?: readonly string[]` — Un de ces scopes suffit (axe API : JWT, clé d'API ; une session n'en porte pas).
- `readonly allow?: ChannelAllow` — Règle d'admission PAR ABONNÉ, demandée une fois au `subscribe` après les exigences ci-dessus : une flèche qui ne lit que ses arguments, ou une classe `@injectable` résolue au démarrage (contrat : `ICh …
- `readonly anonymous?: boolean` — Un canal à `allow` refuse l'anonyme d'office ; `true` le lui présente (`who.id === null`).

#### `ISubscriberIdentity`

```ts
interface ISubscriberIdentity extends RealtimeIdentity
```

Identité d'ADMISSION d'un abonné — ce que reçoit la règle `allow` d'un canal, la MÊME quelle que soit la livraison (socket, flux SSE, abonnement webhook) ; SERVEUR seulement, jamais réémise au client.

- `readonly issuer: string | null` — Émetteur (`iss`) du jeton VÉRIFIÉ qui a ouvert cette livraison ; `null` quand aucun jeton n'est en jeu (session, clé d'API, anonyme).
- `readonly account: boolean` — `id` désigne un compte LOCAL que l'on peut relire ; `false` pour un appelant machine sans compte (`<émetteur>#<sujet>`) et pour l'anonyme.

### Types (3)

#### `ChannelAdmissionClass`

```ts
type ChannelAdmissionClass = new (...args: never[]) => IChannelAdmission
```

Classe d'admission telle qu'elle se déclare dans une politique : un constructeur `@injectable` qui produit un `IChannelAdmission`.

#### `ChannelAllow`

```ts
type ChannelAllow = ChannelAllowFunction | ChannelAdmissionClass
```

Valeur du membre `allow` d'une politique de canal — une flèche OU une classe `@injectable`, distinguées par la métadonnée `@injectable`, jamais par le texte de la fonction.

#### `ChannelAllowFunction`

```ts
type ChannelAllowFunction = (channel: string, who: ISubscriberIdentity) => boolean | Promise<boolean>
```

Règle d'admission sous forme de FLÈCHE — pour une règle qui ne lit rien d'autre que ses arguments (`channel === \`user:${who.id}\``).

---

[← Toutes les références d'API](../../)
