Einzelfunktionen erstellt (def)

This commit is contained in:
hubobel 2025-12-25 14:15:36 +01:00
parent 255f34bf87
commit b68bf17e62
3 changed files with 120 additions and 85 deletions

View file

@ -7,17 +7,6 @@ import os
import sys
import random
USERNAME = "hubobel"
URL = "https://www.simbrief.com/api/xml.fetcher.php"
params = {
"username": USERNAME,
"json": 1, # JSON statt XML
}
Pfad = 'Universal_txts/Windows'
ordnerneu = Path(Pfad + '/neu/')
ordnerneu.mkdir(exist_ok=True)
def conf():
appname = os.path.basename(sys.argv[0])
appname = appname.replace(".py", ".conf")
@ -103,43 +92,102 @@ def ai(prompt):
def stimmung():
tone = (passw['Prompt']['tone'])
tone = random.choice(list(tone))
print(tone)
return tone
def WelcomePilot():
prompt_org = passw['Prompt']['CptPrompt']
info = {"Zielflughafen: " + dest.get("icao_code"), "Reisedauer:" + block,
"Entfernung: " + distance + "nm",
"Menge Sprit: " + fuel + "kg",
"Passagieranzahl" + pax,
"Flugzeugtyp:" + aircraft_name,
"Du freust dich auf den Flug und bedankst dich, das man sich für " + airline + " entschieden hat.",
"Dein Name:" + passw['Prompt']['CptName'],
"Startflughafen: " + origin.get("icao_code"),
"Du bist von deiner Art her:" + str(stimmung()),
"Wetter am Ziel" + metar_dest,
"Flugnummer" + general.get("flight_number"),
"Wetter am Start" + metar_origin}
for i in info:
prompt_org = prompt_org + i
antwort_AI = ai(prompt_org)
return antwort_AI
def METAR():
prompt_org = passw['Prompt']['PurserPrompt_METAR']
prompt2 = prompt_org + 'Die METAR lautet ' + metar_dest
antwort_AI = ai(prompt2)
return antwort_AI
def replaceFiles():
files = []
for datei in Path(Pfad).glob("*.txt"):
with open(datei, "r", encoding="utf-8") as f:
files.append(f"{datei.name}")
inhalt = f.read()
inhalt_neu = replacedynamic(inhalt)
dateineu = str(ordnerneu) + '/' + (f"{datei.name}")
with open(dateineu, 'w', encoding="utf-8") as e:
e.write(inhalt_neu)
return files
def Simbriefimport():
USERNAME = "hubobel"
URL = "https://www.simbrief.com/api/xml.fetcher.php"
params = {
"username": USERNAME,
"json": 1, # JSON statt XML
}
resp = requests.get(URL, params=params, timeout=15)
resp.raise_for_status()
data = resp.json()
general = data.get("general", {})
origin = data.get("origin", {})
origin_name = start_name(origin["icao_code"])
origin_icao = origin["icao_code"]
dest = data.get("destination", {})
dest_name = start_name(dest["icao_code"])
dest_icao = dest["icao_code"]
aircraft = data.get("aircraft", {})
time = data.get("times", {})
block = minuten_zu_zeit(int(time.get("sched_block")) / 60)
start_time = unix_to_datetime(int(time.get("sched_out")))
land_time = unix_to_datetime(int(time.get("sched_in")))
aircraft_icao = aircraft["icaocode"]
aircraft_name = aircr_name((aircraft_icao))
airline = airlinename(general.get("icao_airline"))
flightnumber = general.get("flight_number")
flightlevel = data['general']['initial_altitude']
fl = 'FL' + str(int(flightlevel) // 100)
distance = data['general']['route_distance']
fuel = data['fuel']['plan_ramp']
metar_origin = data['weather']['orig_metar']
metar_dest = data['weather']['dest_metar']
pax = data['weights']['pax_count']
payload = data['weights']['payload']
tow = data['weights']['est_tow']
zfw = data['weights']['est_zfw']
return (zfw, tow, payload, pax, metar_dest, metar_origin, fuel, distance, fl, flightlevel, flightnumber, airline,
aircraft_name, aircraft_icao, land_time, start_time, block, time, aircraft, dest_icao, dest_name, dest,
origin_icao, origin_name, origin, general)
Pfad = 'Universal_txts/Windows'
ordnerneu = Path(Pfad + '/neu/')
ordnerneu.mkdir(exist_ok=True)
passw = conf()
client = OpenAI(
api_key=passw['AI']['Token'])
resp = requests.get(URL, params=params, timeout=15)
resp.raise_for_status()
data = resp.json() # dict
print(data.keys())
print(data['weights'])
general = data.get("general", {})
origin = data.get("origin", {})
origin_name = start_name(origin["icao_code"])
origin_icao = origin["icao_code"]
dest = data.get("destination", {})
dest_name = start_name(dest["icao_code"])
dest_icao = dest["icao_code"]
aircraft = data.get("aircraft", {})
time = data.get("times", {})
block = minuten_zu_zeit(int(time.get("sched_block"))/60)
start_time = unix_to_datetime(int(time.get("sched_out")))
land_time = unix_to_datetime(int(time.get("sched_in")))
aircraft_icao = aircraft["icaocode"]
aircraft_name = aircr_name((aircraft_icao))
airline = airlinename(general.get("icao_airline"))
flightnumber = general.get("flight_number")
flightlevel = data['general']['initial_altitude']
fl = 'FL'+str(int(flightlevel)//100)
distance = data['general']['route_distance']
fuel = data['fuel']['plan_ramp']
metar_origin = data['weather']['orig_metar']
metar_dest = data['weather']['dest_metar']
pax = data['weights']['pax_count']
payload = data['weights']['payload']
tow = data['weights']['est_tow']
zfw = data['weights']['est_zfw']
# dict
#print(data.keys())
#print(data['weights'])
(zfw, tow, payload, pax, metar_dest, metar_origin, fuel, distance, fl, flightlevel, flightnumber, airline,
aircraft_name, aircraft_icao, land_time, start_time, block, time, aircraft, dest_icao, dest_name, dest, origin_icao,
origin_name, origin, general) = Simbriefimport()
print('')
print("Airline:", general.get("icao_airline"))
@ -164,35 +212,13 @@ print("Wetter:", dest["icao_code"], metar_dest)
for datei in Path(Pfad).glob("*.txt"):
with open(datei, "r", encoding="utf-8") as f:
inhalt = f.read()
inhalt_neu = replacedynamic(inhalt)
dateineu = str(ordnerneu) + '/' + (f"{datei.name}")
with open(dateineu,'w', encoding="utf-8") as e:
e.write(inhalt_neu)
prompt_org = passw['Prompt']['PurserPrompt']
prompt2 = prompt_org + 'Die METAR lautet ' + metar_dest
antwort_AI = ai(prompt2)
print(antwort_AI.choices[0].message.content)
print(replaceFiles())
prompt_org = passw['Prompt']['CptPrompt']
metarCabin = METAR()
print(metarCabin.choices[0].message.content)
info = {"Zielflughafen: " + dest.get("icao_code"), "Reisedauer:" + block,
"Entfernung: " + distance + "nm",
"Menge Sprit: " + fuel + "kg",
"Passagieranzahl" + pax,
"Flugzeugtyp:" + aircraft_name,
"Du freust dich auf den Flug und bedankst dich, das man sich für " + airline + " entschieden hat.",
"Dein Name:" + passw['Prompt']['CptName'],
"Startflughafen: " + origin.get("icao_code"),
"sei dabei " + str(stimmung()),
"Wetter am Ziel" + metar_dest,
"Flugnummer" + general.get("flight_number"),
"Wetter am Start" + metar_origin}
for i in info:
prompt_org = prompt_org + i
antwort_AI = ai(prompt_org)
print(antwort_AI.choices[0].message.content)
welcomePilot = WelcomePilot()
print(welcomePilot.choices[0].message.content)