Les alertes peuvent être liées à différentes entités dans un flux et appliquées simultanément à une combinaison d'arrêts, de stations, d'agences, d'itinéraires et d'autres paramètres.
Cet article décrit les combinaisons courantes auxquelles une alerte peut être appliquée.
Utilisation de informed_entity
Lorsque plusieurs éléments informed_entity
sont spécifiés pour une seule alerte, celle-ci est appliquée aux entités qui correspondent à l'une des valeurs spécifiées.
L'exemple ci-dessous illustre deux éléments informed_entity
qui spécifient chacun un itinéraire différent. Cet extrait permet d'appliquer l'alerte à tous les trajets appartenant aux deux itinéraires et à tous les arrêts desservis lors des trajets assurés par les deux itinéraires.
id: "2"
alert {
informed_entity {
route_id: "1"
}
informed_entity {
route_id: "2"
}
...
}
Lorsque plusieurs champs sont renseignés pour la même entité informed_entity
, l'alerte n'est appliquée qu'aux entités qui correspondent à toutes les valeurs renseignées.
Dans l'exemple ci-dessous, informed_entity
spécifie à la fois un itinéraire (route_id
) et un arrêt (stop_id
). L'alerte ne s'appliquera qu'aux segments de trajets qui appartiennent à l'itinéraire pour cet arrêt spécifique. Elle ne s'affichera pas si un trajet de l'itinéraire indiqué ne passe pas par l'arrêt spécifié pendant le parcours. À l'inverse, elle n'apparaîtra pas pour les trajets passant par l'arrêt indiqué, mais n'appartenant pas à l'itinéraire spécifié.
id: "2"
alert {
informed_entity {
route_id: "1"
stop_id: "2"
}
...
}
Utilisation de active_period
Le champ trip
dans informed_entity
vous permet de sélectionner une date et une heure pour un trajet particulier. Les autres champs vous permettent de sélectionner des entités telles que les arrêts concernés, mais ne fournissent pas assez d'informations pour indiquer quand les alertes doivent être appliquées.
La valeur active_period
doit être utilisée conjointement avec informed_entity
pour définir la période pendant laquelle l'alerte sera appliquée sur les entités correspondantes. Toutefois, cette combinaison ne définit pas le moment où les utilisateurs peuvent voir l'alerte.
Prenons l'exemple d'une alerte créée le 20 décembre avec une plage active_period
portant sur tous les trajets du 25 décembre.
Les utilisateurs peuvent voir l'alerte s'ils font une recherche à l'avance, à partir du 20 décembre, sur les trajets prévus le 25 décembre, mais pas sur les trajets ayant lieu en dehors de la plage active_period
.
Si active_period
n'est pas fourni, l'alerte est appliquée à informed_entity
immédiatement après sa création et jusqu'à ce qu'elle soit supprimée du flux.
Ne créez l'alerte que lorsque vous souhaitez que les utilisateurs la voient pour éviter que son contenu soit affiché prématurément. Par exemple, une alerte concernant de nouvelles mesures de distanciation sociales à venir ne doit pas être publiée avant les communiqués de presse officiels.
Combinaisons de sélecteurs d'entité
Au niveau de l'agence
Champ d'application :
- Tous les itinéraires et trajets appartenant à l'agence
- Tous les arrêts de bus desservis par des trajets appartenant à l'agence
Détails d'implémentation :
- Seul le champ
agency_id
doit être renseigné pourinformed_entity
. active_period
doit définir la période pendant laquelle cette alerte est appliquée.
Exemple de scénario : Problème de signalisation sur les voies de train affectant tous les services de train fournis par l'agence A de 10h à 12h UTC le 20 décembre.
id: "1"
alert {
informed_entity {
agency_id: "A"
}
active_period {
start: 1608458400
end: 1608465600
}
effect: MODIFIED_SERVICE
cause: OTHER_CAUSE
...
}
Itinéraire
Champ d'application :
- Tous les trajets appartenant à l'itinéraire spécifié
- Tous les arrêts de bus desservis par des trajets appartenant à l'itinéraire
Détails d'implémentation :
- Seul le champ
route_id
doit être renseigné pourinformed_entity
. active_period
doit définir la période pendant laquelle l'alerte est appliquée.
Exemple de scénario : Un itinéraire touristique est suspendu du 10 au 20 décembre en raison d'une urgence médicale.
id: "1"
alert {
informed_entity {
route_id: "12"
}
active_period {
start: 1607558400
end: 1608508799
}
effect: NO_SERVICE
cause: MEDICAL_EMERGENCY
...
}
Itinéraire dans une seule direction
Champ d'application :
- Tous les trajets qui appartiennent à l'itinéraire spécifié et portant l'identifiant
direction_id
indiqué - Tous les arrêts de bus desservis par des trajets appartenant à l'itinéraire
Détails d'implémentation :
- Les champs
route_id
etdirection_id
doivent tous les deux être renseignés pourinformed_entity
. active_period
doit définir la période pendant laquelle l'alerte est appliquée.
Exemple de scénario : Un itinéraire touristique est suspendu du 10 au 20 décembre en raison d'une urgence médicale.
id: "1"
alert {
informed_entity {
route_id: "12"
direction_id: 1
}
active_period {
start: 1607558400
end: 1608508799
}
effect: NO_SERVICE
cause: MEDICAL_EMERGENCY
...
}
Moyen de transport
Champ d'application :
- Tous les trajets associés au type d'itinéraire spécifié
- Tous les arrêts de bus desservis par les trajets appartenant à l'itinéraire
Détails d'implémentation :
- Seul le champ
route_id
doit être renseigné pourinformed_entity
. active_period
doit définir la période pendant laquelle l'alerte est appliquée.
Exemple de scénario : tous les trajets en ferry sont annulés le 20 décembre en raison d'importantes inondations.
id: "1"
alert {
informed_entity {
route_type: 4
}
active_period {
start: 1608422400
end: 1608508799
}
effect: NO_SERVICE
cause: WEATHER
...
}
Arrêt
Champ d'application :
- Tous les trajets desservant cet arrêt
- L'arrêt lui-même
Détails d'implémentation :
- Seul le champ
stop_id
doit être renseigné pourinformed_entity
. active_period
doit définir la période pendant laquelle l'alerte est appliquée.
Exemple de scénario : l'arrêt est fermé du 10 au 20 décembre en raison de travaux.
id: "1"
alert {
informed_entity {
stop_id: "4"
}
active_period {
start: 1607558400
end: 1608508799
}
effect: NO_SERVICE
cause: CONSTRUCTION
...
}
Trajet
Champ d'application :
- Tous les trajets desservant cet arrêt
- Tous les arrêts desservis par le trajet
Détails d'implémentation :
- Pour plus d'informations, consultez l'article Sélectionner un trajet.