Hi,
A few days ago i have started implementation of DOI for our institutional journals, and because we have a lot of journals and even more articles I thought that it would be a good idea to use Crossref automatic registration plugin. I have followed provided steps on wiki and all articles and journals are formatted correctly, but every time I try to submit issue of journal or article (we have 5-7 articles per issue) I get following notification:
Notification
Registration was not successful! The DOI registration server returned an error: 'No response from server.'.
Our server is behind institutional proxy and OJS is configured to use it. We have updated to last version of OJS 5 days ago.
I have contacted our administrators and they said that proxy isn’t blocking connections to addresses, I also tried to test curl connection to them from server cli and it is working with no errors.
Yes, I would concur. The Crossref plugin looks to be directly connecting via curl rather than using the HTTPFileWrapper or HTTPSFileWrapper, which is the only place the proxy settings are currently used.
To use the FileWrappers in Crossref would require implementing a “create” and “update” mode in the open() method, for PUT and POST requests, respectively.
I have changed code to define proxy and port for curl, but I think that this is just work around for this problem, and that this should be done via config file.
I have posted this on Git
Yes it was our proxy configuration. We also had to set http_host and http_port provided by our server administrator in proxy configuration in the config file along side updating registerDoi function based on the mentioned patch. We now can register articles with Crossref through ojs.
We have an installation of 2.4.6 and we have enabled automatic DOI registration to CrossRef in Journal Manager > Import/Export Data > CrossRef Export/Registration Plugin > Settings.
However when a new issue is published, DOI is not automatically registered. We have noticed this a few times and waited for a few days after the publication. When I register the unregistered articles manually with “register” button, they will register successfully though.
Are you using cron to run your scheduled tasks, or are you using the acron plugin? I wonder if the acron plugin knows how to include the crossref automatic registration.
We have our cronjob set to run: /tools/runScheduledTasks.php. Other scheduled tasks do run fine at the time scheduled though. I didn’t know registering to CrossRef is a scheduledtask, because I was expecting it to happen only straight after publishing, not based on a scheduled timing.
The cronjob for tools/runScheduledTasks.php will (bizarrely in my mind) not pick up other scheduled tasks (like CrossRef registration) automatically. You will need to add a new cronjob for: php tools/runScheduledTasks plugins/importexport/crossref/scheduledTasks.xml
This cronjob will periodically run the crossref export.
Thanks for your reply.
I had set below cron job to be run every night:
php tools/runScheduledTasks.php plugins/importexport/crossref/scheduledTasks.xml
But it didn’t register any items of the newly published issue.
Is it supposed to export only or register? Where does it export?
We have another cron job php tools/runScheduledTasks.php to be run 5 minutes earlier which works fine.
The intent of this task is to automatically register any published articles with assigned DOIs which have not yet been registered.
It depends on the following:
DOIs being assigned to published articles. This is configured in the DOI Public Identifier plugin. This can happen either by an automatic DOI pattern, or by requiring the editor to manually assign a DOI for each article.
The CrossRef plugin configured with account information. In the Import/Export CrossRef plugin, there is a settings page requiring a username and password. If this is set, you should be able to not only export from the CrossRef plugin, but also directly register (or update) new (or existing) DOI registrations. If you only see the Export option, and not the Register option, check your CrossRef plugin settings.
One or more published articles with outstanding DOI registrations. If the above criteria are met, unless all your articles are already marked as registered, the plugin will list a set of unregistered articles for you.
The CrossRef plugin configured to automatically register new articles. In the CrossRef plugin configuration, under the account section, is a checkbox which will enable automatic registration.
Thanks @ctgraham. I checked all of the points yu mentioned were met. The only thing was in DOIPubIdPlugin settings, articles and issues were selected as publishing objects to be registered. I unselected issues. We are going to publish a new issue in a couple of hours. I’ll see how it goes.