Some minor improvements
Better icons, more bots and clients recognized
This commit is contained in:
@@ -63,7 +63,7 @@ class admin_plugin_botmon extends AdminPlugin {
|
||||
</div>
|
||||
</details>
|
||||
<details id="botmon__today__webmetrics">
|
||||
<summary>Humans’ web metrics</summary>
|
||||
<summary>Humans overview</summary>
|
||||
<div class="botmon_webmetrics_grid">
|
||||
<dl id="botmon__today__wm_overview"></dl>
|
||||
<dl id="botmon__today__wm_clients"></dl>
|
||||
|
||||
@@ -230,7 +230,7 @@
|
||||
"n": "BitSightBot",
|
||||
"r": ["BitSightBot"],
|
||||
"rx": ["BitSightBot\\/(\\d+\\.\\d+)"],
|
||||
"url": "https://darkvisitors.com/agents/bitsightbot"
|
||||
"url": "https://datadome.co/bots/bitsightbot/"
|
||||
},
|
||||
{"id": "terracotta",
|
||||
"n": "TerraCotta Bot",
|
||||
@@ -248,7 +248,7 @@
|
||||
"n": "HaloBot", "geo": "FR",
|
||||
"r": ["HaloBot"],
|
||||
"rx": [" HaloBot\\/(\\d+)\\."],
|
||||
"url": "https://darkvisitors.com/agents/tiktokspider"
|
||||
"url": "https://www.haloscan.com/"
|
||||
},
|
||||
{"id": "wayback",
|
||||
"n": "Internet Archive",
|
||||
@@ -261,5 +261,11 @@
|
||||
"r": ["AliyunSecBot"],
|
||||
"rx": ["AliyunSecBot/Aliyun"],
|
||||
"url": "https://www.aqtronix.com/useragents/?Action=ShowAgentDetails&Name=AliyunSecBot"
|
||||
},
|
||||
{"id": "ibou",
|
||||
"n": "Ibou Bot",
|
||||
"r": ["IbouBot"],
|
||||
"rx": ["IbouBot\\/(\\d+\\.\\d+)"],
|
||||
"url": "https://ibou.io/iboubot.html"
|
||||
}
|
||||
]
|
||||
BIN
img/bots.png
BIN
img/bots.png
Binary file not shown.
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
@@ -1,7 +1,7 @@
|
||||
base botmon
|
||||
author Sascha Leib
|
||||
email ad@hominem.com
|
||||
date 2025-09-19
|
||||
date 2025-09-20
|
||||
name Bot Monitoring
|
||||
desc A tool for monitoring and analysing bot traffic to your wiki (under development)
|
||||
url https://www.dokuwiki.org/plugin:botmon
|
||||
|
||||
13
script.js
13
script.js
@@ -1567,7 +1567,6 @@ BotMon.live = {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// update the suspected bot IP ranges list:
|
||||
/*const botIps = document.getElementById('botmon__today__botips');
|
||||
if (botIps) {
|
||||
@@ -1749,6 +1748,7 @@ BotMon.live = {
|
||||
// change the id and title by number:
|
||||
let listTitle = '';
|
||||
let listId = '';
|
||||
let infolink = null;
|
||||
switch (i) {
|
||||
case 0:
|
||||
listTitle = "Registered users";
|
||||
@@ -1761,10 +1761,12 @@ BotMon.live = {
|
||||
case 2:
|
||||
listTitle = "Suspected bots";
|
||||
listId = 'suspectedBots';
|
||||
infolink = 'https://leib.be/sascha/projects/dokuwiki/botmon/info/suspected_bots';
|
||||
break;
|
||||
case 3:
|
||||
listTitle = "Known bots";
|
||||
listId = 'knownBots';
|
||||
infolink = 'https://leib.be/sascha/projects/dokuwiki/botmon/info/known_bots';
|
||||
break;
|
||||
default:
|
||||
console.warn('Unknown list number.');
|
||||
@@ -1776,7 +1778,14 @@ BotMon.live = {
|
||||
});
|
||||
const title = details.appendChild(makeElement('summary'));
|
||||
title.appendChild(makeElement('span', {'class': 'title'}, listTitle));
|
||||
title.appendChild(makeElement('span', {'class': 'counter'}));
|
||||
if (infolink) {
|
||||
title.appendChild(makeElement('a', {
|
||||
'class': 'info',
|
||||
'target': '_blank',
|
||||
'href': infolink,
|
||||
'title': "More information"
|
||||
}, "Info"));
|
||||
}
|
||||
details.addEventListener("toggle", this._onDetailsToggle);
|
||||
|
||||
parent.appendChild(details);
|
||||
|
||||
25
style.less
25
style.less
@@ -53,6 +53,7 @@
|
||||
&.bot_reddit::before { background-position-y: -200px }
|
||||
&.bot_wayback::before { background-position-y: -220px }
|
||||
&.bot_alibaba::before { background-position-y: -241px }
|
||||
&.bot_ibou::before { background-position-y: -260px }
|
||||
&.bot_other::before { background-image: url('img/more.svg') }
|
||||
|
||||
/* platform icons */
|
||||
@@ -485,6 +486,18 @@
|
||||
span.title {
|
||||
flex-grow: 1;
|
||||
}
|
||||
a.info {
|
||||
display: inline-block;
|
||||
width: 1.25em; height: 1.25em;
|
||||
overflow: hidden;
|
||||
border-radius: 50%;
|
||||
}
|
||||
a.info::before {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
width: 1.25em; height: 1.25em;
|
||||
background: transparent url('img/info.svg') center no-repeat
|
||||
}
|
||||
}
|
||||
}
|
||||
& > details > summary {
|
||||
@@ -591,8 +604,8 @@
|
||||
span[data-lang]::after {
|
||||
content: attr(data-lang);
|
||||
font-size: smaller;
|
||||
color: #555;
|
||||
border: #555 solid 1px;
|
||||
color: #666;
|
||||
border: #666 solid 1px;
|
||||
line-height: 1.25;
|
||||
border-radius: 2pt;
|
||||
padding: 0 1pt;
|
||||
@@ -746,6 +759,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
dl.visitor_details {
|
||||
dd.pages {
|
||||
ul li:nth-child(odd) {
|
||||
background-color: #333;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul.eval {
|
||||
li:nth-child(odd) {
|
||||
background-color: #333;
|
||||
|
||||
Reference in New Issue
Block a user