Skip to content
This repository has been archived by the owner on May 4, 2024. It is now read-only.
/ Y2DL.cs Public archive

Gets channel info from one or multiple channels, and sends it on a Text channel or on a Voice channel.

License

Notifications You must be signed in to change notification settings

jbcarreon123/Y2DL.cs

Y2DL (the C# version) is now discontinued.

DDPE

YouTube2DiscordLink (formerly YTSCTD)

GitHub Workflow Status (with event) GitHub all releases Discord

Gets channel info from one or multiple channels, and sends it on a Text channel or on a Voice channel.
Note that this is NOT a YouTube Downloader.

Screenshots

DynamicVoiceChannelInfo and /about y2dl DynamicChannelInfo ChannelReleases

Currently in beta!

But, if you want to see updates, and have a idea for a feature of Y2DL, you can go to my discord at https://discord.gg/P5ecFZNyCc, in the #y2dl channel.

Demos

There is 2 Discord servers that has Y2DL:

Config file

# YouTube2DiscordLink (formerly YTSCTD) 2.0.0-rc1
# Config File
# For smooth operation, follow the instructions at https://jbcarreon123.github.io/docs/y2dl

# DO NOT TOUCH THIS!
Version: 2.0.0-rc1

Main:
  # Webhook or Bot
  Type: Bot

  # If bot, configure this.
  # If not, don't touch this.
  BotConfig: 
    BotToken: [YOUR BOT TOKEN HERE]
    State: DoNotDisturb
    Status:
      Enabled: true
      Status:
       - Emoji: 🔗
         Text: jbcarreon123.github.io/y2dl

  WebhookConfig:
    Name: Y2DL Relay Webhook
    AvatarUrl: https://jbcarreon123.github.io/Y2DL.png

  # The update interval (in milliseconds)
  UpdateInterval: 60000

  # Required at least 1 so it can get the info.
  ApiKeys:
    - YoutubeApiKey: [YOUR API KEY HERE]
      YoutubeApiName: [YOUR API NAME HERE]

  # Defines the log severity to shown in the console.
  Logging:
    LogLevel: Verbose
    LogErrorChannel:
      UseWebhook: false
      WebhookUrl: ""
      GuildId: 0
      ChannelId: 0

Services:
  DynamicChannelInfo:
    Enabled: false
    # Supports the full Discord Markdown (for Bots/Webhooks).
    # {channel} for Channel Name, and {channelUrl} for channel's URL
    # {lVidName} for latest video's title, {lVidThumbnail} for it's thumbnail,
    # and {lVidUrl} for it's URL
    Messages:
      - ChannelId: [CHANNEL ID HERE]
        Output: 
          # If you want to use a webhook instead of a bot, without using Webhook mode, set this to true.
          # Note: Only used in Bot mode. If in Webhook mode, it is ignored because you already using a webhook.
          UseWebhook: false
          # Only used in Webhook mode, or if you set UseWebhook to true.
          WebhookUrl: [YOUR DISCORD WEBHOOK URL]
          # Used in both
          ChannelId: 0
          # The thing below is only used in Bot mode.
          GuildId: 0
        Embed:
          Title: "{Name} ({Handle})"
          TitleUrl: "{ChannelUrl}"
          Description: |
            {Description}
            Subscribers: **{Statistics.Subscribers}**
          Color: "#552233"
          ImageUrl: "{LatestVideo.Thumbnail}"
          ThumbnailUrl: "{ChannelAvatarUrl}"
          Fields:
            - Name: "Latest video"
              Value: |
                [{LatestVideo.Title}]({LatestVideo.Url})
                Views: {LatestVideo.Statistics.Views}
                Likes: {LatestVideo.Statistics.Likes}
                Comments: {LatestVideo.Statistics.Comments}

  ChannelReleases:
    Enabled: true
    # Supports the full Discord Markdown (for Bots/Webhooks).
    # {channel} for Channel Name, and {channelUrl} for channel's URL
    # {lVidName} for latest video's title, {lVidThumbnail} for it's thumbnail,
    # and {lVidUrl} for it's URL
    # Go to https://jbcarreon123.github.io/docs/y2dl/message for more variables.
    Messages:
      - ChannelId: [CHANNEL ID HERE]
        Output: 
          # If you want to use a webhook instead of a bot, without using Webhook mode, set this to true.
          UseWebhook: false
          # Only used in Webhook mode, or if you set UseWebhook to true.
          WebhookUrl: [YOUR DISCORD WEBHOOK URL]
          # Used in both
          ChannelId: 0
          # The 2 things below is only used in Bot mode.
          GuildId: 0
        Content: "@everyone"
        Embed:
          Author: "New video on {Name} is just released!"
          Title: "{LatestVideo.Title}"
          TitleUrl: "{LatestVideo.Url}"
          Description: "{LatestVideo.Description}"
          Color: "#252525"
          ImageUrl: "{LatestVideo.Thumbnail}"

  # Only works if Type is Bot. Else, it will be ignored.
  DynamicChannelInfoForVoiceChannels:  
    Enabled: true
    # {channel} for Channel Name, and {channelSubscribers} for subscibers.
    # Go to https://jbcarreon123.github.io/docs/y2dl/voicechannels for more variables.
    Channels:
      - ChannelId: [CHANNEL ID HERE]
        VoiceChannels:
          - GuildId: 0
            ChannelId: 0
            Name: "Subscribers: {Statistics.FormattedSubscribers}"

  # Only works if Type is Bot. Else, it will be ignored.
  Commands:
    Enabled: true
    # Available types: SlashCommand, Prefix, or Both.
    Type: Both
    # Only used if Type is Prefix or Both.
    Prefix: "!"
    About:
      Enabled: true
      Embed:
        Author: "{Name}"
        AuthorAvatarUrl: "{AvatarUrl}"
        Fields:
          - Name: "Just a bot."
            Value: "Yeah."

Disclaimer

YouTube is a trademark by Google Inc., and
Discord is a trademark by Discord Inc.
This program isn't endorsed or affiliated by Google or Discord.