Prenumerationer är en frågetyp som låter dig bli meddelad när några ändringar görs på en enhet, tillgång eller spellista.
Ett exempel kan vara att du vill bli meddelad om eventuella ändringar som görs på din enhet, oavsett om det gäller byte av tillgång eller spellista. Detta kan göras helt inom GraphQL genom att använda frågor för att hitta information om en enhet, ställa in en prenumeration och sedan använda mutationer för att ändra enhetens attribut.
1. Ställ in prenumerationen
subscription subscribe($_id:String,$type:OBJECT_TYPES){
subscribe(_id:$_id,type:$type){
_id,
mutation,
teamId
type
}
}
Variabler
{"_id":"",
"type": ""
}
Observera elementen som finns i prenumerationsfrågan. Detta är de element som den kommer att övervaka och returnera till dig när någon av dem ändras via mutation.
När en prenumeration är korrekt inmatad bör du se detta på höger sida av GraphQL-gränssnittet:
Detta innebär att så länge prenumerationen är aktiv kommer den att rapportera alla ändringar av objektet.
2. Testa prenumerationen
Här har vi ett mutationsskript som ändrar namnet och spellistan på den valda enheten.
mutation updateDevice($_id: String!,$payload: UpdateDeviceInput!, $teamId: String){
updateDevice(_id:$_id,payload:$payload,teamId:$teamId){
_id,
deviceName,
UUID,
pairingCode,
currentType,
currentAssetId,
currentPlaylistId,
path,
localAppVersion
}
}
Variabler
{"_id": "",
"payload": {"deviceName": "",
"currentType": "",
"currentAssetId": "",
"currentPlaylistId": "",
"orientation": "LANDSCAPE"
}
}
När vi utför denna mutation kan vi växla över till där vår prenumeration lyssnar och se detta:
Föregående artikel - Felhantering
Nästa artikel - API-referens