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
📱 Guide des boutons WhatsApp ·
Cliquez pour afficher/masquer
▼
Expire bientôt
À envoyer avant la fin d'abonnement (idéalement 3 à 7 jours avant).
Le message rappelle la date d'expiration et invite le client à renouveler via le portail.
⚠️ Ne pas envoyer si l'abonnement est déjà expiré.
⚠️ Ne pas envoyer si l'abonnement est déjà expiré.
Renouvellement confirmé
À envoyer après avoir confirmé et activé le paiement du client.
Le message confirme le renouvellement avec la nouvelle date d'expiration.
⚠️ N'envoyer que si le paiement a bien été vérifié et traité.
⚠️ N'envoyer que si le paiement a bien été vérifié et traité.
Abonnement expiré
À envoyer quand l'abonnement est déjà expiré et que la connexion est coupée.
Le message informe le client et l'invite à se réabonner via le portail.
⚠️ Ne pas envoyer si le client est encore actif.
⚠️ Ne pas envoyer si le client est encore actif.
⚠️ Règle importante : chaque bouton correspond à une situation précise. Un mauvais envoi
(ex: envoyer "Expiré" à un client actif) peut créer une confusion et nuire à votre image.
Vérifiez toujours le statut du client dans la colonne Statut avant d'envoyer.
| ID | Nom | Forfait | Inscrit | Expire | Statut | Créé par | Actions |
|---|
Connexions actives
Sessions PPPoE en cours · Temps réel
EN DIRECT
📱 Guide des boutons WhatsApp ·
Cliquez pour afficher/masquer
▼
Expire bientôt
À envoyer avant la fin d'abonnement (idéalement 3 à 7 jours avant).
Le message rappelle la date d'expiration et invite le client à renouveler via le portail.
⚠️ Ne pas envoyer si l'abonnement est déjà expiré.
⚠️ Ne pas envoyer si l'abonnement est déjà expiré.
Renouvellement confirmé
À envoyer après avoir confirmé et activé le paiement du client.
Le message confirme le renouvellement avec la nouvelle date d'expiration.
⚠️ N'envoyer que si le paiement a bien été vérifié et traité.
⚠️ N'envoyer que si le paiement a bien été vérifié et traité.
Abonnement expiré
À envoyer quand l'abonnement est déjà expiré et que la connexion est coupée.
Le message informe le client et l'invite à se réabonner via le portail.
⚠️ Ne pas envoyer si le client est encore actif.
⚠️ Ne pas envoyer si le client est encore actif.
⚠️ Règle importante : chaque bouton correspond à une situation précise. Un mauvais envoi
(ex: envoyer "Expiré" à un client actif) peut créer une confusion et nuire à votre image.
Vérifiez toujours le statut du client dans la colonne Statut avant d'envoyer.
| 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
| # | Action | Protocol | Dst Port | Interface | Src Address | Comment | Status |
|---|---|---|---|---|---|---|---|
| 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… | |||||