Skip to content
/ jim Public
forked from p-fruck/jim

JIM - The Jitsi Integrated Musicbot is an open source music bot for jitsi, the free video conferencing platform. Together with him, you can get your party started 🎉

License

Notifications You must be signed in to change notification settings

nedimAT/jim

 
 

Repository files navigation

Jim is dead, long live Jim

TL;DR: Jim is discontinued and his successor can be found here

If you are interested in the how and why, check out this issue



JIM
Hi, I'm JIM!

Built with ❤️ and 🍺 by Pius, Tjark, Philipp and contributors

A small music bot for your meeting in Jitsi.

🔒 Monitored by SonarQube

Key FeaturesCommandsHow to deployLicense

🤖 Who is JIM?

Hi, I am JIM! Your Jitsi Integrated Musicbot.

🎉 Key Features

You would like to know what my key features are? - I will assist you bringing good music to your Jitsi Meet party!

🖥️ Commands

Command Description
!add <url|searchTerm> Add track or pick the first result from search term to queue
!clear Clear the queue
!help Display the help menu
!joke Try to make you laugh 😆
!list Show tracks in queue
!pause Pause the current track
!ping Emit a life signal
!play <url|searchTerm> Play track or first result from search term now! Resume if no parameter is provided
!skip Skip current track and play next one
!track <value> If no value is provided, get information about the current track. Use e.g. ++/--- or +40 / -120 to fast forward or rewind
!vol <value> If no value is provided, retrieve the current volume level. Use a number from 0 to 100 or a variable amount of + or - to adjust the volume

🚀 How to deploy

You can simply deploy JIM as a container using

docker run --rm -d --init --cap-add=SYS_ADMIN --name=jim -e ROOM_NAME=YourJitsiRoom ghcr.io/p-fruck/jim/jim

This also works with podman. You can even mount a .env file to store your environment variables by adding -v /path/to/.env:.env to the docker command.

Alternatively, you can start the bot without any sort of container-technology, using npm ci && npm run start.

Again, you have to create a .env file containing your environment variables. A list off all available variables can be found below, but only ROOM_NAME is required (=❗):

Variable Default Description
BOT_AVATAR_URL Logo of JIM A link to a publicly accessible profile picture for JIM
BOT_HEADLESS true Whether or not the bot should be launched in headless mode
BOT_NAME DJ JIM Defines the display name of your bot
JITSI_DOMAIN meet.jit.si Specify the base domain of your Jitsi instance
JOKE_DELAY 2500 Sets the delay in ms between setup and delivery of the joke
JOKE_FILTER Any Sets filter the joke API (documentation)
LOG_LEVEL info Defines the minimum log level. Choose error, warn, info or debug
PLAYLIST_MAX_SIZE 100 Defines the maximum amount of songs that can be added to a playlist
TRACK_STEP_SIZE 10 Defines the default step size in sec. to fast forward (or rewind) a track
ROOM_NAME Name of the room to join
ROOM_PASSWORD Password of the jitsi room (if any)
VOLUME_INITIAL_VALUE 20 Sets the initial music volume in % (0 to 100)
VOLUME_STEP_SIZE 10 Default step size in %, utilized by eg !vol +++

📘 License

JIM is licensed under GNU Affero General Public License v3.0!

About

JIM - The Jitsi Integrated Musicbot is an open source music bot for jitsi, the free video conferencing platform. Together with him, you can get your party started 🎉

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 79.6%
  • HTML 17.8%
  • Dockerfile 2.6%