Voice Relay server for BetterCrewlink.
Report Bug
·
Request Feature
This is the relay server for CrewLink, an Among Us proximity voice chat program. I am currently hosting a server at https://crewl.ink/
, but if you want a more reliable option I would suggest to deploy this repository yourself.
Optional environment variables:
PORT
: Specifies the port that the server runs on. Defaults to443
ifHTTPS
is enabled, and9736
if not.HOSTNAME
(REQUIRED): The hostname or IP of the server (a record without a proxy so if you have cloudflare make a extra dns record named for example direct.domain.com and disable the proxy for that record (this is for the turn server))NAME
: Specifies the server nameHTTPS
: Enables https. You must placeprivkey.pem
andfullchain.pem
in your CWD.SSLPATH
: Specifies an alternate path to SSL certificates.
To get up and running quickly, you can deploy to Heroku using the button below
This will deploy an instance of the crewlink-server. You can get the URL of your server by using the app name that you gave when you launched the app on heroku and appending .herokuapp.com
. You can also find the URL of your server by going to "Settings", scrolling down to "Domains". Using this URL, follow step 4 of the installation instructions to connect your client to your server instance.
Run the server with Docker by running the following command:
docker run -d -p 9736:9736 ohmyguus/bettercrewlink-server:latest
To change the external port the server uses, change the first instance of the port. For example, to use port 8123:
docker run -d -p 8123:9736 ohmyguus/bettercrewlink-server:latest
To build your own Docker image, do the following:
- Clone the repo
git clone https://github.com/OhMyGuus/BetterCrewLink-server.git
cd BetterCrewLink-server
- Run the Docker build command:
docker build -t ohmyguus/bettercrewlink-server:build .
This is an example of how to list things you need to use the software and how to install them.
- node.js
- yarn
npm install yarn -g
- Clone the repo
git clone https://github.com/OhMyGuus/crewlink-server.git
cd crewlink-server
- Install NPM packages
yarn install
- Compile and run the project
yarn start
- Copy your server URL into CrewLink settings. Make sure everyone in your lobby is using the same server.
By default CrewLink clients will attempt to establish connections directly to each other for sending voice and game
state data. As a fallback mechanism, CrewLink-server ships with an integrated TURN server in the event clients cannot
directly connect to each other. You may want to customize this behavior to, for example, exclusively use the TURN relay
to protect player IP addresses. To do so, head into the config
folder and rename peerConfig.example.yml
to
peerConfig.yml
and make the desired changes.
Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the GNU General Public License v3.0. See LICENSE
for more information.