Ungelöst Dienstplan auf Bildschirm
-
Hallo Liebes Forum
Wir haben die Belegungen für einzelne Dienste während des Gottesdienstes jeweils im Dienstplan eingetragen. Wir haben unter anderem eine Dienstgruppe "Jugend", in welchem die verschiedenen Teams eingegliedert sind. Nun soll neu ein Bildschirm zum Einsatz kommen, auf welchem steht, welche Person am Sonntag für welches Kinderteam verantwortlich ist. Beispiel: Max Muster ist heute für die 3-6 jährigen verantwortlich.
Gibt es eine Möglichkeit, zum Beispiel mit ical Link, wie man dies einrichten kann? Als Bildschirmlösung möchte ich Yodeck verwenden. Dort kann man z.B. ical Links, Webbrowser, usw einbetten.
Es gibt ja eine Möglichkeit, einen Dienstplan zu abonnieren, dann bekommt man jedoch nur seine eigenen Termine mit. -
@okaypower schon mal über den integrierten Infoscreen nachgedacht? Da kann man ja auch eingeteilte Dienste als Text einblenden:
Sonst sicherlich über die API auch möglich ...
-
@Andy ja, dieser zeigt jedoch nicht die gewünschten Dinge an.
Wie im Screenshot ersichtlich, haben wir Dienstgruppen im Einsatz, und eine Dienstgruppe ist für die Jugend. Dort haben wir verschiedene Kinderteams, zu welchen jeweils eine Person zugeteilt ist.
Ich habe mich nun mit meinen begrenzten Kenntnissen an die API gewagt, und mich etwas schlau gemacht. So wie ich das sehe, sind das in der REST Schnittstelle "servicerequests". Damit ich für einen bestimmten Event die Namen der zugewiesenen Personen sehe, welche an einem Service teilnehmen, muss ich alle Personen einzeln mit GET /persons/{personID}/servicerequests abfragen und diese dann bei mir auf die gewünschten services des events mappen. Das heisst, dies wird dann für ein Churchtools mit 1000 usern 1000 Get requests geben.
Oder gibt es eine Möglichkeit, mit einer einzelnen Abfrage eine Liste alle Servicerequests eines für einen Service zu bekommen? -
@Pavilion9520 nicht ganz
Du musst als erstes
/events
plus eventuelle einschränkende Parameter aufrufen um dein Event zu bekommen. Dann rufst du mit/events/:eventId
die Details zu diesem Event ab, dort gibt es dann in dem Objekt eine PropertyeventServices
, das sind deine eingeteilten Dienste für diese Event.In dem eventService hast du wiederum eine
personId
mit der du dir die Personen holen kannst (am besten alle auf einmal mit/persons?ids[]=1&ids[]=2&...
), außerdem gibt es noch die serviceId mit der du wiederum auf den Dienst und die Dienstgruppe zurückschließen kannst. Diese bekommst du alle über/services
und/servicegroups
oder auch einzeln mit der jeweiligen IDIch hoffe damit kommst du weiter, viel Erfolg.
-
@jziegeler Danke für deinen lieben Tipp. das hat mir geholfen
.
Ich habe nun ein einfaches JavaScript geschrieben, welches dies entsprechend über die API aufruft.
Nun habe ich noch ein anderes Problem:
Ich versuche mit JavaScript und fetch() via Authorization Token mich einzuloggen. Da bekomme ich jeweils CORS Fehlermeldungen, Ich habe in den Churchtools Einstellungen schon die entsprechende Domain im "Access Control Allow Origin" eingetragen, erhalte jedoch diese Meldung:Access to fetch at 'https://meinegemeinde.church.tools/api/events' from origin 'https://dsbackend.s3.amazonaws.com' has been blocked by CORS policy: Request header field access-control-allow-origin is not allowed by Access-Control-Allow-Headers in preflight response.
So wie ich das verstehe, müsste nun der REST API Server im Access-Control-Allow-Headers meine authorization mitgeben. Bin mir da aber nicht sicher, da dies für mich alles Neuland ist -
@Pavilion9520 wenn du JavaScript nutzt würde ich dir empfehlen mit dem churchtoolsClient zu arbeiten, der erledigt all solche Sachen schon für dich.
-
Das ist ein super interessantes Thema, das würden wir bei uns auch gerne umsetzen. Ist da mal direkt von CT aus was geplant?