Operator-logik verbessert

This commit is contained in:
Kaaninchen
2026-07-18 12:36:55 +02:00
parent 4911716d4f
commit fadeaf240d
4 changed files with 31 additions and 17 deletions
+22 -9
View File
@@ -1,22 +1,35 @@
db_slogans = ["Senk ju vor träwelling wis Deutsche Bahn.", "Bitte beachten Sie die umgekehrte Wagenreihung.", "Zurückbleiben bitte!", "Alle reden vom Wetter. Wir nicht.", "Die Bahn macht mobil.", "Grün abgefahren"]
db_allgemein = {
"logo": "https://marketingportal.extranet.deutschebahn.com/resource/blob/13602522/c53f806b9df966e144010b276af72dd2/Bild_09-data.png",
"color": 0xEC0016,
"slogan": db_slogans
}
db_bawü = {
"logo": "https://upload.wikimedia.org/wikipedia/commons/thumb/4/4f/Bwegt_Logo.svg/960px-Bwegt_Logo.svg.png",
"color": 0xFFBF34,
"slogan": ["Nett hier", "Aber waren Sie schon mal in Baden-Württemberg?", "Wir können alles. Außer Hochdeutsch.", "Ausgesprochen international"]
}
OPERATOR_ALIASES = {
"DB Regio AG Baden-Württemberg": db_bawü,
"DB Regio Stuttgart GmbH": db_bawü,
"DB Fernverkehr": db_allgemein
}
OPERATORS = {
# alles außer slogan ist ESSENZIELL für den Bot.
# Color ist Hex Color Code mit 0x am anfang.
"fallback": {
"unknown": True,
"logo": "https://upload.wikimedia.org/wikipedia/commons/2/20/Bahn_aus_Zusatzzeichen_1024-15_A.png",
"color": 0x000000
},
"DB": {
"unknown": False,
"logo": "https://marketingportal.extranet.deutschebahn.com/resource/blob/13602522/c53f806b9df966e144010b276af72dd2/Bild_09-data.png",
"color": 0xEC0016,
"slogan": db_slogans
},
"Ostdeutsche Eisenbahn GmbH": {
"unknown": False,
"logo": "https://www.odeg.de/fileadmin/user_upload/Unternehmensseite/presse/pressebilder/ODEG_Pressebilder_Logo-CMYK-JPG.jpg",
"color": 0x00745C
},
"Nederlandse Spoorwegen": {
"logo": "https://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/Logo_NS.svg/960px-Logo_NS.svg.png",
"color": 0X00337F
}
}
-3
View File
@@ -35,9 +35,6 @@ def build_info_embed() -> discord.Embed | None:
arrival = format_iso_timestamp(info["arrival"])
departure = format_timestamp(conn['departure'])
if current_operator.split()[0] == "DB":
operator_infos = operator_metadata("DB") # die haben auch 500 tochterkonzerne da blickt keiner durch
else:
operator_infos = operator_metadata(current_operator)
embed = discord.Embed(
+4 -3
View File
@@ -53,6 +53,7 @@ async def rename_vc(bot: discord.Bot, scheduled=False) -> bool:
print("-----------------------------------------")
logger(f"Umstieg: {train_name} von {current['station']}")
logger(f"Betreiber: {train_info['operators']}")
logger(f"Wenn der Name nicht geändert wird bin ich im Cooldown")
await channel.edit(name=f"{config['formatting']}{train_name}")
logger(f"Name geändert!")
@@ -61,9 +62,9 @@ async def rename_vc(bot: discord.Bot, scheduled=False) -> bool:
async def _schedule_next_umstieg(bot, arrival_iso):
try:
# arrival = datetime.fromisoformat(arrival_iso)
# wait_seconds = (arrival - datetime.now()).total_seconds()
wait_seconds = 30 # debug aktuell
arrival = datetime.fromisoformat(arrival_iso)
wait_seconds = (arrival - datetime.now()).total_seconds()
if wait_seconds > 0:
remaining = str(timedelta(seconds=wait_seconds))
+4 -1
View File
@@ -2,7 +2,7 @@ import requests
import random
from datetime import datetime
from src.config import config
from src.data.operators import OPERATORS
from src.data.operators import OPERATORS, OPERATOR_ALIASES
def random_connection():
while True:
@@ -63,6 +63,9 @@ def operator_metadata(operator):
if not operator:
return OPERATORS["fallback"]
if operator in OPERATOR_ALIASES:
return OPERATOR_ALIASES[operator]
return OPERATORS.get(operator, OPERATORS["fallback"])
def logger(msg):