blob: fb7915622a097a780f061f156002c89593df4cdd [file] [log] [blame]
import flask
import json
from flask import Flask, render_template
from flask import request
from flask import jsonify
import requests
import threading
import time
app = flask.Flask(__name__)
app.config["DEBUG"] = True
def get_du_list_for_nssai(snssai):
if str(snssai) == '001-00110':
with open('du_list_001_00110.json') as du_list:
data = json.load(du_list)
else:
with open('du_list_001_010000.json') as du_list:
data = json.load(du_list)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
def get_du_cell_list_for_nssai(snssai):
if str(snssai) == '001-00110':
with open('du_cell_list_001_00110.json') as du_cell_list:
data = json.load(du_cell_list)
else:
with open('du_cell_list_001_010000.json') as du_cell_list:
data = json.load(du_cell_list)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
def get_slice_config_for_nssai(snssai):
if str(snssai) == '001-00110':
with open('slice_config_001_00110.json') as slice_config:
data = json.load(slice_config)
else:
with open('slice_config_001_010000.json') as slice_config:
data = json.load(slice_config)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
def get_profile_config_for_nssai(snssai):
if str(snssai) == '001-00110':
with open('profile_config_001_00110.json') as profile_config:
data = json.load(profile_config)
else:
with open('profile_config_001_010000.json') as profile_config:
data = json.load(profile_config)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
def get_subscriber_details_for_nssai(snssai):
if str(snssai) == '001-00110':
with open('subscriber-details_001_00110.json') as subscriber_details:
data = json.load(subscriber_details)
else:
with open('subscriber-details_001_010000.json') as subscriber_details:
data = json.load(subscriber_details)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
def get_pm_data_for_snssai(snssai):
if str(snssai) == 'SM.PrbUsedDl.01-06E442':
with open('pm_data_01_06E442.json') as pm_data:
data = json.load(pm_data)
else:
with open('pm_data_01_B989BD.json') as pm_data:
data = json.load(pm_data)
if not data:
return {"Error": "Unable to read file"}, 503
return data, None
@app.route("/api/sdnc-config-db/v4/du-list/<snssai>", methods=["GET"])
def get_du_list(snssai):
data, status = get_du_list_for_nssai(snssai)
if not status:
return jsonify(data)
return data, 503
@app.route("/api/sdnc-config-db/v4/du-cell-list/<snssai>", methods=["GET"])
def get_du_cell_list(snssai):
data, status = get_du_cell_list_for_nssai(snssai)
if not status:
return jsonify(data)
return data, 503
@app.route("/api/sdnc-config-db/v4/slice-config/<snssai>", methods=["GET"])
def get_slice_config(snssai):
data, status = get_slice_config_for_nssai(snssai)
if not status:
return jsonify(data)
return data, 503
@app.route("/api/sdnc-config-db/v4/profile-config/<snssai>", methods=["GET"])
def get_profile_config(snssai):
data, status = get_profile_config_for_nssai(snssai)
if not status:
return jsonify(data)
return data, 503
@app.route("/api/sdnc-config-db/v4/subscriber-details/<snssai>",
methods=["GET"])
def get_subscriber_details(snssai):
data, status = get_subscriber_details_for_nssai(snssai)
if not status:
return jsonify(data)
return data, 503
@app.route("/datalake/v1/exposure/pm_data",
methods=["POST"])
def get_pm_data():
request_data = request.get_json()
snssai = None
if request_data:
if 'snssai' in request_data:
snssai = request_data['snssai']
data, status = get_pm_data_for_snssai(snssai)
if not status:
return jsonify(data)
return data, 503
app.run(host='0.0.0.0')