Updated ventriloctrl with instructions thanks to calebgray: http://www.calebgray.com/uploads/ven...loctrl-0.5.zip ~08/23/2008
Originally Posted by bluewagon
*** The following is ancient and outdated from over a year ago and likely no longer works I'm sorry but I won't be answering private messages about my walkthrough. *** ~06/21/2008
--Incase anyone else stumbles upon this post,
--You can download ventriloctrl here: http://np1.pp.fi/ventriloctrl/ventriloctrl-0.3.tar.gz
--I've also mirrored it here just incase the creator's site is down: http://hikaricore.googlepages.com/ve...trl-0.3.tar.gz
You need to compile ventriloctrl to run it.
Direct from the README file:
So you will first need to install build-essential if you never have:
Ventriloctrl is program to send keypresses to Ventrilo client even
if it is not on top.
Event Device included in kernel
Xorg(Xfree?) development libraries
Reading rights for event device
Then the development libraries for Xorg (this should be enough):
sudo apt-get install build-essential
sudo apt-get install xorg-dev
From the directory you extracted ventrilocontrol into.
it should output something like this:
If get an error, let me know I'll try and figure out what dev files I missed.
[hikaricore@devistate:~/ventriloctrl-0.3 (.6 Mb)]$ make
gcc -Wall -O3 -o ventriloctrl ventriloctrl.c -lX11
gcc -Wall -O3 -o findkey findkey.c
Now for configuring it, this part is fun.
You will need to find out what device your system uses for input. For example on my system it's:
Yours may differ. So you need to run
Replacing the # with numbers ranging from 0 to 6, example:
sudo ./findkey /dev/input/event#
Upon running this command press some keys on your keyboard, if you don't see any output in the terminal hit Ctrl+C to exit the program and try the next number. Like I said it varries.
sudo ./findkey /dev/input/event0
Once you find the correct /dev/input/event# press the key you want to use for vent, remember the number it outputs in the terminal, then you'll need to edit the runctrl.sh file.
ok I guess I was a little vague with this part, so I'm giving you an example of what it should look like:
[hikaricore@devistate:!]$ sudo ./findkey /dev/input/event2
key 28 state 0
key 97 state 1
key 97 state 0
key 54 state 1
key 54 state 0
Above is the output of findkey, showing: Enterkey (up), Right Ctrl (down,up) Right Shift (down,up)
These key numbers will vary from keyboard to keyboard.
But for example if I wanted to use my right Ctrl key for ventriloctrl I would use the number 54 in the following step of the setup. If you run findkey and only see the text you're typing out on the keyboard, you need to move on to the next device. ^_^
Which will look something like this:
Replace the input_key with the number from the key you chose for your vent key, then replace (if needed) the /dev/input/event# with the one you found to work on your system.
# Config, see README for instructions
# Don't touch
./ventriloctrl $EVENT_DEVICE $INPUT_KEY
Hit Ctrl+o to save. Then Ctrl+x to close pico.
Now for the tricky part.
Ventrilo Control requires the ability to read and write to the device you've chosen.
There are a number of ways to do this but I'll tell you the one that will work and stay working.
We're going to write a udev rule so that the group ventrilo has read/write access to your event device.
Replace YOURUSERNAME with the username you plan to be using on Ubuntu at the time of running vent.
sudo groupadd ventrilo
sudo gpasswd -a YOURUSERNAME ventrilo
Now to write the udev rule.
This may bring up a new blank file, this is pretty much expected in newer versions of Ubuntu.
sudo pico /etc/udev/rules.d/10-local.rules
But no worries, time to move on.
In this file, type or paste the following:
(Replacing the ??? with the number of the /dev/input/event# device you found to work, for example if it was /dev/input/event2, replace ??? with the number 2.)
Hit Ctrl+o to save and Ctrl+x to exit pico.
KERNEL=="event[???]", NAME="input/%k", GROUP="ventrilo", MODE="0660"
One last step, we need to reload udev.
Now you should be able to run the file in your ventriloctrl directory called runctrl.sh.
sudo /etc/init.d/udev restart
You will need to have vent running before you start this script.
If all goes well you should be able to go into the vent settings and set your key, with the key you chose to use. It will probably show as the A key when you hit that key, but this is the default of the ventriloctrl program and I'm not even going to begin telling you about modifying that. In most cases this should work perfectly.
Let me know if you have any problems.
Sources used for figuring out this damn mess:
random thoughts : by Imago
Writing udev rules
Incase anyone needs to further understand the udev segment.