Neil Gehrels Swift Observatory facility module for TOM Toolkit. This module uses the Swift TOO API for all its interactions with the Swift Observatory. When installed and configured, your TOM can query target visibility, submit TOO observation requests to Swift, and check TOO observation status.
In order to submit TOO requests to Swift, you must register with the Swift TOO system. Once you are registered and have logged in, you can get your shared secret, which you will use, along with your username, to make TOO requests. See the Configuration section below.
Install the module into your TOM environment:
pip install tom-swift
-
In your project
settings.py
, addtom_swift
to yourINSTALLED_APPS
setting:INSTALLED_APPS = [ ... 'tom_swift', ]
-
Add
tom_swift.swift.SwiftFacility
to theTOM_FACILITY_CLASSES
in your TOM'ssettings.py
:TOM_FACILITY_CLASSES = [ 'tom_observations.facilities.lco.LCOFacility', ... 'tom_swift.swift.SwiftFacility', ]
Include the following settings inside the FACILITIES
dictionary inside settings.py
:
FACILITIES = {
...
'SWIFT': {
'SWIFT_USERNAME': os.getenv('SWIFT_USERNAME', 'anonymous'),
'SWIFT_SHARED_SECRET': os.getenv('SWIFT_SHARED_SECRET', 'anonymous'),
},
}
If you followed the Prerequsites section above, then you have a Swift TOO username and shared secret.
(Your shared secret is not your Swift TOO account password). Set environment variables SWIFT_USERNAME
and SWIFT_SHARED_SECRET
to your Swift TOO username and shared secret, respectively. (Do not check them
into any software repository).
export SWIFT_USERNAME='<your Swift TOO usename>'
export SWIFT_SHARED_SECRET='<your Swift TOO shared secret>'
The settings.FACILITIES['Swift']
configuration dictionary
above will get the values from the environment variables that you set. Your TOM will then use them to interact
with the Swift TOO API.