We are pleased to share this community knowledge. As a community-created solution, Third Iron cannot provide technical support for your exact configuration. If you need further assistance, we recommend addressing queries to an sfx-discuss-l, or directly contact Ex Libris.
This step-by-step guide explains how to set up automated holdings uploads with your self-hosted SFX system. This guide was assembled with help from other institutions using this configuration, so please pay special attention to directory structure and adapt this to your own system configuration.
Overall, the process requires you to set up a profile using the SFX built-in tools to export a holdings file that is compatible with BrowZine. Next, you will set up a cron job which will trigger this export automatically, zip the file, and move it to a location on your server. Third Iron will then automatically retrieve this file and update your BrowZine account at regular intervals.
1. Within SFX, create a custom profile that you will reference from the command line interface. As seen in the screenshot below, first select "Advanced Export Profiles". Next, click on "Manage Profiles" and a dialog box will appear. Provided are the recommended settings :
Export Profile Name: BrowZine
Profile Description: Weekly Export
Select Output Format: TXT
Export Which Object Types: Serials
Export active portfolios with the following services: Check "getFullTxt" only
Export from *ALL* Targets
2. We'll need to automate both executing the above Export Profile and moving the resulting file into a place where Third Iron can retrieve it. Ex Libris already provides the tools to do the export, but we need to create a small script to automate compressing and moving the resulting file. Below is a sample kindly provided by an SFX administrator. In this case, the script is named "export_process.sh". Please note that "sfx-instance-name" is the sfx instance name in use, so please use the appropriate path for your system.
SFX uses this directory...
...as its scratch directory for temporary writing of files. Thus, this script serves to move the resulting file to the "export directory" which should be a public-facing URL that you can then give to Third Iron (or a URL for which Third Iron's IP is whitelisted). It also zips the file to make it smaller for downloading. As previously mentioned, your file paths will vary, so please adjust as appropriate.
EXPORT_DIR=/exlibris/sfx_ver/sfx4_1/sfx-instance-name/templates/img/browzine3. With this script now setup, the last step is to access the crontab file of your SFX server in order to schedule the automated export like what is seen below. Two lines that need to be added are shown below.
mv $SCRATCH_DIR/browzine.zip $SCRATCH_DIR/browzine.zip.last
zip browzine.zip browzine.txt
cp $SCRATCH_DIR/browzine.zip $EXPORT_DIR/browzine.zip
00 04 * * 01 /exlibris/sfx_ver/sfx4_1/sfx-instance-name/admin/kbtools/export.cron --mode=profile --profile=BrowZine --filename=browzine.txt 00 05 * * 01 /exlibris/sfx_ver/sfx4_1/sfx-instance-name/home/export_process.sh > /tmp/export_process.logThe first line references the export.cron tool that comes with SFX and is created by Ex Libris. When configured as shown, the export.cron script runs on a weekly schedule with the BrowZine profile we created in step 1, and names the file "browzine.txt". Please note again that the exact directory for this script may vary depending on your SFX version.
The second line then runs the script we created in step 2 shortly after the first script runs and also (optionally) logs the process as it occurs.
4. Once you have completed the steps below, please send us the URL we should be using to retrieve this zip file to firstname.lastname@example.org. If you place the zip file at a publicly-accessible URL, we can simply start processing it right away; if you want to lock down that URL by IP, we have a static IP address we can communicate to you that you can whitelist. To get our static IP to add to your whitelist, please contact email@example.com.