#!/usr/bin/env python

import RXTools
import argparse

prog_desc="""\
Downloads almanac and ephemeris data from "src_rcvr" and sends it to to "dest_rcvr".

Example:
  ./send_startup_data.py 10.1.150.123:5018 10.1.150.124:5018
 will read data from 10.1.150.123 and send it to 10.1.150.124.
Note: the specified port (e.g., 5018) must not be "output only".
"""

parser = argparse.ArgumentParser(description=prog_desc,
                                 formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument('src_rcvr', help='source receiver + port, e.g., "10.1.150.123:5018"')
parser.add_argument('dest_rcvr', help='destination receiver + port, e.g., "10.1.150.124:5018"')
parser.add_argument('--no-time', help="don't send current PC time to dest_rcvr",action="store_true")

args = parser.parse_args()
send_time = True
if args.no_time:
    send_time = False

src_IP, src_port = args.src_rcvr.split(':')
dest_IP, dest_port = args.dest_rcvr.split(':')
src_port = int(src_port)
dest_port = int(dest_port)

print("Source: %s : %d" % (src_IP, src_port) )
print("Destination: %s : %d" % (dest_IP, dest_port) )

data = RXTools.getDColStartupData( src_IP, src_port )

# Note: could clear out data you don't want to send here.  For example:
# data['gps_eph'] = {}

RXTools.sendDColStartupData( dest_IP, dest_port, data, send_time=send_time )
