Coder Social home page Coder Social logo

discordtwitchannouncer's Introduction

discordtwitchannouncer's People

Contributors

dependabot[bot] avatar kararty avatar sametkecici avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

discordtwitchannouncer's Issues

Make the bot fetch the thumbnail then upload it to discord

Make the bot fetch the thumbnail then upload it to discord. Then use that image URL in the embed so when looking back in announcements it's more relevant to what was happening in that stream.

Also prevents the caching problem where it shows an old thumbnail

401 OAuth Token İs Missing

{ error: 'Unauthorized',
status: 401,
message: 'OAuth token is missing' }

I get an error called help description

prefix issue

Hello,

first of all thank you for this easy-mode announcer ;) the issue i'm having is that no matter what prefix is used (eg: = or ! or ~) all commands work. Could you be so kind to provide information how can the prefix be controlled - even better how can be controlled for every other channel which the bot is listening to.

Thank you in advance

Update README

Update the README to include the new commands added

Oauth update?

Any plans to update this to use Oauth? Twitch is discontinuing authentication by the current methods.

fetch error etimedout

hello,
I'm getting these errors sometimes and the bot is unable to announce the streaming or in the "best case" is delayed (between 5 to even 40 minutes).
Initially I thought the problem was the host, but even after change it these errors still appears sporadically.
Do you have any clues/suggestions on how to solve it?

error

Multi server support

Is this a possibility or will the only way to use this bot is hosting it multiple times for each server.
Would be nice to be able to host this once and make it announce for different streamers in different servers. Not sure if that's your goal with this project though, was just curious if it's something you'll consider

Streamer List Command

Hello, is there a command to have the list of streamers that are added to the advertiser. Or will there be this command in the future?

Consistent timeouts for the past 6 hours

Using the most recent versions of everything including node-fetch.

I've been getting consistent timeouts with the bot for the past 6 hours. Twitch API status page is not showing any issues. Token should be valid until Jan 15.

Error received with multiple different channel names replaced with "channel":

FetchError: request to https://api.twitch.tv/helix/streams?user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel&user_login=channel failed, reason: connect ETIMEDOUT 151.101.186.214:443
    at ClientRequest.<anonymous> (H:\Streambot Oauth\node_modules\node-fetch\lib\index.js:1461:11)
    at ClientRequest.emit (events.js:315:20)
    at TLSSocket.socketErrorListener (_http_client.js:463:9)
    at TLSSocket.emit (events.js:315:20)
    at emitErrorNT (internal/streams/destroy.js:\100:8)
    at emitErrorCloseNT (internal/streams/destroy.js:68:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21) {
  type: 'system',
  errno: 'ETIMEDOUT',
  code: 'ETIMEDOUT'
}

If someone in that list deactivates their channel or changes their name would it cause a timeout? Or is something else going on that I'm unaware of?

2 lists, two channels

Hello, would it be possible to have 2 lists of streamers for 2 different shows?
For example, a list for the main streamer with his channel, and a list for the streamer's friends with a channel for them.

!message not working as expected?

Changing the !message only modifies the contents of settings.json. And data.json stays the same... And it seems the bot reads from data.json for the message. So it doesn't change at all when announcing the message.
Hopefully that's made some sense.

Name (A-Z)

When Name is contain character like $%!%!@,. Bot Crashes !

bot's current status

hey again ;)

not really big issue, but i've got additional module included which sets bot's status (ex. DND/Online/Away - not the Rich Presence thing) and once your bot loads, it's temporary sets the status to Online. Then again, if i switch the announcer off, the activity is properly changed.

any idea what might causes it?

bot doesn't start

Hello again,
I downloaded the bot from scratch using the latest commit and setup using node 16.9 (any previous version I got a warning error), but the bot doesn't want to start for some reason.
Of course I edited the setting.cjs file with the proper token and IDs

Schermata 2022-10-23 alle 13 42 51

Command to check the bots uptime

Be able to check the uptime of the bot, and possibly the ping too.
Useful to know when the bot goes offline without having to ssh into the server to check pm2 etc
Just something that would be a nice addition
Thanks

update

I started the bot and work.. he says Logged into Discord. Activity has been set. [LISTENING] Twitch API.

But when i type !help for a list command
`/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/app.js:811
} else if (message.member.hasPermission((settings.discord.permissionForCommands || 'MANAGE_ROLES'), false, true, true)) {
^

TypeError: message.member.hasPermission is not a function
at Client. (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/app.js:811:31)
at Client.emit (node:events:526:28)
at MessageCreateAction.handle (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/src/client/actions/MessageCreate.js:26:14)
at Object.module.exports [as MESSAGE_CREATE] (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/src/client/websocket/handlers/MESSAGE_CREATE.js:4:32)
at WebSocketManager.handlePacket (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/src/client/websocket/WebSocketManager.js:351:31)
at WebSocketShard.onPacket (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/src/client/websocket/WebSocketShard.js:444:22)
at WebSocketShard.onMessage (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/src/client/websocket/WebSocketShard.js:301:10)
at WebSocket.onMessage (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/node_modules/ws/lib/event-target.js:199:18)
at WebSocket.emit (node:events:526:28)
at Receiver.receiverOnMessage (/home/peppe/Scrivania/DiscordTwitchAnnouncer-master/node_modules/discord.js/node_modules/ws/lib/websocket.js:1137:20)`

Some of my friend says me because it for old node... idk, can u help me?

!test command

!test command for when setting up the bot.
If the stream isn't live it should send out using a placeholder img if the stream isn't live already.
Not necessary but a nice addition if it'd be easy to implement, very useful for setting up the bot and making sure everything's working fine before pushing it out

Feature suggestion: log file for easy report

would be useful if the bot can generates a log.txt file with date and time of any actions and errors, so in case of malfunction we can attach that file and report here; is it something feasible?

Add language

{ "noDiscordToken": "Aucun Token Discord n'a été fourni.", "noTwitchClientID": "Aucun Client ID Twitch n'a été fourni.", "includeTwitchClientSecret": "Si vous effectuez une mise à jour à partir d'une version précédente, assurez-vous que le champ 'twitch.clientSecret' existe dans settings.js.", "noTwitchClientSecret": "Aucun Client Secret Twitch n'a été fourni.", "createdDataJSON": "data.json. crée avec succès.", "usingExistingToken": "Utilisation du token existant. Le token expire le %s.", "missmatchToken": "Le Client ID ne correspond pas au Client Secret Twitch, Vérifiez vos Client ID et Client Secret!", "invalidTokenResponse": "Réponse non valide, Vérifiez vos Token!", "wroteTokenToDisk": "Votre Token vient d'être écrit dans un fichier. REMARQUE: NE PARTAGEZ token.json AVEC PERSONNE!", "genericTokenError": "Une erreur s'est produite lors de la tentative d'obtention du Token Twitch OAuth, vérifiez votre Client ID et votre Client Secret dans settings.js!", "genericDataJSONErrorRetry": "Quelque chose ne va pas avec votre fichier data.json! Nouvelle tentative dans 1 minute...", "disconnectedDiscord": "Apparemment, Discord est déconnecté. Les flux Twitch ne sont pas verifié. Nouvelle tentative dans 3 secondes...", "noTwitchChannels": "Pas de chaînes Twitch. Ajoute-en!", "announcedStreams": "Annonce réussie de tous les streams.", "throttledByTwitch": "Limité par Twitch! Augmentez la minuterie dans settings.js et redémarrez!", "twitchThrottleMessage": "\nErreur Twitch: %s", "streamStarted": "Live démarré ", "unknownGame": "jeu inconnu", "inGuild": "Sur le serveur ", "announcedInOverAtGuild": "Nouvelle annonce: %s Dans: %s Sur: %s", "announcementChannelDoesNotExist": "Impossible d'annoncer un live. Le channel d'annonce, %s n'existe pas sur le serveur %s", "addedGuild": "Nouveau serveur Discord ajoutée à la liste !", "removedGuild": "Suppression d'un serveur Discord de la liste !", "loggedIntoDiscord": "Connecté à Discord.", "activityHasBeenSet": "L'activité a été définie.", "reconnectingToDiscord": "Reconnexion à Discord...", "reconnectedToDiscord": "Reconnecté à Discord. Tout fonctionne.", "includeCooldownTimerWarning": "Une mise à jour récente a introduit un temps de recharge pour chaque annonce, afin de réduire le spam pendant les « flux IRL », veuillez ajouter « cooldownTimer : 21600000 » dans votre fichier settings.json. Temps de recharge de 6 heures pour le moment.", "twitchError": "Quelque chose s'est mal passé avec votre demande Twitch: %1", "commands": { "help": { "triggers": ["help", "h"], "helpText": "%1help (Remplacez <commande> par une commande pour obtenir de l'aide avec une commande spécifique.)", "availableCommands": "Commandes disponibles", "message": "**Commandes d'aide:** " }, "uptime": { "triggers": ["uptime", "timeup", "online"], "helpText": "%1uptime(Affiche le temps de fonctionnement du Bot.)", "message": "Est en ligne depuis", "hoursComma": "heures,", "minutesAnd": "minutes et", "seconds": "secondes", "onlineSince": "En ligne depuis" }, "add": { "triggers": ["add", "+"], "helpText": "%1%2add Nom_Du_Streamer(Ajoute un streamer Twitch au Bot.)", "gameInfoName": "(DEMO) Le nom du jeu", "streamInfoTitle": "(DEMO) Le titre du stream", "streamInfoType": "(DEMO) LIVE/VOD/REDIFF...", "alreadyExists": "existe déjà!", "message": "https://www.twitch.tv/%1 ajouté au Bot.", "addAnnouncementChannel": "N'oubliez pas d'ajouter un salon textuel d'annonce avec!channel #channelName.", "doesNotExist": "https://www.twitch.tv/%1 n'existe pas!" }, "remove": { "triggers": ["rem", "remove", "-", "del", "delete"], "helpText": "%1 %2remove Nom_Du_Streamer(Supprime un flux Twitch de l'annonceur.)", "doesNotExist": "n'existe pas!", "message": "a supprimé le streamer du Bot." }, "channel": { "triggers": ["ch", "chn", "channel"], "helpText": "%1%2channel #%3ou %1%2channel %4(**Obligatoire!** Salon textuel pour les annonces.)", "message": "changed announcement channel.", "noPermissionsForChannel": "ne peut pas poster dans ce salon textuel. Modifiez les autorisations ou choisissez un autre salon textuel." }, "operator": { "triggers": ["op", "operator"], "helpText": "%1%2operator <@%3>(Ajoute un administrateur au Bot.)", "message": "%1 operator.", "noPermission": "Seul le propriétaire du serveur peut ajouter et/ou supprimer des opérateurs." }, "reaction": { "triggers": ["react", "reaction"], "helpText": "%1%2réaction 👍(Ajoute une réaction sur le message d'annonce.)", "message": "%1 réaction." }, "timezone": { "triggers": ["tz", "timezone"], "helpText": "%1%2timezone sv-SE Europe/Stockholm(Vérifier __IANA BCP 47 Subtag registry__ <https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry> & __IETF RFC 5646__ <https://tools.ietf.org/html/rfc5646> pour les tags locales et __IANA Time Zone Database__ <https://www.iana.org/time-zones> & __Wikipedia__ <https://en.wikipedia.org/wiki/List_of_tz_database_time_zones> pour les fuseaux horaires.)", "message": "L'heure sera désormais affichée sous la forme: %1" }, "message": { "triggers": ["msg", "message"], "helpText": "%1%2message @everyone %name% %status%, avec %game%: %title%(Modifier le message d'annonce du flux. Si *<NomDuStreamer>* est rempli, cela changera le message d'annonce de ce streamer. Assurez-vous de retirer le<>. Supporte *%name%* pour le nom du streamer, *%status%* pour le type de stream (VOD, LIVE, REDIFF), *%game%* pour le titre du jeu et *%title%* pour le titre du stream, *%link%* pour le lien du stream.)", "message": "Message d'annonce modifié.", "messageStreamer": "Message d'annonce modifié pour le streamer %1." }, "prefix": { "triggers": ["pfx", "prefix"], "helpText": "%1 %2prefix !(Modifie le préfixe de commande du bot.)", "message": "Le préfixe est maintenant%1." }, "language": { "triggers": ["lang", "language"], "helpText": "%1 %langues français(Modifie la langue du bot.)\n**Langues disponibles:** %3", "languageDoesNotExit": "Cette langue n'existe pas!\n**Langues disponibles:** %1", "message": "Modification de la langue en%1!" }, "announcementChannel": { "triggers": ["ac", "announcementchannel"], "helpText": "%1 %2announcementchannel Nom_Du_Streamer #%3ou %1%2announcementchannel Nom_Du_Streamer %4 (Modifie le salon textuel d'annonce pour le streamer spécifié.)", "message": "changement du salon textuel d'annonce pour ce streamer.", "noPermissionsForChannel": "ne peut pas poster dans ce salon textuel. Modifiez les autorisations ou choisissez un autre salon textuel.", "streamerDoesNotExist": "le streamer n'existe pas!", "announcementChannel": "%1's le salon textuel d'annonce est %2" }, "streamers": { "triggers": ["streamers", "list", "liste"], "helpText": "Affiche la liste des streamers ajoutés.", "message": "**Liste des streamers ajoutés:** \n%1" } }, "example": "(Exemple)", "added": "ajouté(e)", "removed": "supprimé" }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.