PCI contains a COAR Notify implementation, comprising a Linked Data Notifications inbox, database storage of inbound and outbound notifications and IP-whitelist inbox acl.
The system handles incoming coar-notify:EndorsementAction requests
by creating a preprint recommendation workflow in PCI. Endorsement requests
are acknowledged with coar-notify:TentativeAccept or coar-notify:Reject
notifications to the sending party.
Upon completion of any PCI recommendation process, be it initiated via inbox
or pci user interface, the system sends coar-notify:Review/EndorsementAction
notifications to the inbox specified in the rel="ldp#inbox" Sign-Posting
header - if any - provided by the preprint-server on the document's URL.
The inbox at /coar_notify/inbox has IP-whitelist access-control. Allowed
client IPs can be configured via menu Admin > COAR whitelist - i.e. at
/admin/edit_config/coar_whitelist or directly in the pci config database.
The system can send copies of all outbound coar-notify:Review/EndorsementAction
notification to a set of coar listeners specified in the conf.
To enable COAR Notify, private/appconfig.ini should contain the following section:
[coar_notify]
enabled = TrueTo specify a set of COAR Notify listeners, add the following
in section [coar_notify]:
listeners = xxx, yyy,
xxx_id = <target.id for notifications sent to xxx>
xxx_inbox = <target.inbox for xxx>
yyy_id = https://yyy.org/
yyy_inbox = https://inbox.yyy.org/coar_notify/inboxnote: the trailing , in listeners is required, even for a single listener.
To check that the coar notify sub-system works:
- use POST on
/coar_notify/inboxto send inbound COAR notifications to PCI - validate a PCI recommendation and check the preprint-server's inbox for received endorsement and review notifications
- use HEAD on
/coar_notifyor/coar_notify/inboxto see the Sign-Posting"describedby"header, pointing to/coar_notify/system_description
Both outbound notifications (to the remote preprint-server inbox)
and inbound notifications (posted to coar_notify/inbox)
are stored in table t_coar_notifications in the pci database.
Admins can see the list of notifications at /coar_notify.
The system provides self-description at /coar_notify/system_description
and annouces it via a "describedby" Sign-Posting header on /coar_notify.
The COAR sub-system requires the following extra python libs:
- requests