Skip to content

feat(ocm): support new format of notfication payload - #66049

Draft
cristianscheid wants to merge 1 commit into
masterfrom
feat/noid/ocm-new-notifications
Draft

cristianscheid wants to merge 1 commit into
masterfrom
feat/noid/ocm-new-notifications

Conversation

@cristianscheid

@cristianscheid cristianscheid commented Oct 30, 2026 •

Copy link
Copy Markdown
Member
  • Resolves: #

Summary

  • support new notification payload format on /ocm/notifications
  • since OCM 1.5, notification payloads include a senderDomain field:
    https://github.com/cs3org/OCM-API/blob/v1.5.0/IETF-OCM.md#notifications
  • RequestHandlerController::receiveNotification() checks whether the payload has a senderDomain field:
    • with senderDomain field: handles it with the new format
    • without senderDomain field: handled as before
  • for the new format, request must be signed by senderDomain (checked with IOCMDiscoveryService::getIncomingSignedRequestFromDomain())
  • instead of routing to a cloud federation provider (e.g. CloudFederationProviderFiles), an OCMNotificationReceivedEvent is dispatched, which apps can listen to and act on
  • listeners can set response that is sent back to the sender with OCMNotificationReceivedEvent::setResult()
  • the event carries a ISenderDomainAwareCloudFederationNotification, which extends ICloudFederationNotification with senderDomain, shareType
  • to let other servers know this format is supported, new capability is advertised in discovery: notification-sender-domain

TODO

  • this is a draft to discuss whether this is a good approach
  • if we go with it, refine code, add tests and do manual testing

Checklist

AI (if applicable)

  • The content of this PR was partly or fully generated using AI

Signed-off-by: Cristian Scheid <cristianscheid@gmail.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant