import requests
from ITS.api import gather_cctv_list

from flask import Flask
from flask_restx import Api
from flask_cors import CORS
from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.triggers.interval import IntervalTrigger

API_ENDPOINT = "http://165.229.169.148:8080/EquipmentUrlChanger.json"

app = Flask(__name__)
print("ITS API Updater START")
CORS(app)
api = Api(app,
          version='0.1',
          title="monitoring",
          description="API Server",
          terms_url="/",
          contact="",
          )


def url_list_sender():
    df = gather_cctv_list(129.2, 129.3, 35.9, 36.07, 1, "its", 1)
    df = df.drop("roadsectionid", axis=1)
    df = df.drop("cctvresolution", axis=1)
    df = df.drop("filecreatetime", axis=1)
    payload = df.T.to_json(force_ascii=False)
    respond = requests.post(API_ENDPOINT, json=payload)
    print(respond)

url_list_sender()
scheduler = BackgroundScheduler()
scheduler.start()
scheduler.add_job(
    func=url_list_sender,
    trigger=IntervalTrigger(hours=10),
    id='weather_data_update',
    name='update weather time every 6 hours',
    replace_existing=True
)
