jzland docs
Integrazioni

Discord

Muto, sordo, in onda: il widget Discord con il canale vocale in cui sei e chi c'è dentro.

Il widget Discord mostra tre interruttori grandi (muto, sordo, in onda), il canale vocale in cui sei e le persone che ci sono. Parla con Discord attraverso il suo RPC locale: il socket discord-ipc-N che il client Discord apre sul tuo computer. Niente passa dal cloud.

Cosa serve

  • Il client Discord aperto sul computer.
  • Un'applicazione tua nel portale degli sviluppatori di Discord: ti dà un client id e un client secret. L'RPC con questi permessi (rpc, rpc.voice.read, rpc.voice.write) funziona solo per chi ha creato l'applicazione, o per i tester che aggiunge.

Configurazione

Crea l'applicazione

Nel portale degli sviluppatori di Discord crea un'applicazione e, in OAuth2, aggiungi un indirizzo di reindirizzamento: per esempio http://localhost.

Scrivi le chiavi nel configuratore

Nella sezione Discord: client id, client secret e redirect uri, lo stesso scritto nell'applicazione (predefinito http://localhost). Il segreto va nel gestore delle chiavi e non si rilegge mai.

Autorizza al primo avvio

Discord chiede di autorizzare l'applicazione. Il token resta sul computer in ~/.jz-desk/discord-token.json.

Nel file di configurazione la sezione è:

{ "discord": { "client_id": "…", "client_secret": "…", "redirect_uri": "http://localhost" } }

Muto e sordo

Il tap manda anche la scorciatoia globale di Discord (cmd+shift+M e cmd+shift+D): vanno impostate nelle preferenze dell'app Discord. Con il cervello collegato le scorciatoie non partono: il cervello chiede a Discord lo stato esatto e lo imposta, perché le scorciatoie invertono soltanto (e se eri già muto ti smutano).

Limiti di Discord

  • "Trasmetti" (Go Live) non è esposto da Discord alle applicazioni: il widget lo mostra ma non lo comanda.
  • Se Discord non è aperto, il widget lo dice ("Discord non è aperto sul Mac") invece di restare muto.

Se non funziona

Il registro ~/.jz-desk/logs/discord.log contiene ogni messaggio RPC. Gli errori più comuni sono scritti in chiaro: client_id non valido, token revocato, e per un indirizzo di reindirizzamento diverso da quello registrato nel portale di Discord il messaggio dice quale usare.

On this page