Version 5.2.0
– 4/18/24
Sophora Client API: 5.1.0.
-
Improved
Vorhandene Feedback-Haftnotizen sollen nicht verschwinden, wenn kein Mapping durchgeführt wird
– SOMSI-383 (medium)
Notes
Wenn bei einem (erneuten) Mappingdurchlauf für ein Sophora-Dokument keine gemappten Ressourcen entstehen, bleiben zuvor gesetzte SMS-Haftnotizen an dem Dokument erhalten, statt sie zu entfernen.
-
Improved
Erfolgreiche Depublikationen von Inhalten in der Mediathek/Audiothek sollen in Feedback-Haftnotizen mit aufgeführt werden
– SOMSI-377 (medium)
Notes
Es gibt einen neuen Message-Key "sms.stickynote.unpublish.success" mit dem Standardtext "Die zugehörigen Inhalte wurden am ${date} um ${time} Uhr erfolgreich in der ARD Mediathek/Audiothek depubliziert (${resourceDescriptors})". Der Text erscheint (zusätzlich) in der Haftnotiz am Sophora-Dokument, wenn mindestens eine gemappte Ressource erfolgreich in der ARD Mediathek/Audiothek depubliziert wurde.
Die Formulierung der Feedbacktexte mit den Message-Keys "sms.unpublish.error", "sms.unpublish.success", "sms.unpublish.unable", "sms.unpublish.unnecessary" wurden entsprechend angepasst, so dass die Inhalte nicht "aus der Mediathek entfernt", sondern "in der Mediathek depubliziert" wurden.
-
Added
MDP4-Feld "publisherId" auf Item-Ebene und "timestampInParent" in Sections unterstützen
– SOMSI-394 (medium)
Notes
Episodes, EventLivestreams, Extras und Sections verfügen nun über das Feld publisherId.
Sections verfügen zusätzlich über das neue Feld timestampInParent.
Version 5.1.0
– 3/28/24
Sophora Client API: 5.0.0.
-
Added
MDP4-Feld "hasLiveContentEvents" unterstützen
– SOMSI-388 (medium)
Notes
EventLivestreams verfügen nun über das neue Feld "hasLiveContentEvents".
Version 5.0.0
– 3/13/24
Sophora Client API: 5.0.0.
-
Fixed
Während des Aufsynchronisierens von Sophora-Events dürfen neue Events nicht verloren gehen
– SOMSI-341 (high)
Notes
Während der Synchronisierung eingehende Sophora-Events werden nun nachträglich abgearbeitet
-
Fixed
VideoBinary.hasEmbeddedSubtitles() darf nicht immer "false" an die Core API übergeben
– SOMSI-232 (high)
Notes
VideoBinary.isHasEmbeddedSubtitles() wurde entfernt. Es muss IVideoBinary.hasEmbeddedSubtitles() genutzt werden.
Der vollständige Fix ist erst ab Version 3.5.4 bzw. 4.5.4 enthalten.
-
Fixed
Zeilenumbrüche bei Aufzählungen in Haftnotizmeldungen korrigieren
– SOMSI-368 (medium)
Notes
Behebt das Problem, dass URLs am Ende von einzelnen Aufzählungspunkten in den Feedback-Haftnotizen im DeskClient nicht (richtig) als Link erkannt werden
-
Fixed
Benutzerdefinierte Texte zu Fehlermeldungen der Core API werden nicht gefunden
– SOMSI-326 (medium)
Notes
Behebt das Problem, dass die mitgelieferten Übersetzungen zu Fehlermeldungen der Core API oder eigene Übersetzungen in Mapping-Plugins nicht gefunden werden.
-
Fixed
SMS muss im Dashboard richtig angezeigt werden
– SOMSI-299 (medium)
Notes
Mit diesem Bugfix wird der Onlinestatus in der Kachel im Dashboard repariert. Damit die Daten in den Details auf der rechten Seite im Dashboard angezeigt werden, muss das Admin Dashboard in Version >= 3.1.5, 4.2.4, 5.0.0 verwendet werden.
-
Fixed
Publications ohne ImageCollection können nicht von der ARD Core API geladen werden
– SOMSI-197 (medium)
-
Fixed
HTTP Patch muss auch bei Verwendung eines Proxy unterstützt werden
– SOMSI-173 (medium)
Notes
Proxy-Einstellungen zur ARD Mediathek/Audiothek können nicht mehr in der application.yml über "ardmedialibrary.credentials.proxyUrl" und "ardmedialibrary.credentials.proxyPort" gesetzt werden. Stattdessen muss der Proxy über normale Systemproperties konfiguriert werden, z.B. in der Datei metadata-supplier-application-executable.conf.
-
Changed
Banner und weitere Ausgaben des Sophora Metadata Suppliers sollen in der Log-Datei (nicht in einer gesonderten .out-Datei) ausgegeben werden
– SOMSI-150 (high)
-
Changed
Mapper sollen mehrere Entitäten in der ARD-Core-API erzeugen können
– SOMSI-71 (high)
-
Changed
Update auf SpringBoot 2.7: Umstellung der Swagger-UI von Springfox auf Springdoc
– SOMSI-259 (high)
Notes
Die Standard-URL zur Swagger-UI lautet nun http://localhost:8080/swagger-ui.html (statt http://localhost:8080/swagger-ui/index.html). Siehe Dokumentation bzgl. REST-API, Monitoring und Konfiguration des Webservers.
-
Changed
Docker-Image des Sophora Metadata Suppliers erstellen
– SOMSI-120 (medium)
-
Changed
Sophora-Events aufsynchronisieren nachdem der Metadata Supplier gestoppt war
– SOMSI-108 (medium)
-
Changed
Anbindung an Player API schaffen
– SOMSI-65 (medium)
-
Changed
Anlegen von Inhalten in der ARD-Core-API auch bei publishAt-Events unterstützen
– SOMSI-64 (medium)
-
Changed
Metadata Supplier muss auch ohne Sophora-Anbindung ausgeführt werden können
– SOMSI-44 (medium)
-
Changed
Rahmenwerk für kundenspezifische Mappings im Sophora Metadata Supplier schaffen
– SOMSI-17 (medium)
-
Changed
Projekt für Sophora Metadata Supplier anlegen
– SOMSI-16 (medium)
-
Changed
Das Reagieren auf die (inoffizielle) Statusänderung "PUBLISH_AT_CANCELED" ermöglichen
– SOMSI-144 (medium)
-
Changed
Health-Endpunkte und Metriken im Sophora Metadata Supplier anbieten
– SOMSI-135 (medium)
-
Changed
Entwicklung von kundenspezifischen Mappings in IDEs besser unterstützen
– SOMSI-134 (medium)
Notes
Die ausführbare metadata-supplier-application-<version>.jar wurde in metadata-supplier-application-<version>-executable.jar umbenannt. Start-/Stop-Skripte, die diese jar ausführen, müssen dementsprechend angepasst werden. Auch die metadata-supplier-application.conf muss in metadata-supplier-application-executable.conf umbenannt werden, sofern vorhanden. Bei der metadata-supplier-application-<version>.jar handelt es sich jetzt stattdessen nur um das einfache Artefakt der metadata-supplier-application, welche für die Plugin-Entwicklung in einem Launcher-Projekt genutzt werden kann.
-
Changed
Pflichtfelder "alt" und "producerName" für Images nachziehen
– SOMSI-132 (medium)
-
Changed
Versionen für Module vom SMS und SDS im DependencyManagement vorgeben
– SOMSI-258 (medium)
Notes
Mapping-Plugin-Projekte können für einfacheres und konsistentes Dependency Management nun die "pom.xml" von "metadatasupplier-parent" importieren
-
Changed
Standardmäßig die neue Test-Delivery-API-URL statt der einzelnen Core API-Service-URLs nutzen
– SOMSI-253 (medium)
Notes
Die verschiedenen Services der ARD Mediathek/Audiothek (wie Image-Service, Asset-API und Player-API) werden mittlerweile unter einer Delivery-API-URL zusammengefasst und bereitgestellt. Daher lauten die Standard-URL-Konfigurationen im SMS für Image-Service, Asset-API und Player-API nun jeweils https://deliver-test.ard.de/delivery-api statt https://deliver-test.ard.de/image-service, https://deliver-test.ard.de/asset-api und https://deliver-test.ard.de/player-api.
Bei bestehenden SMS-Installationen, die die ARD Mediathek/Audiothek Service-URLs in der application.yml eingetragen haben, müssen diese URLs für jeden der drei Services entsprechend angepasst werden: URL für das Testsystem der ARD Mediathek/Audiothek: https://deliver-test.ard.de/delivery-api bzw. URL für das Live-System der ARD Mediathek/Audiothek: https://deliver.ard.de/delivery-api
-
Changed
NormDbLocation-Ids im CoreId-Format übertragen
– SOMSI-385 (medium)
Notes
Der Builder für NormDbLocations nimmt die Id nun als CoreId-Objekt und als String entgegen. Wenn die Id als String übergeben wird, wird sie ins CoreId-Format umgewandelt, wenn nötig. Z.B. aus dem String "vokabel-1572" wird "urn:ard:location:e4f12d7dba8c438f" und aus dem String "1572" wird ebenfalls "urn:ard:location:e4f12d7dba8c438f". Die Angabe von "urn:ard:location:e4f12d7dba8c438f" bleibt unverändert. Mappings sollten dennoch direkt ein CoreId-Objekt statt einen String übergeben.
-
Changed
Hilfsmethode für Mapping von Genres und Subgenres an geänderte Auswahlwertstruktur anpassen
– SOMSI-330 (medium)
Notes
Die Hilfsmethoden der ArdNormDbUtil- und SdsArdNormDbUtil-Klassen können jetzt auch die Vokabel-IDs aus Genre- und Subgenre-Auswahlwerten auslesen, die der neuen Struktur folgen, welche mit dem ARD Metadatenpaket 2 eingeführt wurde. Genres und Subgenres, die noch der alten Struktur folgen, funktionieren weiterhin mit den Hilfsmethoden.
-
Changed
ArtworkTypes umbenennen
– SOMSI-329 (medium)
Notes
Statt ArtworkType COVER_ARTWORK und STAGE_ARTWORK gibt es nun ArtworkType COVER und BACKDROP.
-
Changed
Version der Spring-Data-Sophora-Commons Dependency vorgeben
– SOMSI-294 (medium)
Notes
Der Metadata Supplier gibt nun die Version von spring-data-sophora-commons vor, so dass Mapper-Projekte diese einfach verwenden können.
-
Changed
Dependencies aktualisiert: Apache Commons Text und Commons Lang 3
– SOMSI-272 (medium)
Notes
Diverse Abhängigkeiten wurden aktualisiert
-
Changed
Anpassungen für Java 17
– SOMSI-269 (medium)
-
Improved
Publications sollen auch ohne ImageCollection angelegt werden können
– SOMSI-225 (high)
Notes
Publications können auch angelegt werden, ohne explizit Images hinzufügen zu müssen. In dem Fall werden in der ARD Mediathek/Audiothek die Bilder aus dem referenzierten Item verwendet.
-
Improved
Metriken für Job-Queue bereitstellen
– SOMSI-336 (high)
Notes
Zum Auslesen der aktuellen Anzahl der aus Sophora getriggerten und noch abzuarbeitenden Mapping-Aufträge wurde die neue Metrik "metadatasupplier.supplyjob.queue.size" hinzugefügt. Die Anzahl der insgesamt aus Sophora getriggerten bzw. abgearbeiteten Mapping-Aufträge seit SMS-Start kann nun über die neuen Metriken "metadatasupplier.supplyjob.queued" bzw. "metadatasupplier.supplyjob.executed" abgefragt werden. Die Gesamtanzahl der Mapping-Aufträge, deren Abarbeitung aufgrund unvorhergesehener Fehler abgebrochen ist, kann über die neue Metrik "metadatasupplier.supplyjob.executionerrors" ausgelesen werden.
-
Improved
Versionsnummer im Logfile ausgeben
– SOMSI-116 (medium)
-
Improved
Unpublish und Republish optimieren
– SOMSI-81 (medium)
Notes
Die Operationen "unpublish" bzw. "republish" an der ARD Core API werden nur noch für veröffentlichbare Entitäten ausgeführt, bei denen der Sichtbarkeitszustand geändert werden muss.
-
Improved
Feedback bei Fehlern während des Mappings geben
– SOMSI-63 (medium)
-
Improved
Zulieferung von Binärdaten in Image-Entität unterstützen
– SOMSI-49 (medium)
-
Improved
Feedback bei Fehlern während des Mappings oder beim Anlegen im ARD-Core ermöglichen
– SOMSI-41 (medium)
-
Improved
CompletionStage/Futures im ArdCoreConnector richtig nutzen
– SOMSI-40 (medium)
-
Improved
ARD-Core-Anteil aus Sophora Metadata Supplier in eigenes Git-Repo umziehen
– SOMSI-38 (medium)
-
Improved
Feld originalClipExternalId in IPublication unterstützen
– SOMSI-206 (medium)
Notes
Bei Publications kann jetzt auch das Feld "originalClipExternalId" gesetzt werden.
-
Improved
Verhindern, dass XML statt JSON zum ARD-Core geschickt wird
– SOMSI-163 (medium)
-
Improved
Im Feedback soll der Begriff "ARD Mediathek/Audiothek" verwendet werden
– SOMSI-161 (medium)
-
Improved
Beispiel-Mapper-Plugin um Spring-Data-Sophora erweitern
– SOMSI-143 (medium)
Notes
Das "metadata-supplier-plugin-example" enthält jetzt zusätzlich einen Beispiel-Mapper, der Spring-Data-Sophora nutzt. Außerdem wir ein "jar-with-dependencies" erstellt. GroupId: "com.subshell.sophora.metadatasupplier", ArtifactId: "metadata-supplier-plugin-example" bzw. "metadata-supplier-plugin-example-launcher".
-
Improved
Feedback bzgl. "unpublish" und "republish" verbessern
– SOMSI-257 (medium)
Notes
Es gibt nun keine "Erfolgreich an die ARD Mediathek/Audiothek gesendet"-Feedbackmeldung mehr für Objekte vom Typ Publishable, da über diese keine Resourcen in der Mediathek angelegt oder inhaltlich aktualisiert werden können. Die Feedbackmeldungen "Erfolgreich in der ARD Mediathek/Audiothek veröffentlicht" bzw. "Erfolgreich aus der ARD Mediathek/Audiothek entfernt" erscheinen weiterhin.
Es gibt neue, zusätzliche Feedbackmeldungen, wenn Resourcen in der ARD Mediathek/Audiothek veröffentlicht/depubliziert werden sollten, die bereits veröffentlicht/depubliziert sind: "Ein (erneutes) Veröffentlichen in der ARD Mediathek/Audiothek war nicht notwendig" und "Ein (erneutes) Entfernen aus der ARD Mediathek/Audiothek war nicht notwendig".
Es gibt neue, zusätzliche Feedbackmeldungen, wenn Resourcen in der ARD Mediathek/Audiothek veröffentlicht/depubliziert werden sollten, die dort gar nicht existieren: "Ein Veröffentlichen in der ARD Mediathek/Audiothek war nicht möglich" bzw. "Ein Entfernen aus der ARD Mediathek/Audiothek war nicht möglich".
-
Improved
Strukturiertes Logging: Image-Data soll nicht geloggt werden, damit Logfiles klein bleiben
– SOMSI-255 (medium)
Notes
Alle Resourcen werden nur noch auf Trace-Level geloggt.
-
Improved
Versionsnummern der Mapping-Klassen loggen
– SOMSI-244 (medium)
Notes
Wenn die <my-mapping>-jar-with-dependencies.jar eine META-INF/MANIFEST.MF mit Eintrag für "Implementation-Version" hat, wird die Versionsnummer der Mapper-Klassen geloggt.
-
Improved
Änderungen aus der Doku der ARD Core API nachziehen
– SOMSI-239 (medium)
Notes
Der JavaDoc an den Interfaces für Resourcen (IShow, ISeason, IEpisode, usw.) wurde aktualisiert.
-
Improved
Der ImageMapper soll auch die Seitenverhältnisse der gemappten Bilder liefern
– SOMSI-227 (medium)
Notes
Der ImageMapper bietet nun zusätzlich die Methode mapImagesToAspectRatioMap(IImageDataProvider imageDataProvider) an, welche Map<IAspectRatio, IImage> zurück liefert.
-
Improved
Inkompatibilitäten zwischen SMS und Mapping sollen geloggt werden und zum Beenden des SMS führen
– SOMSI-223 (medium)
Notes
Beim Auftreten eines LinkageError zwischen SMS und Mapping erscheint dieser nun in der Logdatei und das SMS wird mit Exitcode 192 beendet.
-
Improved
StickyNoteFeedbackHandler soll keinen langen Stack loggen, wenn das Sophora-Dokument nicht existiert
– SOMSI-219 (medium)
-
Improved
Strukturiertes Logging einbauen
– SOMSI-218 (medium)
Notes
Über den VM-Parameter -Dspring.profiles.active=json-logs (oder über die Angabe in der application.yml) kann strukturiertes (Json-)Logging aktiviert werden.
Vorsicht: Fügt eine Abhängigkeit zu "net.logstash.logback" "logstash-logback-encoder" hinzu, die in Mapping-Projekten ggf. zu Abhängigkeitskonflikten mit Jackson führen kann.
-
Improved
Converter für Strings im Format "HH:MM:SS.ss" nach "PTxHxMx.xxxS" anbieten (ISO 8601)
– SOMSI-217 (medium)
Notes
In "metadata-supplier-sophora-commons" gibt es nun einen com.subshell.sophora.metadatasupplier.sophora.commons.Iso8601Converter
-
Improved
Methoden zum Erzeugen der CoreId aus Auswahlwertdokumenten für GenreCategories, SubgenreCategories und ThematicCategories bereitstellen
– SOMSI-215 (medium)
Notes
In com.subshell.sophora.metadatasupplier.sophora.commons.ArdNormDbUtil sind nun entsprechende Methoden enthalten
-
Improved
Hilfsmethoden bereitstellen, um mehrere Enums aus mehreren Strings zu erhalten
– SOMSI-214 (medium)
Notes
Die Enums aus com.subshell.ardcore.model.types haben nun alle eine valuesOf(Collection<String> names)-Methode
-
Improved
Tests für die automatische Erzeugung von ImageCollections hinzufügen
– SOMSI-355 (medium)
Notes
Das bestehende Verhalten bei der Erzeugung von ImageCollections wurde durch weitere Unittests abgesichert
-
Improved
Deutschsprachige Validierungsmeldungen für Felder des ARD Metadatenpakets 2 verbessern
– SOMSI-352 (medium)
Notes
Manche deutsche Übersetzungen der englischsprachigen Validierungsmeldungen von der ARD Mediathek/Audiothek wurden verbessert
-
Improved
AspectRatio um 2:3 erweitern
– SOMSI-337 (medium)
Notes
Bei Bildern sind nun folgende Seitenverhältnisse möglich: 2:3, 3:4, 16:7, 16:9, 32:9, 64:9
-
Improved
Feedback bei Exceptions in der accept()-Methode von Mappern zurückgeben
– SOMSI-284 (medium)
Notes
Exceptions in IResourceMapper.accept(...) werden nun abgefangen und so behandelt, als ob es keinen Mapper für die Source gäbe. Eine entsprechende Feedbackmeldung wird zurückgegeben.
-
Improved
Felder für Core-IDs sollen in Builder-Methoden CoreId-Objekte akzeptieren
– SOMSI-172 (low)
Notes
ACHTUNG: Inkompatible Model-API-Änderung! Die Felder genreCategoryId, subgenreCategoryIds und thematicCategoryIds an Shows, Sections, Seasons usw. sind nun vom Typ CoreId statt String! Die Mapper-Projekte/-Klassen müssen dementsprechend angepasst werden, bevor diese Metadata Supplier Version produktiv eingesetzt wird, ansonsten funktioniert das Mapping nicht!
Dazu `String genreCategoryCoreId = "urn:ard:category-genre:myExternalIdHash";` ändern zu `CoreId genreCategoryCoreId = CoreId.create("urn:ard:category-genre:myExternalIdHash");` oder `CoreId genreCategoryCoreId = CoreId.create(Type.GENRE_CATEGORY.getCoreIdPrefix(), "myExternalIdHash");` bzw. `String genreCategoryId = CoreId.create(Type.GENRE_CATEGORY, "myExternalId").getId();` ändern zu `CoreId genreCategoryCoreId = CoreId.create(Type.GENRE_CATEGORY, "myExternalId");`.
Zum Lesen von List<CoreId> als List<String> (z.B. in Tests) kann CoreId.getStrings() verwendet werden, falls benötigt.
-
Improved
FeedbackHandler für Haftnotizen soll nur greifen, wenn Sophora-Dokumente gemapped wurden
– SOMSI-160 (low)
-
Added
Priorisierungsmöglichkeit für Aufträge aus Sophora im SMS anbieten
– SOMSI-364 (medium)
Notes
Die Behandlung von Sophora-Dokumentänderungen kann nun priorisiert werden ("normal" und "hoch"). Auf diese Weise lassen sich z.B. redaktionelle Dokumentänderungen vor automatischen Dokumentänderungen (bspw. durch den Sophora-Importer) an die ARD Mediathek/Audiothek senden. Abgrenzung: Mappings, die per REST-Schnittstelle oder "Used Sources"-Feature ausgelöst werden, können hiermit nicht priorisiert werden. Weitere Informationen sind dem "Sophora Metadata Supplier for ARD Mediathek/Audiothek Developing Guide" unter dem Stichwort "IPrioritySetter" zu entnehmen.
Monitoring:
Die bisherigen Metriken der SupplyJob-Queue wurden beibehalten und spiegeln den Gesamtzustand der Queue wieder. Zusätzlich sind folgende Metriken neu hinzugekommen, welche sich auf die jeweilige Priorität beziehen (<priority> steht für "normal" bzw. "high"):
- metadatasupplier.supplyjob.<priority>.queue.size
- metadatasupplier.supplyjob.<priority>.queued
- metadatasupplier.supplyjob.<priority>.executed
Die Entgegennahme von Dokumentänderungsevents und deren Abarbeitung wurde in diesem Zuge voneinander getrennt. Dafür wurde eine Event-Queue eingeführt und vor der SupplyJob-Queue angesiedelt. Folgende neue Metriken zeigen den Zustand dieser Event-Queue an:
- metadatasupplier.event.queue.size
- metadatasupplier.event.queued
- metadatasupplier.event.executed
- metadatasupplier.event.executionerrors
-
Added
Zulieferung der Felder des ARD Metadatenpakets 3 per SMS ermöglichen
– SOMSI-350 (medium)
Notes
Die folgenden neuen Felder können nun angeliefert werden:
- "companyCredits" (für Seasons, Shows, EventLivestreams, Episoden, Sections und Extras)
- "creationBrid" (für Seasons, Shows, EventLivestreams, Episoden, Sections, Extras und Permanent-Livestreams)
- "creativeCommonsLicense" (für Episoden, Sections und Extras)
- "isClosedNarration" (für Shows mit Show-Type "INFINITE_SERIES")
- "isSensitiveContent" (für Shows, EventLivestreams, Episoden, Sections und Extras)
- "loginOnlyUntil" (für Publications)
- "permanentLivestreamType" (für PermanentLivestreams)
- "producedForOnDemand" (für Shows (nur Audio))
- "publicationBrid" (für Publications und Permanent-Livestreams)
- "relatedShowIds" (für Shows)
- "showNotes" (für Episoden)
- "videoLanguage" (für VideoBinaries)
Außerdem:
- Die deprecated Felder "isMovie" und "premiereDate" wurden aus Episoden komplett entfernt
- Das Feld "involvedInternalInstitutionsAndFinancialShares" von InternalOwnerships ist nun kein Pflichtfeld mehr und braucht somit nicht mehr explizit gesetzt werden
Folgende Message-Keys wurde korrigiert:
- error.deliveryapi.service.validation.image_binary.undetermineable_mediatype => error.deliveryapi.service.validation.image_binary.indeterminable_mediatype
- error.deliveryapi.service.validation.asset.category_distribution_missmatch_publisher_type => error.deliveryapi.service.validation.asset.category_distribution_mismatch_publisher_type
Folgende Message-Keys sind neu hinzugekommen:
- error.deliveryapi.service.brid.brid_not_unique
- error.deliveryapi.service.validation.must_be_equal_or_greater_than
- error.deliveryapi.service.validation.audio_binary.audiotracks.invalid_audioversion
- error.deliveryapi.service.validation.video_binary.no_embedded_subtitles_or_sign_language_available_for_videoLanguage
- error.deliveryapi.service.validation.video_binary.incorrect_language_type_for_videoLanguage_with_sign_languages
- error.deliveryapi.service.validation.video_binary.incorrect_language_type_for_videoLanguage_with_subtitles
- error.deliveryapi.service.validation.asset.invalid_html_in_shownotes
- error.deliveryapi.service.validation.asset.company_credit.exactly_one_identifier_must_be_set
- error.deliveryapi.service.validation.asset.company_credit.role_description_mandatory_for_role_other
- error.deliveryapi.service.validation.show.produced_for_on_demand_not_supported_for_video_shows
- error.deliveryapi.service.validation.show.is_closed_narration_not_valid_for_show_type
- error.deliveryapi.service.validation.publication.login_only_until_not_after_created
- error.deliveryapi.service.validation.publication.login_only_until_not_after_start_date
- error.deliveryapi.service.validation.publication.login_only_until_with_event_livestream
- error.deliveryapi.service.validation.content_event.content_event_unique_type
- error.deliveryapi.service.validation.content_event.content_events_overlap
- error.deliveryapi.service.validation.content_event.content_events_type_ordering
Die vollständige Liste aller Message-Keys und deren Texte befindet sich im ARD-Developer-Portal.
-
Added
Zulieferung der personCredits-, audioTracks- und contentEvents-Felder des ARD Metadatenpakets 2 per SMS ermöglichen
– SOMSI-318 (medium)
Notes
"personCredits" wird an allen Items und Groupings unterstützt; "audioTracks"-Feld wird an allen Binaries unterstützt; "subtitleTracks" wird an VideoBinaries unterstützt; "contentEvents"-Feld wird an allen OnDemand Inhalten (Episode, Extra, Section) unterstützt; "language" und "subtitleType" werden an Subtitle unterstützt
-
Added
Zulieferung der ersten Felder des ARD Metadatenpakets 2 per SMS ermöglichen
– SOMSI-296 (medium)
Notes
An Groupings (Season und Show), Items (EventLivestream, Episode, Section und Extra) sowie PermanentLivestreams können nun die Felder "contentRatings", "countriesOfOrigin", "embeddingType", "externalContentIds", "geoLocations", "internalOwnership", "normDbLocations", "originalRelease", "originalSpokenLanguages" und "seo" übergeben werden. Außerdem lassen sich an Images die Felder "artworkType" und "isBranded" setzen.
-
Added
Feedback im SMS erweitern: Message-Codes, HTTP-Status und UsedSources
– SOMSI-286 (medium)
Notes
Das Feedback wurde um Message-Codes mit Platzhalter-Argumenten, einer Auflistung der zusätzlich verwendeten Quellen (Used Sources) und den jew. HTTP-Status-Code von der ARD Mediathek/Audiothek erweitert. Die bisher hart codierten Feedbacktexte können somit nun per "messages.properties"-Dateien individualisiert werden. Manche der Texte wurden bereits umformuliert. Achtung: Die Textkonstanten aus FeedbackService, UnpublishOperation und RepublishOperation wurden entfernt.
Damit die Meldungstexte im Feedback und die Haftnotiztexte in den Sophora-Dokumenten weiterhin in deutscher Sprache erscheinen, muss der Metadata Supplier mit deutschem Locale gestartet werden. Diese Haftnotiztexte lassen sich ebenfalls individualisieren.
Die beim Mapping verwendeten Quellen (Used Sources) werden standardmäßig ebenfalls in die Haftnotiz geschrieben. Dies lässt sich per Konfigurationsparameter "metadata-supplier-sophora.attach-used-sources-to-sticky-notes" in der application.yml abschalten.
Weitere Informationen befinden sich in der Dokumentation zum Sophora Metadata Supplier.
-
Added
Der Metadata Supplier soll JMX per HTTP (Jolokia) anbieten und den HTTP-Port in der Konfiguration mitliefern
– SOMSI-266 (medium)
Notes
JMX MBeans können nun per HTTP unter /actuator/jolokia/ verwendet werden. Ab Sophora 4 ist der Sophora Metadata Supplier damit auch im Sophora Admin Dashboard monitorbar.
-
Added
Benutzerdefinierte Texte zu Fehlermeldungen der Core API ermöglichen
– SOMSI-260 (medium)
Notes
Texte zu Fehlermeldungen aus der ARD Core API werden nun je nach Default Locale vom Sophora Metadata Supplier auf deutsch oder englisch (default) als Feedback ausgegeben. Darüber hinaus ist es möglich, eigene Übersetzungen zu verwenden. Dazu müssen entsprechende "messages properties"-Datei(en) im "i18n"-Verzeichnis der Sophora Metadata Supplier Installation abgelegt werden. Weitere Information hierzu sind der Dokumentation zu entnehmen.
-
Added
IdUtils.createId() für mehrere Resources anbieten
– SOMSI-241 (medium)
Notes
Neben "CoreId createId(IResource resource)" gibt es jetzt auch "List<CoreId> createIds(Collection<? extends IResource> resources)"
-
Added
Hilfsmethoden bzgl. Genres, Categories und Tenants zu "metadata-supplier-spring-data-sophora-commons" hinzufügen
– SOMSI-240 (medium)
Notes
Die Klassen com.subshell.sophora.metadatasupplier.sds.commons.SdsArdNormDbUtil und com.subshell.sophora.metadatasupplier.sds.commons.TenantUtil aus dem neuen "metadata-supplier-spring-data-sophora-commons"-Artefakt bieten Methoden an, um aus SDS-MultiSelectValue-Objekten entsprechende CoreIds für (Sub)GenreCategories oder ThematicCategories bzw. die Tenants zu erhalten.
-
Added
Ermöglichen des Anlieferns der "alten" Term-IDs
– SOMSI-238 (medium)
Notes
Bei AudioBinary und VideoBinary kann die TermId nun statt im CoreID-Format (z.B. "urn:ard:termid-video:9bb5a34d66e2ec19") auch im CcAvTermId-Format (z.B. "1.2.3.14.1") angegeben werden, z.B. IVideoBinary videoBinary = VideoBinary.builder().with...(...).withCcAvTermId(CcAvTermId.of("1.2.3.14.1")).build();
-
Added
Methode anbieten, um aus einer ExternalId eine CoreId oder null zu erzeugen
– SOMSI-237 (medium)
Notes
IdUtils.createIdOrNull(Type type, ExternalId externalId) liefert die CoreId zu dem angegebenen Type und ExternalId. Falls keine ExternalId angegeben wurde, liefert die Methode null (im Gegensatz zu IdUtils.createId(Type type, ExternalId externalId), was eine Zufalls-Id liefert).
-
Added
Feedback-Meldungen sollten nicht mehrfach zum Feedback hinzugefügt werden können
– SOMSI-230 (medium)
Notes
Beim Hinzufügen von Feedback-Einträgen zu Feedbacks werden bereits vorhandene Einträge nun ignoriert, so dass der gleiche Feedback-Eintrag nicht mehrfach im Feedback enthalten ist.
-
Added
Metriken für UsedSources und MappedResources hinzufügen
– SOMSI-229 (medium)
Notes
Die Metriken zu Anzahl und Größe der "Used Sources" und "Mapped Resources" sind nun unter http://<host>:<port>/actuator/metrics/ abrufbar.
-
Added
Angabe zusätzlicher Mapping-Parameter ermöglichen
– SOMSI-212 (medium)
Notes
Per IMetadataSupplier.supply(SourceDescriptor, Parameters) und über die REST-Schnittstelle können nun zusätzliche Parameter von außen ins Mapping reingereicht werden.
ACHTUNG: Inkompatible API-Änderung! IResourceMapper.accept(SourceDescriptor) wurde geändert zu IResourceMapper.accept(SourceDescriptor, Parameters), d.h. alle Mapper-Klassen müssen die neue Methodensignatur implementieren bevor diese Metadata Supplier Version produktiv eingesetzt wird, ansonsten funktioniert das Mapping nicht! In Tests kann Parameters.of() für den neuen Methodenparameter übergeben werden.
In IResourceMapper.mapToResources(SourceDescriptor, IMappingContext) kann über den IMappingContext auf die Parameter zugegriffen werden, falls benötigt.
-
Added
Wiederverwendbaren Sophora-Mapping-Code im Sophora Metadata Supplier anbieten
– SOMSI-202 (medium)
Notes
Das Projekt "metadata-supplier-sophora-commons" enthält nun nützliche Hilfsklassen und -methoden, um Sophora-Inhalte zu IResource-Objekten zu mappen. Z.B. ImageMapper, IImageVariantsProvider und IImageDataProvider, um Sophora-Bilddokumente zu mappen, wobei pro Seitenverhältnis aus einer Liste von Bildvarianten die erste Bildvariante des Bilddokumentes mit Binärdaten verwendet wird (Codebeispiel befindet sich im "metadata-supplier-plugin-example"). ArdNormDbUtil, um aus einem Auswahlwertdokument die ARD-Normdatenbank-Werte zu ermitteln. SophoraStringUtils, um z.B. aus dem "sophora:tags"-Property die einzelnen Tag-Einträge als Liste zu erhalten. Außerdem wurde Logging beim Hinzufügen von Feedback-Einträgen eingebaut und die IdUtils um eine Methode zum Erzeugen einer CoreId aus einer ExternalId erweitert.
-
Added
Depublizieren von nicht mehr gemappten Resourcen unterstützen
– SOMSI-196 (medium)
Notes
Per IMappingContext.setUnpublishPreviouslyMappedResources(true/false) können die Resourcen zum Mappingergebnis hinzugefügt werden, welche beim aktuellen Mappingdurchlauf depubliziert werden müssen, weil sie beim vorherigen Durchlauf in der ARD Mediathek/Audiothek erzeugt und publiziert wurden, nun aber z.B. nicht mehr in der Quelle enthalten sind und deswegen in der ARD Mediathek/Audiothek depubliziert sein sollen (sofern sie nicht auch zu einer anderen Source gemappt und veröffentlicht wurden).
Außerdem existiert per IMappingContext.getResourceProvider() Zugriff auf die gespeicherten Informationen zu den zuletzt erfolgreich gemappten Resourcen der gerade zu mappenden Source.
-
Added
Retry-Mechanik für Anfragen an Core API ermöglichen, wenn zuvor angelegte Ressourcen noch nicht gefunden werden konnten
– SOMSI-191 (medium)
Notes
Per "ardmedialibrary.retry.maxAttempts" und "ardmedialibrary.retry.delayInMillis" kann konfiguriert werden, wie häufig und in welchen Abständen versucht werden soll, eine Resource in der ARD Mediathek/Audiothek anzulegen bzw. zu aktualisieren, wenn eine "Resource does not exist"-Fehlermeldung auftritt.
-
Added
Zugriff auf die Verwendungen (UsedSources) in Mappings ermöglichen
– SOMSI-180 (medium)
Notes
Neue Methode hinzugefügt: IMappingContext.getPreviousUsedSources()
-
Added
Unpublish und Republish von Objekten nur anhand der External-ID ermöglichen
– SOMSI-179 (medium)
Notes
Über die neue IResource-Implementation "Publishable" lassen sich Resourcen in der ARD Mediathek/Audiothek (de)publizieren, ohne dass die komplette konkrete Resource (z.B. Show) gemappt werden muss.
Zusätzlich kann per IResource.createIfNotExisting() bestimmt werden, ob eine Resource in der ARD Mediathek/Audiothek erzeugt werden soll, wenn sie dort noch nicht existiert (Standard ist "true").
-
Added
Unpublish- und Republish-Operationen per isPublished-Flag von IPublishable-Resourcen auslösen
– SOMSI-152 (medium)
Notes
Der Metadata-Supplier verfügt nur noch über die Schnittstelle "supply(SourceDescriptor)". Die REST-Schnittstelle befindet sich bei /metadata-supplier/<source-type>/<source-id> ("put" und "get"). Die Mapper müssen bei Shows, Seasons, PermanentLivestreams und Publications nun per Builder.withPublished(true/false) angeben, ob die jeweilige Resource in der ARD Mediathek sichtbar sein soll oder nicht.
-
Added
IPublishable-Interface für veröffentlichbare IResource einführen
– SOMSI-151 (medium)
Notes
Die Mapper können bei Shows, Seasons, PermanentLivestreams und Publications nun per Builder.withPublished(true/false) angeben, ob die jeweilige Resource in der ARD Mediathek sichtbar sein soll oder nicht.
-
Added
Clientskript für die manuelle (Neu-)Anlieferung von Inhalten bereitstellen
– SOMSI-137 (medium)
Notes
Es gibt nun ein DeskClient-Skript "Zur ARD Mediathek/Audiothek senden", um das Senden von Inhalten an die ARD Mediathek/Audiothek zu triggern, ohne Sophora-Dokumente (erneut) veröffentlichen zu müssen. Weitere Informationen dazu sind dem Abschnitt "Client Script to manually trigger the Sophora Metadata Supplier" der Dokumentation "Sophora Metadata Supplier for ARD Mediathek/Audiothek Operation" zu entnehmen.
-
Added
Initiale Aufsynchronisierung abschaltbar machen
– SOMSI-125 (medium)
Notes
Per metadata-supplier-sophora:sync-at-startup:false in der application.yml kann die initiale Synchronisation der Inhalte aus dem Sophora-Server abgeschaltet werden
-
Added
REST-Schnittstelle für die Anlieferung von Inhalten zur ARD-Mediathek schaffen
– SOMSI-97 (medium)
-
Added
Verwendungen persistieren
– SOMSI-96 (medium)
-
Added
Per Konfiguration bestimmen, welche Sophora-Dokumentevents behandelt werden sollen
– SOMSI-80 (medium)
Notes
In der application.yml muss nun angegeben werden, welche Dokumentstatusänderungen bei welchen Dokumenttypen im Metadata Supplier behandelt werden sollen. Siehe Dokumentation für weitere Informationen.
-
Added
Änderungen an verwendeten Dokumenten müssen Aktualisierung von Entitäten in der ARD-Core-API auslösen
– SOMSI-55 (medium)
Version 4.26.0
– 4/18/24
Sophora Client API: 4.29.0.
-
Improved
Vorhandene Feedback-Haftnotizen sollen nicht verschwinden, wenn kein Mapping durchgeführt wird
– SOMSI-383 (medium)
Notes
Wenn bei einem (erneuten) Mappingdurchlauf für ein Sophora-Dokument keine gemappten Ressourcen entstehen, bleiben zuvor gesetzte SMS-Haftnotizen an dem Dokument erhalten, statt sie zu entfernen.
-
Improved
Erfolgreiche Depublikationen von Inhalten in der Mediathek/Audiothek sollen in Feedback-Haftnotizen mit aufgeführt werden
– SOMSI-377 (medium)
Notes
Es gibt einen neuen Message-Key "sms.stickynote.unpublish.success" mit dem Standardtext "Die zugehörigen Inhalte wurden am ${date} um ${time} Uhr erfolgreich in der ARD Mediathek/Audiothek depubliziert (${resourceDescriptors})". Der Text erscheint (zusätzlich) in der Haftnotiz am Sophora-Dokument, wenn mindestens eine gemappte Ressource erfolgreich in der ARD Mediathek/Audiothek depubliziert wurde.
Die Formulierung der Feedbacktexte mit den Message-Keys "sms.unpublish.error", "sms.unpublish.success", "sms.unpublish.unable", "sms.unpublish.unnecessary" wurden entsprechend angepasst, so dass die Inhalte nicht "aus der Mediathek entfernt", sondern "in der Mediathek depubliziert" wurden.
-
Added
MDP4-Feld "publisherId" auf Item-Ebene und "timestampInParent" in Sections unterstützen
– SOMSI-394 (medium)
Notes
Episodes, EventLivestreams, Extras und Sections verfügen nun über das Feld publisherId.
Sections verfügen zusätzlich über das neue Feld timestampInParent.
Version 4.25.0
– 3/28/24
Sophora Client API: 4.28.0.
-
Added
MDP4-Feld "hasLiveContentEvents" unterstützen
– SOMSI-388 (medium)
Notes
EventLivestreams verfügen nun über das neue Feld "hasLiveContentEvents".
Version 4.24.0
– 3/12/24
Sophora Client API: 4.28.0.
-
Changed
NormDbLocation-Ids im CoreId-Format übertragen
– SOMSI-385 (medium)
Notes
Der Builder für NormDbLocations nimmt die Id nun als CoreId-Objekt und als String entgegen. Wenn die Id als String übergeben wird, wird sie ins CoreId-Format umgewandelt, wenn nötig. Z.B. aus dem String "vokabel-1572" wird "urn:ard:location:e4f12d7dba8c438f" und aus dem String "1572" wird ebenfalls "urn:ard:location:e4f12d7dba8c438f". Die Angabe von "urn:ard:location:e4f12d7dba8c438f" bleibt unverändert. Mappings sollten dennoch direkt ein CoreId-Objekt statt einen String übergeben.
Version 4.23.0
– 2/8/24
Sophora Client API: 4.27.2.
-
Fixed
Während des Aufsynchronisierens von Sophora-Events dürfen neue Events nicht verloren gehen
– SOMSI-341 (high)
Notes
Während der Synchronisierung eingehende Sophora-Events werden nun nachträglich abgearbeitet
-
Added
Priorisierungsmöglichkeit für Aufträge aus Sophora im SMS anbieten
– SOMSI-364 (medium)
Notes
Die Behandlung von Sophora-Dokumentänderungen kann nun priorisiert werden ("normal" und "hoch"). Auf diese Weise lassen sich z.B. redaktionelle Dokumentänderungen vor automatischen Dokumentänderungen (bspw. durch den Sophora-Importer) an die ARD Mediathek/Audiothek senden. Abgrenzung: Mappings, die per REST-Schnittstelle oder "Used Sources"-Feature ausgelöst werden, können hiermit nicht priorisiert werden. Weitere Informationen sind dem "Sophora Metadata Supplier for ARD Mediathek/Audiothek Developing Guide" unter dem Stichwort "IPrioritySetter" zu entnehmen.
Monitoring:
Die bisherigen Metriken der SupplyJob-Queue wurden beibehalten und spiegeln den Gesamtzustand der Queue wieder. Zusätzlich sind folgende Metriken neu hinzugekommen, welche sich auf die jeweilige Priorität beziehen (<priority> steht für "normal" bzw. "high"):
- metadatasupplier.supplyjob.<priority>.queue.size
- metadatasupplier.supplyjob.<priority>.queued
- metadatasupplier.supplyjob.<priority>.executed
Die Entgegennahme von Dokumentänderungsevents und deren Abarbeitung wurde in diesem Zuge voneinander getrennt. Dafür wurde eine Event-Queue eingeführt und vor der SupplyJob-Queue angesiedelt. Folgende neue Metriken zeigen den Zustand dieser Event-Queue an:
- metadatasupplier.event.queue.size
- metadatasupplier.event.queued
- metadatasupplier.event.executed
- metadatasupplier.event.executionerrors
Version 4.22.1
– 12/19/23
Sophora Client API: 4.27.0, Spring Data Sophora: 4.8.0, Spring Boot Sophora Commons: 4.3.0
-
Fixed
Zeilenumbrüche bei Aufzählungen in Haftnotizmeldungen korrigieren
– SOMSI-368 (medium)
Notes
Behebt das Problem, dass URLs am Ende von einzelnen Aufzählungspunkten in den Feedback-Haftnotizen im DeskClient nicht (richtig) als Link erkannt werden
Version 4.22.0
– 12/10/23
Sophora Client API: 4.26.0.
-
Improved
Deutschsprachige Validierungsmeldungen für Felder des ARD Metadatenpakets 2 verbessern
– SOMSI-352 (medium)
Notes
Manche deutsche Übersetzungen der englischsprachigen Validierungsmeldungen von der ARD Mediathek/Audiothek wurden verbessert
-
Added
Zulieferung der Felder des ARD Metadatenpakets 3 per SMS ermöglichen
– SOMSI-350 (medium)
Notes
Die folgenden neuen Felder können nun angeliefert werden:
- "companyCredits" (für Seasons, Shows, EventLivestreams, Episoden, Sections und Extras)
- "creationBrid" (für Seasons, Shows, EventLivestreams, Episoden, Sections, Extras und Permanent-Livestreams)
- "creativeCommonsLicense" (für Episoden, Sections und Extras)
- "isClosedNarration" (für Shows mit Show-Type "INFINITE_SERIES")
- "isSensitiveContent" (für Shows, EventLivestreams, Episoden, Sections und Extras)
- "loginOnlyUntil" (für Publications)
- "permanentLivestreamType" (für PermanentLivestreams)
- "producedForOnDemand" (für Shows (nur Audio))
- "publicationBrid" (für Publications und Permanent-Livestreams)
- "relatedShowIds" (für Shows)
- "showNotes" (für Episoden)
- "videoLanguage" (für VideoBinaries)
Außerdem:
- Die deprecated Felder "isMovie" und "premiereDate" wurden aus Episoden komplett entfernt
- Das Feld "involvedInternalInstitutionsAndFinancialShares" von InternalOwnerships ist nun kein Pflichtfeld mehr und braucht somit nicht mehr explizit gesetzt werden
Folgende Message-Keys wurde korrigiert:
- error.deliveryapi.service.validation.image_binary.undetermineable_mediatype => error.deliveryapi.service.validation.image_binary.indeterminable_mediatype
- error.deliveryapi.service.validation.asset.category_distribution_missmatch_publisher_type => error.deliveryapi.service.validation.asset.category_distribution_mismatch_publisher_type
Folgende Message-Keys sind neu hinzugekommen:
- error.deliveryapi.service.brid.brid_not_unique
- error.deliveryapi.service.validation.must_be_equal_or_greater_than
- error.deliveryapi.service.validation.audio_binary.audiotracks.invalid_audioversion
- error.deliveryapi.service.validation.video_binary.no_embedded_subtitles_or_sign_language_available_for_videoLanguage
- error.deliveryapi.service.validation.video_binary.incorrect_language_type_for_videoLanguage_with_sign_languages
- error.deliveryapi.service.validation.video_binary.incorrect_language_type_for_videoLanguage_with_subtitles
- error.deliveryapi.service.validation.asset.invalid_html_in_shownotes
- error.deliveryapi.service.validation.asset.company_credit.exactly_one_identifier_must_be_set
- error.deliveryapi.service.validation.asset.company_credit.role_description_mandatory_for_role_other
- error.deliveryapi.service.validation.show.produced_for_on_demand_not_supported_for_video_shows
- error.deliveryapi.service.validation.show.is_closed_narration_not_valid_for_show_type
- error.deliveryapi.service.validation.publication.login_only_until_not_after_created
- error.deliveryapi.service.validation.publication.login_only_until_not_after_start_date
- error.deliveryapi.service.validation.publication.login_only_until_with_event_livestream
- error.deliveryapi.service.validation.content_event.content_event_unique_type
- error.deliveryapi.service.validation.content_event.content_events_overlap
- error.deliveryapi.service.validation.content_event.content_events_type_ordering
Die vollständige Liste aller Message-Keys und deren Texte befindet sich im ARD-Developer-Portal.
Version 4.21.0
– 11/8/23
Sophora Client API: 4.23.5.
-
Improved
Error-Logging in ImageUtils verbessern
– SOMSI-356 (medium)
Notes
Falls Bildvarianten in einem Bilddokument nicht existieren, wird nun neben dem Bildvariantennamen auch die Sophora-ID des betroffenen Bilddokumentes geloggt.
-
Improved
Tests für die automatische Erzeugung von ImageCollections hinzufügen
– SOMSI-355 (medium)
Notes
Das bestehende Verhalten bei der Erzeugung von ImageCollections wurde durch weitere Unittests abgesichert
-
Added
Clientskript für die manuelle (Neu-)Anlieferung von Inhalten bereitstellen
– SOMSI-137 (medium)
Notes
Es gibt nun ein DeskClient-Skript "Zur ARD Mediathek/Audiothek senden", um das Senden von Inhalten an die ARD Mediathek/Audiothek zu triggern, ohne Sophora-Dokumente (erneut) veröffentlichen zu müssen. Weitere Informationen dazu sind dem Abschnitt "Client Script to manually trigger the Sophora Metadata Supplier" der Dokumentation "Sophora Metadata Supplier for ARD Mediathek/Audiothek Operation" zu entnehmen.
Version 4.20.0
– 10/26/23
Sophora Client API: 4.23.2.
-
Added
Feedback im SMS erweitern: Message-Codes, HTTP-Status und UsedSources
– SOMSI-286 (medium)
Notes
Das Feedback wurde um Message-Codes mit Platzhalter-Argumenten, einer Auflistung der zusätzlich verwendeten Quellen (Used Sources) und den jew. HTTP-Status-Code von der ARD Mediathek/Audiothek erweitert. Die bisher hart codierten Feedbacktexte können somit nun per "messages.properties"-Dateien individualisiert werden. Manche der Texte wurden bereits umformuliert. Achtung: Die Textkonstanten aus FeedbackService, UnpublishOperation und RepublishOperation wurden entfernt.
Damit die Meldungstexte im Feedback und die Haftnotiztexte in den Sophora-Dokumenten weiterhin in deutscher Sprache erscheinen, muss der Metadata Supplier mit deutschem Locale gestartet werden. Diese Haftnotiztexte lassen sich ebenfalls individualisieren.
Die beim Mapping verwendeten Quellen (Used Sources) werden standardmäßig ebenfalls in die Haftnotiz geschrieben. Dies lässt sich per Konfigurationsparameter "metadata-supplier-sophora.attach-used-sources-to-sticky-notes" in der application.yml abschalten.
Weitere Informationen befinden sich in der Dokumentation zum Sophora Metadata Supplier.
Version 4.19.0
– 9/28/23
Sophora Client API: 4.22.0.
-
Improved
Metriken für Job-Queue bereitstellen
– SOMSI-336 (high)
Notes
Zum Auslesen der aktuellen Anzahl der aus Sophora getriggerten und noch abzuarbeitenden Mapping-Aufträge wurde die neue Metrik "metadatasupplier.supplyjob.queue.size" hinzugefügt. Die Anzahl der insgesamt aus Sophora getriggerten bzw. abgearbeiteten Mapping-Aufträge seit SMS-Start kann nun über die neuen Metriken "metadatasupplier.supplyjob.queued" bzw. "metadatasupplier.supplyjob.executed" abgefragt werden. Die Gesamtanzahl der Mapping-Aufträge, deren Abarbeitung aufgrund unvorhergesehener Fehler abgebrochen ist, kann über die neue Metrik "metadatasupplier.supplyjob.executionerrors" ausgelesen werden.
Version 4.18.0
– 8/4/23
Sophora Client API: 4.20.2.
-
Changed
Hilfsmethode für Mapping von Genres und Subgenres an geänderte Auswahlwertstruktur anpassen
– SOMSI-330 (medium)
Notes
Die Hilfsmethoden der ArdNormDbUtil- und SdsArdNormDbUtil-Klassen können jetzt auch die Vokabel-IDs aus Genre- und Subgenre-Auswahlwerten auslesen, die der neuen Struktur folgen, welche mit dem ARD Metadatenpaket 2 eingeführt wurde. Genres und Subgenres, die noch der alten Struktur folgen, funktionieren weiterhin mit den Hilfsmethoden.
Version 4.17.1
– 7/20/23
-
Improved
AspectRatio um 2:3 erweitern
– SOMSI-337 (medium)
Notes
Bei Bildern sind nun folgende Seitenverhältnisse möglich: 2:3, 3:4, 16:7, 16:9, 32:9, 64:9
Version 4.17.0
– 7/17/23
Sophora API: 4.19.2. Sophora Client: 4.19.2.
-
Added
Zulieferung der personCredits-, audioTracks- und contentEvents-Felder des ARD Metadatenpakets 2 per SMS ermöglichen
– SOMSI-318 (medium)
Notes
"personCredits" wird an allen Items und Groupings unterstützt; "audioTracks"-Feld wird an allen Binaries unterstützt; "subtitleTracks" wird an VideoBinaries unterstützt; "contentEvents"-Feld wird an allen OnDemand Inhalten (Episode, Extra, Section) unterstützt; "language" und "subtitleType" werden an Subtitle unterstützt
Version 4.16.1
– 6/8/23
Sophora API: 4.19.1. Sophora Client: 4.19.1.
-
Fixed
Benutzerdefinierte Texte zu Fehlermeldungen der Core API werden nicht gefunden
– SOMSI-326 (medium)
Notes
Behebt das Problem, dass die mitgelieferten Übersetzungen zu Fehlermeldungen der Core API oder eigene Übersetzungen in Mapping-Plugins nicht gefunden werden.
-
Fixed
SMS muss im Dashboard richtig angezeigt werden
– SOMSI-299 (medium)
Notes
Mit diesem Bugfix wird der Onlinestatus in der Kachel im Dashboard repariert. Damit die Daten in den Details auf der rechten Seite im Dashboard angezeigt werden, muss das Admin Dashboard in Version >= 3.1.5, 4.2.4, 5.0.0 verwendet werden.
-
Changed
Update auf Spring Boot 2.7.11 und Spring 5.3.27
– SOMSI-323 (medium)
Notes
Es wird nun Spring Boot 2.7.11 (statt 2.7.10) mit Spring 5.3.27 (statt 5.3.26) eingesetzt. In bestehenden Mapping-Projekten müssen ggf. die Abhängigkeiten angepasst werden.
Version 4.16.0
– 5/11/23
Sophora API: 4.17.2. Sophora Client: 4.17.2.
-
Added
Zulieferung der ersten Felder des ARD Metadatenpakets 2 per SMS ermöglichen
– SOMSI-296 (medium)
Notes
An Groupings (Season und Show), Items (EventLivestream, Episode, Section und Extra) sowie PermanentLivestreams können nun die Felder "contentRatings", "countriesOfOrigin", "embeddingType", "externalContentIds", "geoLocations", "internalOwnership", "normDbLocations", "originalRelease", "originalSpokenLanguages" und "seo" übergeben werden. Außerdem lassen sich an Images die Felder "artworkType" und "isBranded" setzen.
Version 4.15.0
– 4/12/23
Der Sophora Metadata Supplier nutzt nun Spring-Boot 2.7.10 mit Spring 5.3.26 und entsprechenden Abhängigkeiten
-
Changed
Update auf SpringBoot 2.7: Umstellung der Swagger-UI von Springfox auf Springdoc
– SOMSI-259 (high)
Notes
Die Standard-URL zur Swagger-UI lautet nun http://localhost:8080/swagger-ui.html (statt http://localhost:8080/swagger-ui/index.html). Siehe Dokumentation bzgl. REST-API, Monitoring und Konfiguration des Webservers.
-
Changed
Dependency-Upgrade: Auf Spring 5.3.26, Spring-Boot 2.7.10 und Abhängigkeiten aktualisieren
– SOMSI-307 (medium)
Notes
Mapping-Projekte müssen ggf. an die neuen verwendeten Versionen angepasst werden.
Version 4.14.0
– 3/21/23
-
Added
Benutzerdefinierte Texte zu Fehlermeldungen der Core API ermöglichen
– SOMSI-260 (medium)
Notes
Texte zu Fehlermeldungen aus der ARD Core API werden nun je nach Default Locale vom Sophora Metadata Supplier auf deutsch oder englisch (default) als Feedback ausgegeben. Darüber hinaus ist es möglich, eigene Übersetzungen zu verwenden. Dazu müssen entsprechende "messages properties"-Datei(en) im "i18n"-Verzeichnis der Sophora Metadata Supplier Installation abgelegt werden. Weitere Information hierzu sind der Dokumentation zu entnehmen.
Version 4.13.0
– 3/1/23
-
Changed
SpringDataSophora 4.4.0 einbinden
– SOMSI-304 (medium)
Notes
Es wird nun SpringDataSophora 4.4.0 verwendet, u.a. mit der Erweiterung für das IPTC-Add-on an Bilddokumenttypen und korrekter Beachtung im OfflineDateCalculator, wenn "sophora:offlineAfterDays" auf "-" gesetzt ist (= "nie offline stellen").
Version 4.12.1
– 2/2/23
-
Changed
Version der Spring-Data-Sophora-Commons Dependency vorgeben
– SOMSI-294 (medium)
Notes
Der Metadata Supplier gibt nun die Version von spring-data-sophora-commons vor, so dass Mapper-Projekte diese einfach verwenden können.
Version 4.12.0
– 1/30/23
-
Changed
ARD Core API ohne JUnit Compile Dependency nutzen
– SOMSI-293 (medium)
Notes
In Mapping-Projekten müssen JUnit-Abhängigkeiten nun ggf. explizit angegeben werden.
Version 4.11.0
– 12/8/22
-
Fixed
Das SMS muss wieder mit Docker gestartet werden können
– SOMSI-274 (critical)
-
Fixed
RestTemplateBuilder soll die richtige RequestFactory verwenden
– SOMSI-282 (medium)
Notes
In der RestTemplateFactory verwendet der RestTemplateBuilder nun die per RestTemplateFactory.createRequestFactory() erzeugte ClientHttpRequestFactory. Es reicht also, die Methode statt der ganzen Klasse zu überschreiben, wenn eine andere RequestFactory verwendet werden soll.
-
Improved
Feedback bei Exceptions in der accept()-Methode von Mappern zurückgeben
– SOMSI-284 (medium)
Notes
Exceptions in IResourceMapper.accept(...) werden nun abgefangen und so behandelt, als ob es keinen Mapper für die Source gäbe. Eine entsprechende Feedbackmeldung wird zurückgegeben.
Version 4.10.1
– 11/25/22
ACHTUNG: Diese Version lässt sich nicht in Docker starten
-
Changed
Dependencies aktualisiert: Apache Commons Text und Commons Lang 3
– SOMSI-272 (medium)
Notes
Diverse Abhängigkeiten wurden aktualisiert
Version 4.10.0
– 11/9/22
ACHTUNG: Diese Version lässt sich nicht in Docker starten
-
Improved
Feedback bzgl. "unpublish" und "republish" verbessern
– SOMSI-257 (medium)
Notes
Es gibt nun keine "Erfolgreich an die ARD Mediathek/Audiothek gesendet"-Feedbackmeldung mehr für Objekte vom Typ Publishable, da über diese keine Resourcen in der Mediathek angelegt oder inhaltlich aktualisiert werden können. Die Feedbackmeldungen "Erfolgreich in der ARD Mediathek/Audiothek veröffentlicht" bzw. "Erfolgreich aus der ARD Mediathek/Audiothek entfernt" erscheinen weiterhin.
Es gibt neue, zusätzliche Feedbackmeldungen, wenn Resourcen in der ARD Mediathek/Audiothek veröffentlicht/depubliziert werden sollten, die bereits veröffentlicht/depubliziert sind: "Ein (erneutes) Veröffentlichen in der ARD Mediathek/Audiothek war nicht notwendig" und "Ein (erneutes) Entfernen aus der ARD Mediathek/Audiothek war nicht notwendig".
Es gibt neue, zusätzliche Feedbackmeldungen, wenn Resourcen in der ARD Mediathek/Audiothek veröffentlicht/depubliziert werden sollten, die dort gar nicht existieren: "Ein Veröffentlichen in der ARD Mediathek/Audiothek war nicht möglich" bzw. "Ein Entfernen aus der ARD Mediathek/Audiothek war nicht möglich".
-
Added
Der Metadata Supplier soll JMX per HTTP (Jolokia) anbieten und den HTTP-Port in der Konfiguration mitliefern
– SOMSI-266 (medium)
Notes
JMX MBeans können nun per HTTP unter /actuator/jolokia/ verwendet werden. Ab Sophora 4 ist der Sophora Metadata Supplier damit auch im Sophora Admin Dashboard monitorbar.
Version 4.9.2
– 10/12/22
-
Fixed
Spring-Boot-Sophora-Commons 4.1.19 verwenden
– SOMSI-265 (medium)
Notes
Behebt ein Maven-Enforcer-Plugin-Problem für SMS-Mapper-Plugin-Projekte bzgl. der verwendeten Sophora-Core-Version.
Version 4.9.1
– 10/12/22
-
Changed
Standardmäßig die neue Test-Delivery-API-URL statt der einzelnen Core API-Service-URLs nutzen
– SOMSI-253 (medium)
Notes
Die verschiedenen Services der ARD Mediathek/Audiothek (wie Image-Service, Asset-API und Player-API) werden mittlerweile unter einer Delivery-API-URL zusammengefasst und bereitgestellt. Daher lauten die Standard-URL-Konfigurationen im SMS für Image-Service, Asset-API und Player-API nun jeweils https://deliver-test.ard.de/delivery-api statt https://deliver-test.ard.de/image-service, https://deliver-test.ard.de/asset-api und https://deliver-test.ard.de/player-api.
Bei bestehenden SMS-Installationen, die die ARD Mediathek/Audiothek Service-URLs in der application.yml eingetragen haben, müssen diese URLs für jeden der drei Services entsprechend angepasst werden: URL für das Testsystem der ARD Mediathek/Audiothek: https://deliver-test.ard.de/delivery-api bzw. URL für das Live-System der ARD Mediathek/Audiothek: https://deliver.ard.de/delivery-api
Version 4.9.0
– 9/14/22
-
Changed
Versionen für Module vom SMS und SDS im DependencyManagement vorgeben
– SOMSI-258 (medium)
Notes
Mapping-Plugin-Projekte können für einfacheres und konsistentes Dependency Management nun die "pom.xml" von "metadatasupplier-parent" importieren
Version 4.8.1
– 8/5/22
-
Improved
Strukturiertes Logging: Image-Data soll nicht geloggt werden, damit Logfiles klein bleiben
– SOMSI-255 (medium)
Notes
Alle Resourcen werden nur noch auf Trace-Level geloggt.
-
Added
Metriken für UsedSources und MappedResources hinzufügen
– SOMSI-229 (medium)
Notes
Die Metriken zu Anzahl und Größe der "Used Sources" und "Mapped Resources" sind nun unter http://<host>:<port>/actuator/metrics/ abrufbar.
Version 4.8.0
– 7/29/22
-
Improved
Änderungen aus der Doku der ARD Core API nachziehen
– SOMSI-239 (medium)
Notes
Der JavaDoc an den Interfaces für Resourcen (IShow, ISeason, IEpisode, usw.) wurde aktualisiert.
-
Improved
Strukturiertes Logging einbauen
– SOMSI-218 (medium)
Notes
Über den VM-Parameter -Dspring.profiles.active=json-logs (oder über die Angabe in der application.yml) kann strukturiertes (Json-)Logging aktiviert werden.
Vorsicht: Fügt eine Abhängigkeit zu "net.logstash.logback" "logstash-logback-encoder" hinzu, die in Mapping-Projekten ggf. zu Abhängigkeitskonflikten mit Jackson führen kann.
Version 4.7.1
– 7/21/22
-
Fixed
Log zeigt falsche Webserver-Ports an
– SOMSI-222 (medium)
-
Improved
Publications sollen auch ohne ImageCollection angelegt werden können
– SOMSI-225 (high)
Notes
Publications können auch angelegt werden, ohne explizit Images hinzufügen zu müssen. In dem Fall werden in der ARD Mediathek/Audiothek die Bilder aus dem referenzierten Item verwendet.
-
Improved
Versionsnummern der Mapping-Klassen loggen
– SOMSI-244 (medium)
Notes
Wenn die <my-mapping>-jar-with-dependencies.jar eine META-INF/MANIFEST.MF mit Eintrag für "Implementation-Version" hat, wird die Versionsnummer der Mapper-Klassen geloggt.
-
Improved
Metriken um Tag "application" ergänzen, um Filterung zu erleichtern
– SOMSI-245 (low)
Notes
Die Metriken enthalten nun {application="Sophora Metadata Supplier for ARD Mediathek/Audiothek"}
Version 4.7.0
– 7/14/22
-
Added
Ermöglichen des Anlieferns der "alten" Term-IDs
– SOMSI-238 (medium)
Notes
Bei AudioBinary und VideoBinary kann die TermId nun statt im CoreID-Format (z.B. "urn:ard:termid-video:9bb5a34d66e2ec19") auch im CcAvTermId-Format (z.B. "1.2.3.14.1") angegeben werden, z.B. IVideoBinary videoBinary = VideoBinary.builder().with...(...).withCcAvTermId(CcAvTermId.of("1.2.3.14.1")).build();
Version 4.6.0
– 7/13/22
Setzt mindestens Server-Version 4.11.0 voraus. Bringt "spring-data-sophora" und das neue Artefakt "metadata-supplier-spring-data-sophora-commons" mit, welches Hilfsmethoden für die Verwendung von Spring-Data-Sophora in Mapping-Plugins bereit stellt.
-
Fixed
Inkompatibilitätsprobleme mit Sophora-Servern beheben, die nicht Sophora-Core 4.10.0, 4.10.1 oder 4.11.0 verwenden
– SOMSI-228 (high)
-
Added
IdUtils.createId() für mehrere Resources anbieten
– SOMSI-241 (medium)
Notes
Neben "CoreId createId(IResource resource)" gibt es jetzt auch "List<CoreId> createIds(Collection<? extends IResource> resources)"
-
Added
Hilfsmethoden bzgl. Genres, Categories und Tenants zu "metadata-supplier-spring-data-sophora-commons" hinzufügen
– SOMSI-240 (medium)
Notes
Die Klassen com.subshell.sophora.metadatasupplier.sds.commons.SdsArdNormDbUtil und com.subshell.sophora.metadatasupplier.sds.commons.TenantUtil aus dem neuen "metadata-supplier-spring-data-sophora-commons"-Artefakt bieten Methoden an, um aus SDS-MultiSelectValue-Objekten entsprechende CoreIds für (Sub)GenreCategories oder ThematicCategories bzw. die Tenants zu erhalten.
-
Added
Methode anbieten, um aus einer ExternalId eine CoreId oder null zu erzeugen
– SOMSI-237 (medium)
Notes
IdUtils.createIdOrNull(Type type, ExternalId externalId) liefert die CoreId zu dem angegebenen Type und ExternalId. Falls keine ExternalId angegeben wurde, liefert die Methode null (im Gegensatz zu IdUtils.createId(Type type, ExternalId externalId), was eine Zufalls-Id liefert).
-
Added
SophoraSourceDescriptor direkt von Sophora-Dokumenten erzeugen
– SOMSI-236 (medium)
Notes
Es gibt jetzt SophoraSourceDescriptor.create(ISophoraDocument), um den SourceDescriptor zu einem Sophora-Dokument zu erzeugen.
Das neue Artefakt "metadata-supplier-spring-data-sophora-commons" enthält DocumentEntitySourceDescriptor.create(SophoraDocumentEntity), womit SourceDescriptor-Objekte zu SophoraDocumentEntity-Objekten erzeugt werden können.
Zu beachten: Das neue Artefakt bringt die Abhängigkeit zu "metadata-supplier-sophora-commons" und zu "spring-data-sophora" mit.
Version 4.5.4
– 6/17/22
-
Fixed
VideoBinary.hasEmbeddedSubtitles() darf nicht immer "false" an die Core API übergeben
– SOMSI-232 (high)
Notes
VideoBinary.isHasEmbeddedSubtitles() wurde entfernt. Es muss IVideoBinary.hasEmbeddedSubtitles() genutzt werden.
Der vollständige Fix ist erst ab Version 3.5.4 bzw. 4.5.4 enthalten.
Version 4.5.3
– 6/17/22
-
Fixed
VideoBinary.hasEmbeddedSubtitles() darf nicht immer "false" an die Core API übergeben
– SOMSI-232 (high)
Notes
VideoBinary.isHasEmbeddedSubtitles() wurde entfernt. Es muss IVideoBinary.hasEmbeddedSubtitles() genutzt werden.
Der vollständige Fix ist erst ab Version 3.5.4 bzw. 4.5.4 enthalten.
Version 4.5.2
– 6/13/22
-
Added
Feedback-Meldungen sollten nicht mehrfach zum Feedback hinzugefügt werden können
– SOMSI-230 (medium)
Notes
Beim Hinzufügen von Feedback-Einträgen zu Feedbacks werden bereits vorhandene Einträge nun ignoriert, so dass der gleiche Feedback-Eintrag nicht mehrfach im Feedback enthalten ist.
Version 4.5.1
– 6/7/22
-
Improved
Der ImageMapper soll auch die Seitenverhältnisse der gemappten Bilder liefern
– SOMSI-227 (medium)
Notes
Der ImageMapper bietet nun zusätzlich die Methode mapImagesToAspectRatioMap(IImageDataProvider imageDataProvider) an, welche Map<IAspectRatio, IImage> zurück liefert.
Version 4.5.0
– 5/24/22
ACHTUNG: Enthält inkompatible API-Änderungen! Die Mapper-Projekte/-Klassen müssen angepasst und zusammen mit dieser Sophora Metadata Supplier Version installiert werden. Ein altes Mapping mit dieser (oder neueren) SMS-Version bzw. ein angepasstes Mapping mit einer älteren SMS-Version sind nicht kompatibel!
-
Improved
Inkompatibilitäten zwischen SMS und Mapping sollen geloggt werden und zum Beenden des SMS führen
– SOMSI-223 (medium)
Notes
Beim Auftreten eines LinkageError zwischen SMS und Mapping erscheint dieser nun in der Logdatei und das SMS wird mit Exitcode 192 beendet.
-
Improved
Felder für Core-IDs sollen in Builder-Methoden CoreId-Objekte akzeptieren
– SOMSI-172 (low)
Notes
ACHTUNG: Inkompatible Model-API-Änderung! Die Felder genreCategoryId, subgenreCategoryIds und thematicCategoryIds an Shows, Sections, Seasons usw. sind nun vom Typ CoreId statt String! Die Mapper-Projekte/-Klassen müssen dementsprechend angepasst werden, bevor diese Metadata Supplier Version produktiv eingesetzt wird, ansonsten funktioniert das Mapping nicht!
Dazu `String genreCategoryCoreId = "urn:ard:category-genre:myExternalIdHash";` ändern zu `CoreId genreCategoryCoreId = CoreId.create("urn:ard:category-genre:myExternalIdHash");` oder `CoreId genreCategoryCoreId = CoreId.create(Type.GENRE_CATEGORY.getCoreIdPrefix(), "myExternalIdHash");` bzw. `String genreCategoryId = CoreId.create(Type.GENRE_CATEGORY, "myExternalId").getId();` ändern zu `CoreId genreCategoryCoreId = CoreId.create(Type.GENRE_CATEGORY, "myExternalId");`.
Zum Lesen von List<CoreId> als List<String> (z.B. in Tests) kann CoreId.getStrings() verwendet werden, falls benötigt.
-
Added
Angabe zusätzlicher Mapping-Parameter ermöglichen
– SOMSI-212 (medium)
Notes
Per IMetadataSupplier.supply(SourceDescriptor, Parameters) und über die REST-Schnittstelle können nun zusätzliche Parameter von außen ins Mapping reingereicht werden.
ACHTUNG: Inkompatible API-Änderung! IResourceMapper.accept(SourceDescriptor) wurde geändert zu IResourceMapper.accept(SourceDescriptor, Parameters), d.h. alle Mapper-Klassen müssen die neue Methodensignatur implementieren bevor diese Metadata Supplier Version produktiv eingesetzt wird, ansonsten funktioniert das Mapping nicht! In Tests kann Parameters.of() für den neuen Methodenparameter übergeben werden.
In IResourceMapper.mapToResources(SourceDescriptor, IMappingContext) kann über den IMappingContext auf die Parameter zugegriffen werden, falls benötigt.
Version 4.4.4
– 5/6/22
-
Fixed
Release-Build-Prozess korrigieren
– SOMSI-220 (medium)
Version 4.4.3
– 5/6/22
-
Improved
StickyNoteFeedbackHandler soll keinen langen Stack loggen, wenn das Sophora-Dokument nicht existiert
– SOMSI-219 (medium)
-
Improved
Converter für Strings im Format "HH:MM:SS.ss" nach "PTxHxMx.xxxS" anbieten (ISO 8601)
– SOMSI-217 (medium)
Notes
In "metadata-supplier-sophora-commons" gibt es nun einen com.subshell.sophora.metadatasupplier.sophora.commons.Iso8601Converter
-
Improved
Methoden zum Erzeugen der CoreId aus Auswahlwertdokumenten für GenreCategories, SubgenreCategories und ThematicCategories bereitstellen
– SOMSI-215 (medium)
Notes
In com.subshell.sophora.metadatasupplier.sophora.commons.ArdNormDbUtil sind nun entsprechende Methoden enthalten
-
Improved
Hilfsmethoden bereitstellen, um mehrere Enums aus mehreren Strings zu erhalten
– SOMSI-214 (medium)
Notes
Die Enums aus com.subshell.ardcore.model.types haben nun alle eine valuesOf(Collection<String> names)-Methode
-
Improved
Docker Image verbessern
– SOMSI-205 (medium)
Version 4.4.2
– 4/6/22
-
Improved
Auf Spring-Data-Sophora 3.2.8 bzw. 4.0.14 aktualisieren
– SOMSI-211 (medium)
Notes
Der Metadata Supplier verwendet nun Sophora Core 3.9.4 bzw. 4.9.4. Mapper-Projekte mit Metadata Supplier 3.4.2 bzw. 4.4.2 und Spring-Data-Sophora 3.2.8 bzw. 4.0.14 müssen u.U. org.slf4j:slf4j-api:1.7.32 bzw. org.slf4j:jcl-over-slf4j:1.7.32 statt Version 1.7.30 einbinden.
Version 4.4.1
– 3/29/22
-
Improved
Feld originalClipExternalId in IPublication unterstützen
– SOMSI-206 (medium)
Notes
Bei Publications kann jetzt auch das Feld "originalClipExternalId" gesetzt werden.
Version 4.4.0
– 3/14/22
-
Changed
Banner und weitere Ausgaben des Sophora Metadata Suppliers sollen in der Log-Datei (nicht in einer gesonderten .out-Datei) ausgegeben werden
– SOMSI-150 (high)
-
Added
Wiederverwendbaren Sophora-Mapping-Code im Sophora Metadata Supplier anbieten
– SOMSI-202 (medium)
Notes
Das Projekt "metadata-supplier-sophora-commons" enthält nun nützliche Hilfsklassen und -methoden, um Sophora-Inhalte zu IResource-Objekten zu mappen. Z.B. ImageMapper, IImageVariantsProvider und IImageDataProvider, um Sophora-Bilddokumente zu mappen, wobei pro Seitenverhältnis aus einer Liste von Bildvarianten die erste Bildvariante des Bilddokumentes mit Binärdaten verwendet wird (Codebeispiel befindet sich im "metadata-supplier-plugin-example"). ArdNormDbUtil, um aus einem Auswahlwertdokument die ARD-Normdatenbank-Werte zu ermitteln. SophoraStringUtils, um z.B. aus dem "sophora:tags"-Property die einzelnen Tag-Einträge als Liste zu erhalten. Außerdem wurde Logging beim Hinzufügen von Feedback-Einträgen eingebaut und die IdUtils um eine Methode zum Erzeugen einer CoreId aus einer ExternalId erweitert.
-
Added
Depublizieren von nicht mehr gemappten Resourcen unterstützen
– SOMSI-196 (medium)
Notes
Per IMappingContext.setUnpublishPreviouslyMappedResources(true/false) können die Resourcen zum Mappingergebnis hinzugefügt werden, welche beim aktuellen Mappingdurchlauf depubliziert werden müssen, weil sie beim vorherigen Durchlauf in der ARD Mediathek/Audiothek erzeugt und publiziert wurden, nun aber z.B. nicht mehr in der Quelle enthalten sind und deswegen in der ARD Mediathek/Audiothek depubliziert sein sollen (sofern sie nicht auch zu einer anderen Source gemappt und veröffentlicht wurden).
Außerdem existiert per IMappingContext.getResourceProvider() Zugriff auf die gespeicherten Informationen zu den zuletzt erfolgreich gemappten Resourcen der gerade zu mappenden Source.
Version 4.3.1
– 2/22/22
-
Fixed
Publications ohne ImageCollection können nicht von der ARD Core API geladen werden
– SOMSI-197 (medium)
-
Added
Retry-Mechanik für Anfragen an Core API ermöglichen, wenn zuvor angelegte Ressourcen noch nicht gefunden werden konnten
– SOMSI-191 (medium)
Notes
Per "ardmedialibrary.retry.maxAttempts" und "ardmedialibrary.retry.delayInMillis" kann konfiguriert werden, wie häufig und in welchen Abständen versucht werden soll, eine Resource in der ARD Mediathek/Audiothek anzulegen bzw. zu aktualisieren, wenn eine "Resource does not exist"-Fehlermeldung auftritt.
Version 4.3.0
– 2/2/22
-
Added
Zugriff auf die Verwendungen (UsedSources) in Mappings ermöglichen
– SOMSI-180 (medium)
Notes
Neue Methode hinzugefügt: IMappingContext.getPreviousUsedSources()
-
Added
Unpublish und Republish von Objekten nur anhand der External-ID ermöglichen
– SOMSI-179 (medium)
Notes
Über die neue IResource-Implementation "Publishable" lassen sich Resourcen in der ARD Mediathek/Audiothek (de)publizieren, ohne dass die komplette konkrete Resource (z.B. Show) gemappt werden muss.
Zusätzlich kann per IResource.createIfNotExisting() bestimmt werden, ob eine Resource in der ARD Mediathek/Audiothek erzeugt werden soll, wenn sie dort noch nicht existiert (Standard ist "true").
Version 4.2.3
– 1/11/22
-
Fixed
PermanentLivestreams müssen an die ARD Mediathek gesendet werden können
– SOMSI-184 (medium)
Version 4.2.2
– 1/4/22
-
Fixed
HTTP Patch muss auch bei Verwendung eines Proxy unterstützt werden
– SOMSI-173 (medium)
Notes
Proxy-Einstellungen zur ARD Mediathek/Audiothek können nicht mehr in der application.yml über "ardmedialibrary.credentials.proxyUrl" und "ardmedialibrary.credentials.proxyPort" gesetzt werden. Stattdessen muss der Proxy über normale Systemproperties konfiguriert werden, z.B. in der Datei metadata-supplier-application-executable.conf.
-
Improved
Im Feedback soll der Begriff "ARD Mediathek/Audiothek" verwendet werden
– SOMSI-161 (medium)
Version 4.2.1
– 12/1/21
-
Improved
Verhindern, dass XML statt JSON zum ARD-Core geschickt wird
– SOMSI-163 (medium)
-
Improved
FeedbackHandler für Haftnotizen soll nur greifen, wenn Sophora-Dokumente gemapped wurden
– SOMSI-160 (low)
Version 4.2.0
– 11/25/21
-
Changed
Das Reagieren auf die (inoffizielle) Statusänderung "PUBLISH_AT_CANCELED" ermöglichen
– SOMSI-144 (medium)
-
Changed
Health-Endpunkte und Metriken im Sophora Metadata Supplier anbieten
– SOMSI-135 (medium)
-
Improved
Beispiel-Mapper-Plugin um Spring-Data-Sophora erweitern
– SOMSI-143 (medium)
Notes
Das "metadata-supplier-plugin-example" enthält jetzt zusätzlich einen Beispiel-Mapper, der Spring-Data-Sophora nutzt. Außerdem wir ein "jar-with-dependencies" erstellt. GroupId: "com.subshell.sophora.metadatasupplier", ArtifactId: "metadata-supplier-plugin-example" bzw. "metadata-supplier-plugin-example-launcher".
-
Improved
Unpublish und Republish optimieren
– SOMSI-81 (medium)
Notes
Die Operationen "unpublish" bzw. "republish" an der ARD Core API werden nur noch für veröffentlichbare Entitäten ausgeführt, bei denen der Sichtbarkeitszustand geändert werden muss.
-
Added
Unpublish- und Republish-Operationen per isPublished-Flag von IPublishable-Resourcen auslösen
– SOMSI-152 (medium)
Notes
Der Metadata-Supplier verfügt nur noch über die Schnittstelle "supply(SourceDescriptor)". Die REST-Schnittstelle befindet sich bei /metadata-supplier/<source-type>/<source-id> ("put" und "get"). Die Mapper müssen bei Shows, Seasons, PermanentLivestreams und Publications nun per Builder.withPublished(true/false) angeben, ob die jeweilige Resource in der ARD Mediathek sichtbar sein soll oder nicht.
-
Added
IPublishable-Interface für veröffentlichbare IResource einführen
– SOMSI-151 (medium)
Notes
Die Mapper können bei Shows, Seasons, PermanentLivestreams und Publications nun per Builder.withPublished(true/false) angeben, ob die jeweilige Resource in der ARD Mediathek sichtbar sein soll oder nicht.
-
Added
Per Konfiguration bestimmen, welche Sophora-Dokumentevents behandelt werden sollen
– SOMSI-80 (medium)
Notes
In der application.yml muss nun angegeben werden, welche Dokumentstatusänderungen bei welchen Dokumenttypen im Metadata Supplier behandelt werden sollen. Siehe Dokumentation für weitere Informationen.
Version 4.1.0
– 10/26/21
-
Changed
Entwicklung von kundenspezifischen Mappings in IDEs besser unterstützen
– SOMSI-134 (medium)
Notes
Die ausführbare metadata-supplier-application-<version>.jar wurde in metadata-supplier-application-<version>-executable.jar umbenannt. Start-/Stop-Skripte, die diese jar ausführen, müssen dementsprechend angepasst werden. Auch die metadata-supplier-application.conf muss in metadata-supplier-application-executable.conf umbenannt werden, sofern vorhanden. Bei der metadata-supplier-application-<version>.jar handelt es sich jetzt stattdessen nur um das einfache Artefakt der metadata-supplier-application, welche für die Plugin-Entwicklung in einem Launcher-Projekt genutzt werden kann.
-
Changed
Pflichtfelder "alt" und "producerName" für Images nachziehen
– SOMSI-132 (medium)
-
Added
Methoden prepend() und append() zu ExternalId hinzufügen
– SOMSI-126 (medium)
-
Added
Initiale Aufsynchronisierung abschaltbar machen
– SOMSI-125 (medium)
Notes
Per metadata-supplier-sophora:sync-at-startup:false in der application.yml kann die initiale Synchronisation der Inhalte aus dem Sophora-Server abgeschaltet werden
Version 4.0.0
– 10/1/21
-
Fixed
Für alle Ressourcen mit Bildern sollen die Images und ImageCollections vom ArdCoreConnector angelegt werden
– SOMSI-79 (high)
-
Changed
Mapper sollen mehrere Entitäten in der ARD-Core-API erzeugen können
– SOMSI-71 (high)
-
Changed
Docker-Image des Sophora Metadata Suppliers erstellen
– SOMSI-120 (medium)
-
Changed
Sophora-Events aufsynchronisieren nachdem der Metadata Supplier gestoppt war
– SOMSI-108 (medium)
-
Changed
Anbindung an Player API schaffen
– SOMSI-65 (medium)
-
Changed
Anlegen von Inhalten in der ARD-Core-API auch bei publishAt-Events unterstützen
– SOMSI-64 (medium)
-
Changed
Metadata Supplier muss auch ohne Sophora-Anbindung ausgeführt werden können
– SOMSI-44 (medium)
-
Changed
Rahmenwerk für kundenspezifische Mappings im Sophora Metadata Supplier schaffen
– SOMSI-17 (medium)
-
Changed
Projekt für Sophora Metadata Supplier anlegen
– SOMSI-16 (medium)
-
Improved
Versionsnummer im Logfile ausgeben
– SOMSI-116 (medium)
-
Improved
Feedback bei Fehlern während des Mappings geben
– SOMSI-63 (medium)
-
Improved
Zulieferung von Binärdaten in Image-Entität unterstützen
– SOMSI-49 (medium)
-
Improved
Feedback bei Fehlern während des Mappings oder beim Anlegen im ARD-Core ermöglichen
– SOMSI-41 (medium)
-
Improved
CompletionStage/Futures im ArdCoreConnector richtig nutzen
– SOMSI-40 (medium)
-
Improved
ARD-Core-Anteil aus Sophora Metadata Supplier in eigenes Git-Repo umziehen
– SOMSI-38 (medium)
-
Added
REST-Schnittstelle für die Anlieferung von Inhalten zur ARD-Mediathek schaffen
– SOMSI-97 (medium)
-
Added
Verwendungen persistieren
– SOMSI-96 (medium)
-
Added
Änderungen an verwendeten Dokumenten müssen Aktualisierung von Entitäten in der ARD-Core-API auslösen
– SOMSI-55 (medium)