Index: sample_scripts/import_signal.py
===================================================================
--- sample_scripts/import_signal.py	(revision 94f7c240c9883d7114ef55526286464e10941814)
+++ sample_scripts/import_signal.py	(revision a574a936985dfb098140f7a8dc23cf30258b77fe)
@@ -3,5 +3,8 @@
 import sqlite3
 import argparse
+import numpy as np
+from datetime import datetime
 from pathlib import Path
+from pymongo import MongoClient
 from ammosreader.AmmosIFReader import AmmosIFReader
 from ammosreader.PPDWReader import PPDWReader
@@ -16,8 +19,13 @@
 args = parser.parse_args()
 
+source = args.source.upper()
 code = args.code.upper()
 signal_number = args.signal_number
 input_dir = Path(args.input_dir)
 sqlite3_file = Path(args.output_file)
+
+if not re.match('[A-Z0-9]{2}', source):
+    print("Source identifier", source, "invalid")
+    sys.exit()
 
 if not re.match('[A-Z][0-9]{3}[A-Z]', code):
@@ -49,13 +57,13 @@
 #    sys.exit(1)
 
-try:
-    connection = sqlite3.connect(str(sqlite3_file))
-    cursor = connection.cursor()
-except Exception:
-    print("Can not connect to database file", str(sqlite3_file))
-    # sys.exit(1)
+# try:
+#    connection = sqlite3.connect(str(sqlite3_file))
+#    cursor = connection.cursor()
+# except Exception:
+#    print("Can not connect to database file", str(sqlite3_file))
+     # sys.exit(1)
 
-ammos_if_reader = AmmosIFReader(str(iqdw_file))
-ammos_if_reader.read_all_frames_left()
+#ammos_if_reader = AmmosIFReader(str(iqdw_file))
+#ammos_if_reader.read_all_frames_left()
 # for each_frame in ammos_if_reader.container.global_frames:
 #    print(each_frame)
@@ -63,3 +71,20 @@
 ppdw_reader = PPDWReader(ppdw_file)
 ppdw_reader.read_all_frames_left()
-print(ppdw_reader.container)
+
+client = MongoClient('hackathon.kid.local', 27017)
+
+database = client['ELINT']
+ts = (ppdw_reader.container.start_time() - np.datetime64('1970-01-01T00:00:00')) / np.timedelta64(1, 's')
+time_tuple = datetime.utcfromtimestamp(ts).timetuple()
+julian_date_string = str(time_tuple.tm_year)[2:] + str(time_tuple.tm_yday).zfill(3)
+code_collection = database[code]
+year_collection = code_collection[str(time_tuple.tm_year)]
+source_collection = year_collection[source]
+
+
+for each in ppdw_reader.container.signals:
+    each_json = each.to_json()
+    each_json['SIGNALNUMBER'] = signal_number
+    each_json['JULIANDATE'] = julian_date_string
+    # each_json['SOURCEFILE'] = str(ppdw_file)
+    source_collection.insert_one(each_json)
Index: sample_scripts/iqdw_reader.py
===================================================================
--- sample_scripts/iqdw_reader.py	(revision 94f7c240c9883d7114ef55526286464e10941814)
+++ sample_scripts/iqdw_reader.py	(revision a574a936985dfb098140f7a8dc23cf30258b77fe)
@@ -18,2 +18,5 @@
     dat_file.read_all_frames_left()
     print(dat_file.container)
+
+    for each in dat_file.container.global_frames:
+        print(each)
