Skip to content
This repository has been archived by the owner on Apr 21, 2021. It is now read-only.
/ alpheidae Public archive

Spawnfest 2018 project by As Unique As Possible

Notifications You must be signed in to change notification settings

spawnfest/alpheidae

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alpheidae

CircleCI

A minimal mumble (voice chat) server written in Elixir.

Running in development

Make sure you have the following installed:

  • Elixir 1.7.4 (compiled with Erlang/OTP 21)
  • openssl
  • Mumble 1.2.19 or greater

Run the following to gereate a set of self signed keys and start the server.

$ mix deps.get
$ mix generate_keys
$ mix run --no-halt

Connect on port 5000.

Demonstration/Testing

  1. Get Mumble clients as above (for Ubuntu 16.04 or higher, get the 1.3 snaphots).
  2. Get the dependencies: $ mix deps.get
  3. Generate the server keys: $ mix generate_keys
  4. Start the server: $ mix run --no-halt
  5. In new terminals, start 2 new mumble instances: $ mumble -m
  6. Connect each instance to your server (default is localhost, port is 5000)
  7. Mute yourself in both instances (click the little microphone icon to make it red/disabled)
  8. Unmute yourself in one instance and talk
  9. You should hear yourself talking!
  10. Send a message in the chat room, watch it show up in the other instance.
  11. Right-click on one of the instances and send a private message, watch it show up in the other instance.
  12. In the instance, double-click on a channel name and your user will change channels. Observe this in other instance.

Configuring the Server

Edit config/dev.exs. The valid keys are:

Key Description
welcome_text Text sent to each user when they connect to the server
max_bandwith Max bandwith; used in audio calculation
channels List of each channel on the server
socket_options Ranch/SSL options

Todos / Future work

  • UDP support
  • Channel links
  • ACLs/ permission system
  • Client certificate authentication
  • Better channel configuration
  • Web interface/in-browser audio
  • Better deafening/muting support
  • Server viewer support

Useful Reading

About

Spawnfest 2018 project by As Unique As Possible

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages