🔴 Internet down on the router — all clients are affected.

Vue d'ensemble

Données en direct depuis RouterOS

EN DIRECT

Revenus mensuels (FCFA)

Expirations urgentes

🔴 Network Issues Detected

The following active clients show no internet traffic (0 Mbps ↑↓):
    💡 This may indicate a router WAN outage, a failed PPPoE session, or a client device that is powered off.

    Gestion Clients

    PPP Secrets · RouterOS Live

    ID Nom Forfait Inscrit Expire Statut Créé par Actions

    Connexions actives

    Sessions PPPoE en cours · Temps réel

    EN DIRECT
    ID Nom IP assignée Uptime ↑ Upload Speed ↓ Download Speed Total ↑ Total ↓ MAC Caller

    Analyse Budgétaire

    Revenus calculés depuis RouterOS

    Revenus vs Dépenses (FCFA)

    Résumé financier

    Revenus par forfait

    Ajouter une dépense

    Payment History

    Auto-recorded on every renewal

    # Type Date Client ID Client Name Plan Amount (FCFA) New Expiry Note Recorded By

    Scripts RouterOS

    RouterOS 7.22.1 · PPPoE · REST API

    Script renouvellement RouterOS

    /system script
    add name="renouveler-client" source={
      :local cid $1
      :local sec [/ppp secret get [find name=$cid] comment]
      :local expStr [:pick $sec ([:find $sec "expire:"] + 7) 17]
      :local y [:tonum [:pick $expStr 0 4]]
      :local m [:tonum [:pick $expStr 5 7]]
      :local d [:tonum [:pick $expStr 8 10]]
      :set m ($m + 1)
      :if ($m > 12) do={:set m 1; :set y ($y + 1)}
      :local nm [:tostr $y]
      :if ($m < 10) do={:set nm ($nm . "-0" . $m)} else={:set nm ($nm . "-" . $m)}
      :if ($d < 10) do={:set nm ($nm . "-0" . $d)} else={:set nm ($nm . "-" . $d)}
      :local ins [:pick $sec 0 ([:find $sec "expire:"])]
      /ppp secret set [find name=$cid] comment=($ins . "expire:" . $nm) disabled=no
      /ppp active remove [find name=$cid]
      :log info ("IDS: Renewed " . $cid . " -> " . $nm)
    }

    Script pause/reprise RouterOS

    /system script
    add name="pause-client" source={
      :local cid $1
      /ppp secret set [find name=$cid] disabled=yes
      /ppp active remove [find name=$cid]
      :log info ("IDS: Paused " . $cid)
    }
    add name="resume-client" source={
      :local cid $1
      /ppp secret set [find name=$cid] disabled=no
      :log info ("IDS: Resumed " . $cid)
    }

    Script scheduler expiration Automatique

    # Exécuter ce scheduler une fois pour l'installer
    /system scheduler
    add name="check-expirations" interval=1d \
      start-time=00:05:00 on-event={
      :local today [/system clock get date]
      :local todayYear [:pick $today 0 4]
      :local todayMon [:pick $today 5 7]
      :local todayDay [:pick $today 8 10]
      :local todayNum ([:tonum $todayYear] * 10000 + [:tonum $todayMon] * 100 + [:tonum $todayDay])
      :foreach s in=[/ppp secret find disabled=no] do={
        :local cmt [/ppp secret get $s comment]
        :local epos [:find $cmt "expire:"]
        :if ($epos >= 0) do={
          :local expDate [:pick $cmt ($epos+7) ($epos+17)]
          :local expYear [:pick $expDate 0 4]
          :local expMon [:pick $expDate 5 7]
          :local expDay [:pick $expDate 8 10]
          :local expNum ([:tonum $expYear] * 10000 + [:tonum $expMon] * 100 + [:tonum $expDay])
          :if ($expNum < $todayNum) do={
            /ppp secret set $s disabled=yes
            /ppp active remove [find name=[/ppp secret get $s name]]
            :log warning ("IDS: Auto-disabled expired: " . [/ppp secret get $s name])
          }
        }
      }
    }

    Scripts par client (auto-générés) Live

    Chargement...

    Router Access

    Firewall · Services · Traffic · Terminal

    Input chain firewall rules

    #ActionProtocolDst PortInterfaceSrc AddressCommentStatus
    Click Load to fetch rules

    Add firewall accept rule

    Staff Accounts

    Create technician, secretary, or custom sub-accounts and control what each can access

    Username Role Access Created By Created
    Loading…

    My Installations

    Clients assigned to you for installation — fill in the report once the install is done

    Client Phone Address Plan Assigned Status
    Loading…

    Installation Reports

    Reports submitted by technicians after completing a client installation

    Client Technician Assigned Submitted Status
    Loading…

    🛠 Installation Report

    📱 Numéro WhatsApp du client
    Ce client n'a pas de numéro enregistré.
    Entrez le numéro sans indicatif (ex: 672000000)

    Détail client

    ?

    —

    —

    ℹ Info
    ✎ Modifier
    🌐 Sites
    🌐 Site blocking works at the domain level (matches the site name in the connection handshake) — it can block youtube.com, facebook.com, etc., but cannot see or block a specific video/page within an allowed site.

    ⚡ Blocking a domain also disables UDP/443 (QUIC) for that client, since many apps (especially Google's) use QUIC to bypass standard TLS blocking. This is applied automatically for any client with at least one blocked site, and removed automatically once they have none.

    💡 For sites that serve content from a separate domain (e.g. YouTube videos load from googlevideo.com, not youtube.com), block that domain too for a complete block.
    Loading…

    Nouveau client PPP

    Script de renouvellement

    ou utilisé automatiquement via API ✓

    🎁 Jours de compensation

    0/80

    Ceci prolonge la date d'expiration du client sans compter comme un renouvellement payant. Le client verra ce bonus sur son portail ce mois-ci.

    👁 Activité

    New Staff Account

    Edit Staff Account —

    🔑 Change My Password

    🔒 Your password is stored as an irreversible hash — nobody, including a webmanager, can look it up. If you forget it, a webmanager with staff-management access can reset it for you from the Staff Accounts page (that sets a new password, it doesn't reveal your old one).

    Confirmer

    Cette action est irréversible.

    Connexion à RouterOS...
    ✓