Skip to content

Latest commit

 

History

History
50 lines (43 loc) · 2.26 KB

diagram.md

File metadata and controls

50 lines (43 loc) · 2.26 KB
    flowchart TD
Start[Inicio] --> Main["main()"]
Main --> LoadServers["load_servers()"]
LoadServers --> HasServers{¿Servidores guardados?}

    HasServers -->|No| NoServers["print 'No se encontraron servidores guardados. Añade uno nuevo para comenzar.'"]
    NoServers --> AddNewServer["add_new_server(servers)"]
    AddNewServer --> End[Fin]

    HasServers -->|Sí| ShowMenu["Mostrar menú con opciones"]
    ShowMenu --> Action{Acción seleccionada}

    Action -->|Comprobar todos los servidores| CheckAll["check_all_servers(servers)"]
    Action -->|Comprobar servidores específicos| CheckSelected["check_selected_servers(servers)"]
    Action -->|Añadir un nuevo servidor| AddServer["add_new_server(servers)"]

    %% Flujo para 'Comprobar todos los servidores'
    CheckAll --> ForEachServer["Para cada servidor en servers"]
    ForEachServer --> CheckStatus["check_status(url)"]
    CheckStatus --> ShowStatus["show_status(alias, url, status)"]
    ShowStatus --> IsLastServer{¿Último servidor?}
    IsLastServer -->|No| ForEachServer
    IsLastServer -->|Sí| End

    %% Flujo para 'Comprobar servidores específicos'
    CheckSelected --> SelectServers["Seleccionar servidores"]
    SelectServers --> ForEachSelected["Para cada servidor seleccionado"]
    ForEachSelected --> CheckStatusSelected["check_status(url)"]
    CheckStatusSelected --> ShowStatusSelected["show_status(alias, url, status)"]
    ShowStatusSelected --> IsLastSelected{¿Último seleccionado?}
    IsLastSelected -->|No| ForEachSelected
    IsLastSelected -->|Sí| End

    %% Flujo para 'Añadir un nuevo servidor'
    AddServer --> GetURL["Obtener URL del nuevo servidor"]
    GetURL --> GetAlias["Obtener alias del servidor"]
    GetAlias --> PrintChecking["print 'Realizando comprobación...'"]
    PrintChecking --> CheckStatusNew["check_status(url)"]
    CheckStatusNew --> ShowStatusNew["show_status(alias, url, status)"]

    ShowStatusNew --> IsUp{¿Servidor responde?}
    IsUp -->|Sí| SaveServer["Guardar servidor en servers"]
    SaveServer --> SaveServersFile["save_servers(servers)"]
    SaveServersFile --> PrintSuccess["print 'Servidor añadido exitosamente.'"]
    PrintSuccess --> End
    IsUp -->|No| AskSave{¿Guardar de todas formas?}
    AskSave -->|Sí| SaveServer
    AskSave -->|No| End
Loading