• This repository has been archived on 26/Jan/2022
  • Stars
    star
    275
  • Rank 149,796 (Top 3 %)
  • Language
    CSS
  • License
    MIT License
  • Created almost 6 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Control the Discord application with the Elgato StreamDeck

THIS PLUGIN IS NO LONGER MAINTAINED, USE ELGATO'S PLUGIN INSTEAD

https://apps.elgato.com/plugins/com.elgato.discord


Continuous Integration

StreamDeck-Discord

StreamDeck-Discord is a C++ plugin for the Elgato StreamDeck for controlling the Discord application running on your computer.

Features

  • Toggle/enable/disable self-mute/deafen
  • Switch between voice-activation and push-to-talk

Installation

Installation and demo video: https://youtu.be/MSMbRtj2fFA

  1. Download the com.fredemmott.discord.streamDeckPlugin file from the releases page, and double-click it.
  2. Add a mute or deafen button to your streamdeck
  3. Go to the Discord developer portal, and create an application
  4. Go to 'OAuth2' on the left hand side
  5. Add https://localhost/ as a redirect URI
  6. Hit Save Changes at the bottom of the page
  7. copy the client ID and paste it into 'app ID' in the StreamDeck button properties
  8. copy the client secret and paste it into 'app secret' in the StreamDeck button properties
  9. Discord should now ask you for permission a few times, then you're done :)
  10. You might get a firewall prompt. You need to allow it.

Need Help?

  1. Try the suggestions in TROUBLESHOOTING.md
  2. If that does not resolve the problem, sign up/sign in to github, and click 'New discussion' on https://github.com/fredemmott/StreamDeck-Discord/discussions ; create an entry in the "Q & A" category

I'm not able to offer 1:1 help, e.g. via Discord.

Limitations

  • only one application can control Discord voice settings at a time. Stop anything else that controls Discord mute/deafen, such as the Discord applet in Logitech Gaming Software
  • mute/deafen only apply while the application is running. For example, if you mute the microphone, then quit the StreamDeck software, the microphone might not be muted.

These limitations are imposed by Discord and can not be fixed by this plugin.

Why does this plugin ask for my Discord username and avatar?

This information is not used or shared by the plugin. It asks for this permission as if it doesn't, Discord will separately prompt for it anyway, even though it's not wanted. Asking for it up front means you will get one permission prompt instead of two.

See https://support.discordapp.com/hc/en-us/community/posts/360038932712-allow-apps-without-identify-role

Why does this plugin ask my firewall for permission to access the internet?

Discord plugins use OAuth2. The flow is basically:

  1. this plugin asks the local Discord app for a code
  2. the Discord app gives this plugin a code
  3. the plugin asks the Discord web API to convert the code into an OAuth token
  4. the Discord API gives the plugin the token
  5. the plugin uses the token to log in to the client

The third step requires internet access.

See https://support.discordapp.com/hc/en-us/community/posts/360038666632-IPC-authentication

Why does this plugin require me to register an app with Discord?

See https://support.discordapp.com/hc/en-us/community/posts/360038666632-IPC-authentication

License

This project is MIT-licensed.

More Repositories

1

StreamDeck-AudioSwitcher

StreamDeck plugin for setting active audio devices
CSS
217
star
2

StreamDeck-AudioMute

Toggle mute for audio devices with the Elgato StreamDeck
CSS
85
star
3

OpenKneeboard

An open source Kneeboard
C++
37
star
4

StreamDeck-CPPSDK

A fork of Elgato's C++ StreamDeck SDK, focussing on reusability
C++
34
star
5

cmake-cpp-winrt-winui3

Archived experiment - see https://github.com/openkneeboard/openkneeboard for a real world example
CMake
33
star
6

HTCC

Hand tracking for flight simulator cockpit clicking
C++
32
star
7

MicMuteToggle

Native application for controlling system microphone mute using keyboard and mouse hotkeys
C++
25
star
8

streaming-remote

Control OBS Studio or XSplit Broadcaster over a network
C++
20
star
9

fastcgiqt

Library for writing web applications with Qt and C++
C++
20
star
10

Envy24HT

[UNSUPPORTED] OSX driver for several Terratec, M-Audio, ESI, and Audiotrak sound cards. Forked from http://www.audio-evolution.com/drivers/
C++
17
star
11

cpp-remapper

Input device (joysticks, wheels etc) mapping with modern C++ profiles
C++
16
star
12

Freds-Controller-Tester

A game controller tester designed for modern sim devices
C++
15
star
13

OpenXR-API-Layers-GUI

UI for editing OpenXR layers.
C++
11
star
14

OpenXR-Tracing

TraceLogging (ETW) for OpenXR on Windows
Python
10
star
15

GenericPS2Keyboard

ApplePS2Keyboard modified to be useful on modern OSes with non-Apple keyboards.
C++
9
star
16

battle-net-account-switcher

Powershell script to switch between logged in battlenet accounts
PowerShell
8
star
17

ahk-micmute

AutoHotKey script for muting and unmuting microphone with mouse buttons
AutoHotkey
7
star
18

psr7-http-message-hhi

Hack typechecker definitions for PSR-7, http messages
6
star
19

commitsync

Rust
6
star
20

jerboa

Qt-based music player
C++
5
star
21

AudioDeviceLib

MacOS/Windows C++ library for switching/muting audio devices
C++
5
star
22

ACPIPS2Nub

Updated ACPI PS2 controller driver for Apple operating systems
C++
4
star
23

ApplePS2Controller

PS/2 controller driver for Apple operating systems
C++
4
star
24

jp

A simple multi-language job pool system
Ruby
4
star
25

wunderlist-rb

Ruby gem for interacting with Wunderlist
Ruby
4
star
26

hhvm-docker

Dockerfiles for HHVM
3
star
27

AppleKeyboardsForWindows

Windows keyboard layouts for Apple Keyboards.
3
star
28

rxhp

My port of https://github.com/facebook/xhp/wiki from PHP to Ruby.
Ruby
3
star
29

sidewalk

A lightweight Ruby web framework, heavily influenced by Aphront
Ruby
2
star
30

targets

Ruby
2
star
31

my_stuff-fb303

An implementation of fb303 for Ruby Thrift servers
Ruby
2
star
32

hack-error-suppressor

Disable HHVM's automatic calls to the Hack typechecker
Hack
1
star
33

ga-verify

Trivial thrift service (over local socket) to check a user's token code.
Ruby
1
star
34

my_stuff-logger

A logging library for Ruby, designed to be a drop-in replacement for the standard 'Logger' class.
Ruby
1
star
35

slamd64-www

Website for slamd64.com
C++
1
star
36

my_stuff-multidb

Convenience APIs for working with shards and reading from slaves
Ruby
1
star
37

PerAppPasswords

Website + webservice for managing per-application passwords
Ruby
1
star
38

my_stuff-cache

A simple Ruby caching library
Ruby
1
star