Mit GraphQL ist es möglich, einen Zeitplan in OptiSigns zu erstellen, dann Elemente hinzuzufügen und ihnen Werte zuzuweisen. Wir werden jeden dieser Schritte nacheinander behandeln.
1. Einen neuen Zeitplan erstellen
Um einen neuen Zeitplan zu erstellen, benötigen wir eine spezifische Mutation:
mutation CreateSchedule($payload: ScheduleInput!, $teamId: String)
{saveSchedule (payload:$payload,teamId:$teamId){
_id,
accountId,
createdAt,
createdBy,
groupId,
lastTeamId,
lastUpdatedBy,
lastUpdatedDate,
name,
path,
tags,
teamId
}
}
Variablen:
{"payload": {
"groupId":
"Name":
"Path":
"Tags":
"teamId":
}
}
Diese Mutation erstellt einen brandneuen Zeitplan, wie Sie an den Daten auf der rechten Seite sehen können:
2. Zeitpläne aktualisieren
Dieselbe Mutation kann verwendet werden, um den Zeitplan selbst zu aktualisieren. Um den Zeitplan zu aktualisieren, müssen Sie den "_id"-Wert in die Payload eingeben:
Dies wird den bestehenden Zeitplan aktualisieren.
3. Assets oder Playlists zum Zeitplan hinzufügen
Jetzt möchten wir ein Element zum Zeitplan hinzufügen. Dafür benötigen wir eine weitere Mutation:
mutation addScheduleItem($force:Boolean,$payload: AddScheduleItemInput!, $teamId: String!){
addScheduleItem(force:$force,payload:$payload,teamId:$teamId){
_id,
name,
assetId,
teamId,
playlistId,
repeatObject{
id,
repeat,
text,
type,
rrule
},
range{startDate,endDate},
documentDuration
}
}
Variablen:
{"force": false,
"payload": {"scheduleId": "",
"assetId": "",
"playlistId":"",
"type": "",
"repeatObject": {
"rrule": ""
},
"range": {
"startDate": "",
"endDate": ""
}
},
"teamId": ""
}
Wenn die Werte korrekt eingerichtet sind, sollten Ihre Daten so angezeigt werden:
4. Zeitplan-Elemente bearbeiten
Nachdem Sie einen Zeitplan erstellt und ein Element darauf festgelegt haben, ist es möglich, diese Elemente zu bearbeiten. Dies erfordert eine weitere Mutation:
mutation updateScheduleItem($force:Boolean,$payload: UpdateScheduleItemInput!, $scope: APPLY_SCHEDULE_ITEM_SCOPES!){
updateScheduleItem(force:$force,payload:$payload,scope:$scope){
_id,
name,
assetId,
teamId,
playlistId,
repeatObject{
id,
repeat,
text,
type,
rrule
},
range{startDate,endDate},
documentDuration
}
}
Mit dieser Mutation geben wir diese Variablen ein:
{"force": false,
"payload": {"_id": "",
"assetId": "",
"playlistId":"",
"repeatObject": {
"rrule": ""
},
"range": {
"startDate": "",
"endDate": ""
}
},
"scope": ""
}
Hier haben wir die Wiederholungsfrequenz von täglich auf wöchentlich geändert und das Startdatum vom 18. Dezember 2024 auf den 20. Dezember 2024. Dies spiegelt sich in den abgerufenen Daten wider:
Vorheriger Artikel - Tutorial: Website-Assets mit GraphQL erstellen oder aktualisieren
Nächster Artikel - Paginierung