[Opensim-users] Virtual World Voice
Jeff Kelley
opensim at pescadoo.net
Thu Jun 10 09:44:29 UTC 2021
Quick, dirty and minimally integrated Mumble-based solution
(in case they pull the plug before we have a full-fledged one).
- Install a Mumble server on your server
On Linux, this is simple as apt install mumble-server
Create channels ('rooms') for each of your regions
- Ask your visitors to install a Mumble client
https://www.mumble.info/downloads/
Tell them it's better than signing to GAFAM jails
On Linux and the Macintosh, configuring the Mumble client is
usually straightforward.
On Windows, I advise to disable any noise canceling, voice gate and
other 'enhancements'
at the host driver. Let the mike flow raw to Mumble, and Mumble
handle the vox switch.
- Have a web server somewhere : my.web.server
- On your regions, place a script inside a board, or a greeter
touch_start(integer n)
{
string url = "http://my.web.server/mumble.php"
+ "?region=" +llGetRegionName()
+ "&avatar=" +llDetectedName(0);
llLoadURL (llDetectedKey(0), "Open the voice page ?", url);
}
- Here is a crude start for the script mumble.php :
<?php
$region = $_REQUEST ['region'];
$avatar = $_REQUEST ['avatar'];
$voip_server = 'my.voip.server';
// Strip hypergrid part
if (strpos($avatar, "@") !== false)
$avatar = substr($avatar, 0, strpos($avatar, "@")-1);
// Substitute spaces with dots
$avatar = str_replace (" ", ".", $avatar);
$region = str_replace (" ", ".", $region);
$mumblelink = "mumble://$avatar@$voip_server/$region";
echo "<a href=$mumblelink>$mumblelink</a>";
?>
The web page looks like
mumble://Jeff.Kelley@my.voip.server/Welcome
When the user clicks such a link for the first time,
a window opens asking to choose an application.
Choose Mumble. Check Remember my choice.
The mumble client is launched and the user is logged
in the channel Welcome under the name Jeff.Kelley.
Decorate, enhance. Add mumble acl's as needed.
If you want to know who is on a region at a given
time, remember the concierge can call a php script.
The mumble server supports zeroc-ice to interact with the server.
-- Jeff
More information about the Opensim-users
mailing list