Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
Ce document fait référence à l'utilisation API Nerdgraph pour la nouvelle plateforme notification utilisant des destinations et des messages notification . les messages de notification sont également appelés canaux, qui sont différents des legacy canaux de notification.
La requête channels vous permet de parcourir tous vos canaux par compte. Il permet également certaines fonctionnalités de filtrage.
Voici un exemple :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channels{
entities{
id
name
}
error{
details
}
}
}
}
}
}
Afin de parcourir vos chaînes, vous devez demander le champ nextCursor lors de votre requête initiale.
Avec la pagination du curseur, vous continuez à effectuer une requête via l'ensemble de résultats jusqu'à ce que le nextCursor renvoyé par la réponse revienne vide. Cela signifie que vous avez atteint la fin de vos résultats.
Voici un exemple :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channels(cursor:""){
nextCursor
entities{
id
name
}
totalCount
}
}
}
}
}
Le code ci-dessus renvoie un ensemble de résultats comme celui-ci :
L'API permet d'interroger les canaux par nom. Le filtre name renvoie des correspondances exactes et des correspondances partielles. Il n'est pas sensible à la casse. Cela renverra uniquement les informations pour les chaînes qui correspondent au nom fourni.
Dans cet exemple, nous souhaitons trouver les chaînes avec "DevOps" dans le nom :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channels(filters:{name:"DevOps"}){
entities{
id
name
}
}
}
}
}
}
L'API vous permet d'effectuer une requête par ID de canal :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channels(filters:{id:YOUR_CHANNEL_ID}){
entities{
id
name
}
}
}
}
}
}
L'API vous permet d'interroger les canaux par ID de destination :
L'API vous permet d'effectuer des requêtes par type de canal. La requête suivante renverra tous les canaux de messagerie sur le compte choisi :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channels(filters:{type:EMAIL}){
entities{
id
name
}
}
}
}
}
}
Créer une chaîne
Afin de créer un canal, des entrées différentes doivent être fournies pour chaque type de canal. Chaque canal est connecté à une destination. Pour plus d'informations sur les destinations, consultez le didacticiel NerdGraph sur les destinations.
La bonne pratique consiste à utiliser le point de terminaison channelSchema pour voir quels champs doivent être envoyés sous properties comme ceci :
{
actor{
account(id:YOUR_ACCOUNT_ID){
aiNotifications{
channelSchema(
channelType:CHANNEL_TYPE
destinationId:YOUR_DESTINATION_ID
product:YOUR_PRODUCT
constraints:[]
){
schema{
fields{
mandatory
label
key
component
}
}
result
}
}
}
}
}
Jira est un système de tickets configurable, et il n'existe donc aucun moyen statique de créer ce canal.
Il existe deux champs statiques : project et issuetype.
Récupérez les suggestions project et utilisez l'une des valeurs comme contrainte pour issuetype, comme indiqué ici :
La propriété payload est la charge utile qui sera envoyée dans la notification. Il utilise la syntaxe de Handlebars pour insérer dynamiquement des informations à partir de la requête.
Le eventSource doit être l’URL complète d’une source d’événement existante. Le eventContent est la charge utile qui sera envoyée dans le corps de la notification, comme indiqué ici :
Lorsque vous mettez à jour un canal, notez que vous n'avez pas besoin de fournir tous les attributs du canal. Par exemple, si vous souhaitez uniquement mettre à jour le nom, c'est le seul attribut que vous devez mettre à jour, comme indiqué ici :
mutation{
aiNotificationsUpdateChannel(
accountId:YOUR_ACCOUNT_ID
channelId:YOUR_CHANNEL_ID
channel:{name:"Updated channel Name"}
){
channel{
id
name
}
}
}
Tester une chaîne
Vous pouvez tester les chaînes via l'API NerdGraph. Cela peut être fait avant ou après la création de la chaîne.