-
Senior Member
registered user
Wanted: Bash program idea, or application suggestion
.
I would like to create a small bash program that would
monitor my keystroke activity and if no keystrokes are noted
within a fixed small time, then any currently active
internet connection would be disconnected.
I currently use a Knoppix LiveUSB and wifi via a broadband router
with network connections handled by NetworkManager.
If there's 'an app for this' already, then that might also serve.
Thanks in advance.
-
Senior Member
registered user
Hi utu, I do not have a bash script for you, but I have got some suggestions. First of all, you can disable and enable the network from the commandline by using the commands
Code:
nmcli networking off
and
Code:
nmcli networking on
I think the task is similar to a screensaver because in both cases user inactivity starts a process. I read about a user who wanted to download torrents while the screensaver is active. His or her solution was to ask dbus whether the screensaver was active. He or she used the Gnomedesktop environment. Later I read the solution has to be modified if KDE is used instead of Gnome. Since xscreensaver does not seem to use dbus I think you should try to find out if power management provides an interface to run one shell script on times of user inactivity and another if the user is active again. The absence of keyboard events should start a bash script, but what about mouse events? How long is a 'small time'? Do you intend to reconnect to the network if there is any keystroke activity again?
-
Senior Member
registered user
.
Thanks for your responses, klaus2008.
nmcli is probably part of the solution; I'll study up on that.
I should have indicated keyboard and/or mouse events as an indication or
lack of user presence or attention to internet events.
I think 'a small time' might be some random number between 15 and 30 minutes
as a starting point.
If I know I'm not going to use Knoppix for a while, I manually disconnect.
If I'm interrupted, I might forget to do this; I'd like Linux to disconnect
automatically, if need be. Solution need not consider re-connect, since that's
easy enough to do manually with the NM panel applet.
You can't underestimate my programming prowess. At most I may be able to
figure out a line of bash script. I wouldn't have a prayer with C/C+/or C++
source, even if I had it to look at.
-
Senior Member
registered user
.
Two other building blocks seem to be
Code:
xscreensaver-command -watch
and the following perl program, which tracks the output of the -watch command
and reacts accordingly:
Code:
#!/usr/bin/perl
my $blanked = 0;
open (IN, "xscreensaver-command -watch |");
while (<IN>) {
if (m/^(BLANK|LOCK)/) {
if (!$blanked) {
# **** action to take when screensaver starts ****
$blanked = 1;
}
} elsif (m/^UNBLANK/) {
# **** action (if any) to take when screensaver is reset ****
$blanked = 0;
}
}
I don't think perl should be necessary, and there is probably a simpler
bash equivalent that would suffice.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
![Dell PowerEdge R730 2x E5-2699V3 2.3Ghz 36 Core 128GB RAM H730 X520-I350 2x750W picture](/store/img/g/W38AAOSwtcVjVC0Z/s-l225/Dell-PowerEdge-R730-2x-E5-2699V3-2-3Ghz-36-Core-12.jpg)
Dell PowerEdge R730 2x E5-2699V3 2.3Ghz 36 Core 128GB RAM H730 X520-I350 2x750W
$329.99
![Dell PowerEdge R630 Server 2x E5-2680 V4 = 28 Cores S130 32GB RAM NEW 480GB SSD picture](/store/img/g/vx0AAOSwvwFlExVY/s-l225/Dell-PowerEdge-R630-Server-2x-E5-2680-V4-28-Cores-.jpg)
Dell PowerEdge R630 Server 2x E5-2680 V4 = 28 Cores S130 32GB RAM NEW 480GB SSD
$197.99
![Dell Poweredge R630 2x Xeon E5-2680 v4 2.4ghz 28-Cores / 128gb / H330 / 2x 1TB picture](/store/img/g/7XkAAOSwnhFkFNvU/s-l225/Dell-Poweredge-R630-2x-Xeon-E5-2680-v4-2-4ghz-28-C.jpg)
Dell Poweredge R630 2x Xeon E5-2680 v4 2.4ghz 28-Cores / 128gb / H330 / 2x 1TB
$334.99
![Dell Poweredge R730xd LFF 14-Bay 2U Server | Choose Your CPU & RAM Config picture](/store/img/g/CdkAAOSwY0BmYMoF/s-l225/Dell-Poweredge-R730xd-LFF-14-Bay-2U-Server-Choose-.jpg)
Dell Poweredge R730xd LFF 14-Bay 2U Server | Choose Your CPU & RAM Config
$489.99
![Dell PowerEdge R630 Server 2x E5-2640v3 2.60Ghz 16-Core 64GB H330 picture](/store/img/g/ZD0AAOSwm41mOZYw/s-l225/Dell-PowerEdge-R630-Server-2x-E5-2640v3-2-60Ghz-16.jpg)
Dell PowerEdge R630 Server 2x E5-2640v3 2.60Ghz 16-Core 64GB H330
$182.65
![Dell Poweredge R630 Server 2x E5-2620 V4 =16 Cores | S130 | 32GB RAM | 2x trays picture](/store/img/g/GAcAAOSw9Q1mGSZW/s-l225/Dell-Poweredge-R630-Server-2x-E5-2620-V4-16-Cores-.jpg)
Dell Poweredge R630 Server 2x E5-2620 V4 =16 Cores | S130 | 32GB RAM | 2x trays
$159.99
![1U Supermicro Server 10 Bay 2x Intel Xeon 3.3Ghz 8C 128GB RAM 240GB SSD 2x 10GBE picture](/store/img/g/7KoAAOSwephiKTf4/s-l225/1U-Supermicro-Server-10-Bay-2x-Intel-Xeon-3-3Ghz-8.jpg)
1U Supermicro Server 10 Bay 2x Intel Xeon 3.3Ghz 8C 128GB RAM 240GB SSD 2x 10GBE
$259.00
![Dell PowerEdge R720xd 26HDD 300gb 2.5-inch E5-2697 X 2CPU 384RAM 7.2 Tb HDD  picture](/store/img/g/yAwAAOSwdyNlgQ8d/s-l225/Dell-PowerEdge-R720xd-26HDD-300gb-2-5-inch-E5-2697.jpg)
Dell PowerEdge R720xd 26HDD 300gb 2.5-inch E5-2697 X 2CPU 384RAM 7.2 Tb HDD 
$180.00
![Dell PowerEdge T620 8-Bay LFF Xeon E5-2660 0 2.20GHz 48GB NO HDD S110 Server picture](/store/img/g/ZfUAAOSw~TFmclF7/s-l225/Dell-PowerEdge-T620-8-Bay-LFF-Xeon-E5-2660-0-2-20G.jpg)
Dell PowerEdge T620 8-Bay LFF Xeon E5-2660 0 2.20GHz 48GB NO HDD S110 Server
$174.99
![1U Server ( 4x VM's ) Hosting VPS Short Depth 20](/store/img/g/mY0AAOSwFDNhGq7d/s-l225/1U-Server-4x-VM-s-Hosting-VPS-Short-Depth-20-1U-Xe.jpg)
1U Server ( 4x VM's ) Hosting VPS Short Depth 20" 1U Xeon 3.5Ghz 16GB X10SLM-F
$149.00