From ece3da11f87657323931f287deaaac6bc99893c7 Mon Sep 17 00:00:00 2001 From: filipnyquist Date: Tue, 17 Jul 2018 11:40:10 +0200 Subject: [PATCH] Fixed a problem with the lbrylinker not working on - chars. --- bot/bot.js | 31 ++- bot/modules/lbrylink.js | 100 +++------ bot/modules/rolesetter.js | 2 +- bot/modules/welcome.js | 417 +++++++++++++++++++++----------------- config/commands.json | 12 +- 5 files changed, 285 insertions(+), 277 deletions(-) diff --git a/bot/bot.js b/bot/bot.js index cf300c8..392a822 100644 --- a/bot/bot.js +++ b/bot/bot.js @@ -13,9 +13,9 @@ const supportbot = require('./modules/supportbot.js'); let aliases; try { - aliases = require("./alias.json"); + aliases = require('./alias.json'); } catch (e) { - console.log("No aliases defined") + console.log('No aliases defined'); //No aliases defined aliases = { test: { @@ -44,9 +44,7 @@ bot.on('ready', function() { console.log('Logged in! Serving in ' + bot.guilds.array().length + ' servers'); require('./plugins.js').init(); console.log('type ' + config.prefix + 'help in Discord for a commands list.'); - bot.user - .setActivity(config.prefix + 'help', { type: 'LISTENING' }) - .catch(console.error); + bot.user.setActivity(config.prefix + 'help', { type: 'LISTENING' }).catch(console.error); //initialize the claimbot (content bot) claimbot.init(bot); @@ -76,18 +74,17 @@ function checkMessageForCommand(msg, isEdit) { if (msg.author.id != bot.user.id && msg.content.startsWith(config.prefix)) { //check if user is Online if (!msg.author.presence.status || msg.author.presence.status == 'offline' || msg.author.presence.status == 'invisible') { - msg.author.send('Please set your Discord Presence to Online to talk to the bot!') - .catch(function(error) { - msg.channel.send(msg.author + - ', Please enable Direct Messages from server members to communicate fully with our bot, ' + - 'it is located in the user setting area under Privacy & Safety tab, ' + - 'select the option allow direct messages from server members' - ).then(msg.channel.send( - 'Please set your Discord Presence to Online to talk to the Bot!' - ) - ); - return; - }); + msg.author.send('Please set your Discord Presence to Online to talk to the bot!').catch(function(error) { + msg.channel + .send( + msg.author + + ', Please enable Direct Messages from server members to communicate fully with our bot, ' + + 'it is located in the user setting area under Privacy & Safety tab, ' + + 'select the option allow direct messages from server members' + ) + .then(msg.channel.send('Please set your Discord Presence to Online to talk to the Bot!')); + return; + }); } let cmdTxt = msg.content.split(' ')[0].substring(config.prefix.length); let suffix = msg.content.substring(cmdTxt.length + config.prefix.length + 1); //add one for the ! and one for the space diff --git a/bot/modules/lbrylink.js b/bot/modules/lbrylink.js index 37187e4..7a7cf92 100644 --- a/bot/modules/lbrylink.js +++ b/bot/modules/lbrylink.js @@ -1,88 +1,44 @@ let inPrivate = require('../helpers.js').inPrivate; -let responseDebug = false; +let { RichEmbed } = require('discord.js'); exports.custom = [ 'lbrylink' //change this to your function name ]; -exports.lbrylink = function(bot, msg, suffix) { +exports.lbrylink = async function(bot, msg, suffix) { bot.on('message', msg => { if (inPrivate(msg)) { return; } if (msg.content.includes('lbry://')) { - //Extract URL from Message - let newURL = msg.content - .replace('lbry://', 'https://open.lbry.io/') - .match(/\bhttps?:\/\/\S+/gi) - .toString(); - if (responseDebug) { - console.log('___________________________'); - console.log('newURL = ' + newURL); - } - - //Check if just lbry:// was supplied - if (newURL == 'https://open.lbry.io/') { - return; - } - - //Check if Username Was Supplied - if (newURL.includes('>')) { - //Get rid of ID from message - let parseID = newURL.split('>').pop(); - let newURL = 'https://open.lbry.io' + parseID; - if (responseDebug) { - console.log('Username Provided!'); - console.log('parseID = ' + parseID); - console.log('newURL = ' + newURL); - } - - //check if just Username Was Supplied - if (!newURL.substr(20).includes('/')) { - return; - } - - //check if more than username was supplied - //Also check obscurity in username like ``@MSFTserver` vs `@MSFTserverPics` - if (parseID.includes('/')) { - //parse out extra params before `/` like `<@123456789>Pics` - let parseID = parseID.split('/').pop(); - let newURL = 'https://open.lbry.io/' + parseID; - if (responseDebug) { - console.log('Username no / check'); - console.log('parseID = ' + parseID); - console.log('newURL = ' + newURL); - } - - //checks if username had if after it or just blank to be safe - if (newURL == 'https://open.lbry.io/' || parseID.startsWith('#')) { - return; + try { + // Extract the URL(s). + const urls = msg.content + .replace(new RegExp("(lbry:\\/\\/)", "g"), "https://open.lbry.io/") + .match(/\bhttps?:\/\/\S+/gi) + .filter(url => url !== "https://open.lbry.io/"); + const cleanURLs = []; + for (const i in urls) { + // Check if Username Was Supplied + const user = urls[i].match("<@.*>"); + if (user) { + const { username } = msg.mentions.users.get(user[0].slice(2, -1)); + urls[i] = urls[i].replace(user[0], `@${username}`); } + // Push clean URLs to the array. + cleanURLs.push(urls[i]); } - - //one last saftey check - if (newURL == 'https://open.lbry.io') { - return; - } - - //If no UserName Found proceed - } else { - if (newURL == 'https://open.lbry.io/') { - return; - } - if (responseDebug) { - console.log('___________________________'); - console.log('newURL = ' + newURL); - } + if (cleanURLs.length < 1) return; + const linkEmbed = new RichEmbed(); + linkEmbed + .setAuthor("LBRY Linker") + .setDescription("I see you tried to post a LBRY URL, here's a friendly hyperlink to share and for others to access your content with a single click:") + .setColor(7976557); + cleanURLs.forEach(url => linkEmbed.addField("Open with LBRY:", url, true)); + return msg.embed(linkEmbed); + } catch (e) { + console.log(e); + msg.channel.send("Something went wrong when trying to run the lbrylinker, contact a moderator."); } - const embed = { - description: "I see you tried to post a LBRY URL, here's a friendly hyperlink to share and for others to access your content with a single click: \n" + newURL.replace(/[^0-9a-z#./:]/gi,''), - color: 7976557, - author: { - name: 'LBRY Linker', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - }; - msg.channel.send({ embed }); } }); }; diff --git a/bot/modules/rolesetter.js b/bot/modules/rolesetter.js index e170757..7258e7a 100644 --- a/bot/modules/rolesetter.js +++ b/bot/modules/rolesetter.js @@ -102,7 +102,7 @@ exports.roles = { value: '!delrole (role) - Removed a specified role from yourself.\n!delrole International would remove the International role.', inline: false }, - { + { name: 'NOTE', value: 'The above roles are case sensitive.', inline: false diff --git a/bot/modules/welcome.js b/bot/modules/welcome.js index 5ba3282..756e282 100644 --- a/bot/modules/welcome.js +++ b/bot/modules/welcome.js @@ -4,102 +4,127 @@ let inPrivate = require('../helpers.js').inPrivate; exports.custom = ['onUserJoin']; exports.onUserJoin = function(bot) { bot.on('guildMemberAdd', member => { - member.send({ - embed: { - title: '*Click here for more info about LBRY!*', - description: - '**Welcome to LBRY Discord Community, you are now officially a LBRYian!** \n' + - 'If you are new to LBRY and would like to learn more, see the links at the end of this message. \n' + - 'This community allows LBRYians to interact with the team directly and for us to engage users in order to grow the LBRY platform! \n' + - '**Looking for *Rewards Verification*? Please make a request in the #verification channel by typing **-new** - this will create a ticket (channel) for your request. A mod will reach out to you, please be patient . **Note: DO NOT message any team members or post in other channels about verification concerns.**. Only 1 Reward account is allowed per household** \n', - url: 'https://lbry.io/what', - color: 7976557, - author: { - name: 'Welcome to LBRY Discord Community', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) { - bot.channels.get('369896313082478594').send(member + - ', Please enable Direct Messages from server members to communicate fully with our bot, it is located in the user setting area under Privacy & Safety tab, select the option allow direct messages from server members\nSince the bot could not send you our Welcome message please check the posts in <#431211007050776577> and see the Wunderbot and tipbot commands by typing `!help` in <#369896313082478594>' - ) - }); - member.send({ - embed: { - description: - '1. Be respectful to other community members. Harrasment and vulgarity will not be tolerated \n' + - '2. Do not spam, advertise or post referral links \n' + - '3. Use appropriate channels for your discussions/questions. If you are looking for help with LBRY, use #help, for price talk, use #market-and-trading \n' + - '4. #general discussions should be at least somewhat related to LBRY, otherwise there is #random \n' + - '5. Do not post **not safe for work (NFSW)** content in any non-marked channels, there is #random-nsfw for that \n' + - '6. Do not direct message and LBRY team or mods without being asked to do so \n' + - '7. Do not request free LBC, begging will not be tolerated \n', - color: 7976557, - author: { - name: 'Ground rules', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) {console.log('could not send dm')}); - member.send({ - embed: { - description: - '1. Type !tip help in the #bot-sandbox channel to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). **Enable 2FA in your Discord account settings!** \n' + - '2. See the Frequently Asked Questions (FAQ) section below prior to asking for help or information on LBRY \n' + - '3. Backing up your LBRY wallet is your responsbility, see FAQ link below \n' + - '4. You can find the LBRY Block explorer at https://explorer.lbry.io \n' + - '5. Want to contribute more? Check out https://lbry.io/faq/contributing \n' + - '6. Are you a dev? Check out the #dev channel \n' + - '7. Want to share something you published? Post it on the #publishers channel \n', - color: 7976557, - author: { - name: 'Helpful hints', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) {console.log('could not send dm')}); - member.send({ - embed: { - title: '*Click here for more info about LBRY!*', - description: - '[**LBRY**](https://lbry.io) is a protocol providing fully decentralized network for the discovery, distribution, and payment of data. It utilizes the [**LBRY blockchain**](https://lbry.io/what#the-network) as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, and rights and access rules. \n[_**Download the LBRY App here**_](https://lbry.io/get)', - url: 'https://lbry.io/what', - color: 7976557, - author: { - name: 'What is LBRY?', + member + .send({ + embed: { + title: '*Click here for more info about LBRY!*', + description: + '**Welcome to LBRY Discord Community, you are now officially a LBRYian!** \n' + + 'If you are new to LBRY and would like to learn more, see the links at the end of this message. \n' + + 'This community allows LBRYians to interact with the team directly and for us to engage users in order to grow the LBRY platform! \n' + + '**Looking for *Rewards Verification*? Please make a request in the #verification channel by typing **-new** - this will create a ticket (channel) for your request. A mod will reach out to you, please be patient . **Note: DO NOT message any team members or post in other channels about verification concerns.**. Only 1 Reward account is allowed per household** \n', url: 'https://lbry.io/what', - icon_url: 'https://i.imgur.com/yWf5USu.png' + color: 7976557, + author: { + name: 'Welcome to LBRY Discord Community', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } } - } - }).catch(function(error) {console.log('could not send dm')}); - member.send({ - embed: { - title: '*Click here to see all LBRY Frequently Asked Questions (FAQ)!*', - description: - 'Want to backup your LBRY wallet? [**Backup**](https://lbry.io/faq/how-to-backup-wallet) \nLooking for LBRY data? [**Behind the scenes files**](https://lbry.io/faq/lbry-directories) \nTrouble starting LBRY? [**Startup troubleshooting**](https://lbry.io/faq/startup-troubleshooting) \nNeed help finding your log files (will help us troubleshoot!)? [**Find logs**](https://lbry.io/faq/how-to-find-lbry-log-file) \nNot able to stream any content? [**Troublshoot streaming**](https://lbry.io/faq/unable-to-stream)\nNeed help with publishing? [**How to Publish**](https://lbry.io/faq/how-to-publish) \nWant more LBRY Credits (LBC)? [**Get LBC**](https://lbry.io/faq/earn-credits) \nLooking for referral information? [**Referrals**](https://lbry.io/faq/referrals)', - url: 'https://lbry.io/faq', - color: 7976557, - author: { - name: 'LBRY FAQ', + }) + .catch(function(error) { + bot.channels + .get('369896313082478594') + .send( + member + + ', Please enable Direct Messages from server members to communicate fully with our bot, it is located in the user setting area under Privacy & Safety tab, select the option allow direct messages from server members\nSince the bot could not send you our Welcome message please check the posts in <#431211007050776577> and see the Wunderbot and tipbot commands by typing `!help` in <#369896313082478594>' + ); + }); + member + .send({ + embed: { + description: + '1. Be respectful to other community members. Harrasment and vulgarity will not be tolerated \n' + + '2. Do not spam, advertise or post referral links \n' + + '3. Use appropriate channels for your discussions/questions. If you are looking for help with LBRY, use #help, for price talk, use #market-and-trading \n' + + '4. #general discussions should be at least somewhat related to LBRY, otherwise there is #random \n' + + '5. Do not post **not safe for work (NFSW)** content in any non-marked channels, there is #random-nsfw for that \n' + + '6. Do not direct message and LBRY team or mods without being asked to do so \n' + + '7. Do not request free LBC, begging will not be tolerated \n', + color: 7976557, + author: { + name: 'Ground rules', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + member + .send({ + embed: { + description: + '1. Type !tip help in the #bot-sandbox channel to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). **Enable 2FA in your Discord account settings!** \n' + + '2. See the Frequently Asked Questions (FAQ) section below prior to asking for help or information on LBRY \n' + + '3. Backing up your LBRY wallet is your responsbility, see FAQ link below \n' + + '4. You can find the LBRY Block explorer at https://explorer.lbry.io \n' + + '5. Want to contribute more? Check out https://lbry.io/faq/contributing \n' + + '6. Are you a dev? Check out the #dev channel \n' + + '7. Want to share something you published? Post it on the #publishers channel \n', + color: 7976557, + author: { + name: 'Helpful hints', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + member + .send({ + embed: { + title: '*Click here for more info about LBRY!*', + description: + '[**LBRY**](https://lbry.io) is a protocol providing fully decentralized network for the discovery, distribution, and payment of data. It utilizes the [**LBRY blockchain**](https://lbry.io/what#the-network) as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, and rights and access rules. \n[_**Download the LBRY App here**_](https://lbry.io/get)', + url: 'https://lbry.io/what', + color: 7976557, + author: { + name: 'What is LBRY?', + url: 'https://lbry.io/what', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + member + .send({ + embed: { + title: '*Click here to see all LBRY Frequently Asked Questions (FAQ)!*', + description: + 'Want to backup your LBRY wallet? [**Backup**](https://lbry.io/faq/how-to-backup-wallet) \nLooking for LBRY data? [**Behind the scenes files**](https://lbry.io/faq/lbry-directories) \nTrouble starting LBRY? [**Startup troubleshooting**](https://lbry.io/faq/startup-troubleshooting) \nNeed help finding your log files (will help us troubleshoot!)? [**Find logs**](https://lbry.io/faq/how-to-find-lbry-log-file) \nNot able to stream any content? [**Troublshoot streaming**](https://lbry.io/faq/unable-to-stream)\nNeed help with publishing? [**How to Publish**](https://lbry.io/faq/how-to-publish) \nWant more LBRY Credits (LBC)? [**Get LBC**](https://lbry.io/faq/earn-credits) \nLooking for referral information? [**Referrals**](https://lbry.io/faq/referrals)', url: 'https://lbry.io/faq', - icon_url: 'https://spee.ch/8/Id5Qoc3w.png' + color: 7976557, + author: { + name: 'LBRY FAQ', + url: 'https://lbry.io/faq', + icon_url: 'https://spee.ch/8/Id5Qoc3w.png' + } } - } - }).catch(function(error) {console.log('could not send dm')}); - member.send({ - embed: { - title: '*Have you checked out spee.ch yet?!*', - description: - "[**spee.ch**](https://spee.ch) runs on top of the LBRY network - it's essentially an open source, censorship resistent and decentralized image and video sharing site with the added benefit of being a web-based (works on mobile too!) gateway into the LBRY network. spee.ch can be used to retrieve LBRY images/videos that are free by accessing them through a web browser. \nFor example, if content is located at lbry://loose-cannons-episode1#12c87bb42dd8832167b1e54edf72bbd37bc47622, you can view it on spee.ch at: https://spee.ch/12c87bb42dd8832167b1e54edf72bbd37bc47622/loose-cannons-episode1. You can also view channels on spee.ch, such as: https://spee.ch/@copchronicles:5c039dc7423657e59d78939df72c186e43273675 or https://spee.ch/@MinutePhysics:589276465a23c589801d874f484cc39f307d7ec7 \n\nspee.ch also allows you to create a channel to group your uploads and retreive them easily. These channels are separate from any you may have in the LBRY app since they exist on the spee.ch site via a login process. You can even share your channel name and password so that others can contribute to it.", - url: 'https://spee.ch/about', - color: 7976557, - author: { - name: 'spee.ch', - url: 'https://spee.ch', - icon_url: 'http://www.pd4pic.com/images/flag-green-blue-purple-indigo-bars-background.png' + }) + .catch(function(error) { + console.log('could not send dm'); + }); + member + .send({ + embed: { + title: '*Have you checked out spee.ch yet?!*', + description: + "[**spee.ch**](https://spee.ch) runs on top of the LBRY network - it's essentially an open source, censorship resistent and decentralized image and video sharing site with the added benefit of being a web-based (works on mobile too!) gateway into the LBRY network. spee.ch can be used to retrieve LBRY images/videos that are free by accessing them through a web browser. \nFor example, if content is located at lbry://loose-cannons-episode1#12c87bb42dd8832167b1e54edf72bbd37bc47622, you can view it on spee.ch at: https://spee.ch/12c87bb42dd8832167b1e54edf72bbd37bc47622/loose-cannons-episode1. You can also view channels on spee.ch, such as: https://spee.ch/@copchronicles:5c039dc7423657e59d78939df72c186e43273675 or https://spee.ch/@MinutePhysics:589276465a23c589801d874f484cc39f307d7ec7 \n\nspee.ch also allows you to create a channel to group your uploads and retreive them easily. These channels are separate from any you may have in the LBRY app since they exist on the spee.ch site via a login process. You can even share your channel name and password so that others can contribute to it.", + url: 'https://spee.ch/about', + color: 7976557, + author: { + name: 'spee.ch', + url: 'https://spee.ch', + icon_url: 'http://www.pd4pic.com/images/flag-green-blue-purple-indigo-bars-background.png' + } } - } - }).catch(function(error) {console.log('could not send dm')}); + }) + .catch(function(error) { + console.log('could not send dm'); + }); }); }; @@ -123,101 +148,129 @@ exports.welcome = { msg.channel.send('You Dont Have Permission To Use This Command!'); return; } - msg.mentions.members.first().send({ - embed: { - title: '*Click here for more info about LBRY!*', - description: - '**Welcome to LBRY Discord Community, you are now officially a LBRYian!** \n' + - 'If you are new to LBRY and would like to learn more, see the links at the end of this message. \n' + - 'This community allows LBRYians to interact with the team directly and for us to engage users in order to grow the LBRY platform! \n' + - '**Looking for *Rewards Verification*? Please make a request in the #verification channel by typing **-new** - this will create a ticket (channel) for your request. A mod will reach out to you, please be patient, **Note: DO NOT message any team members or post in other channels about verification concerns.**. Only 1 Reward account is allowed per household** \n', - url: 'https://lbry.io/what', - color: 7976557, - author: { - name: 'Welcome to LBRY Discord Community', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) { - msg.channel.send(msg.mentions.members.first() + - ', Please enable Direct Messages from server members to communicate fully with our bot, it is located in the user setting area under Privacy & Safety tab, select the option allow direct messages from server members' - ) - }); - msg.mentions.members.first().send({ - embed: { - description: - '1. Be respectful to other community members. Harrasment and vulgarity will not be tolerated \n' + - '2. Do not spam, advertise or post referral links \n' + - '3. Use appropriate channels for your discussions/questions. If you are looking for help with LBRY, use #help, for price talk, use #market-and-trading \n' + - '4. #general discussions should be at least somewhat related to LBRY, otherwise there is #random \n' + - '5. Do not post **not safe for work (NFSW)** content in any non-marked channels, there is #random-nsfw for that \n' + - '6. Do not direct message and LBRY team or mods without being asked to do so \n' + - '7. Do not request free LBC, begging will not be tolerated \n', - color: 7976557, - author: { - name: 'Ground rules', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) {console.log('could not send dm')}); - msg.mentions.members.first().send({ - embed: { - description: - '1. Type !tip help in the #bot-sandbox channel to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). **Enable 2FA in your Discord account settings!** \n' + - '2. See the Frequently Asked Questions (FAQ) section below prior to asking for help or information on LBRY \n' + - '3. Backing up your LBRY wallet is your responsbility, see FAQ link below \n' + - '4. You can find the LBRY Block explorer at https://explorer.lbry.io \n' + - '5. Want to contribute more? Check out https://lbry.io/faq/contributing \n' + - '6. Are you a dev? Check out the #dev channel \n' + - '7. Want to share something you published? Post it on the #publishers channel \n', - color: 7976557, - author: { - name: 'Helpful hints', - icon_url: 'https://i.imgur.com/yWf5USu.png' - } - } - }).catch(function(error) {console.log('could not send dm')}); - msg.mentions.members.first().send({ - embed: { - title: '*Click here for more info about LBRY!*', - description: - '[**LBRY**](https://lbry.io) is a protocol providing fully decentralized network for the discovery, distribution, and payment of data. It utilizes the [**LBRY blockchain**](https://lbry.io/what#the-network) as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, and rights and access rules. \n[_**Download the LBRY App here**_](https://lbry.io/get)', - url: 'https://lbry.io/what', - color: 7976557, - author: { - name: 'What is LBRY?', + msg.mentions.members + .first() + .send({ + embed: { + title: '*Click here for more info about LBRY!*', + description: + '**Welcome to LBRY Discord Community, you are now officially a LBRYian!** \n' + + 'If you are new to LBRY and would like to learn more, see the links at the end of this message. \n' + + 'This community allows LBRYians to interact with the team directly and for us to engage users in order to grow the LBRY platform! \n' + + '**Looking for *Rewards Verification*? Please make a request in the #verification channel by typing **-new** - this will create a ticket (channel) for your request. A mod will reach out to you, please be patient, **Note: DO NOT message any team members or post in other channels about verification concerns.**. Only 1 Reward account is allowed per household** \n', url: 'https://lbry.io/what', - icon_url: 'https://i.imgur.com/yWf5USu.png' + color: 7976557, + author: { + name: 'Welcome to LBRY Discord Community', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } } - } - }).catch(function(error) {console.log('could not send dm')}); - msg.mentions.members.first().send({ - embed: { - title: '*Click here to see all LBRY Frequently Asked Questions (FAQ)!*', - description: - 'Want to backup your LBRY wallet? [**Backup**](https://lbry.io/faq/how-to-backup-wallet) \nLooking for LBRY data? [**Behind the scenes files**](https://lbry.io/faq/lbry-directories) \nTrouble starting LBRY? [**Startup troubleshooting**](https://lbry.io/faq/startup-troubleshooting) \nNeed help finding your log files (will help us troubleshoot!)? [**Find logs**](https://lbry.io/faq/how-to-find-lbry-log-file) \nNot able to stream any content? [**Troublshoot streaming**](https://lbry.io/faq/unable-to-stream)\nNeed help with publishing? [**How to Publish**](https://lbry.io/faq/how-to-publish) \nWant more LBRY Credits (LBC)? [**Get LBC**](https://lbry.io/faq/earn-credits) \nLooking for referral information? [**Referrals**](https://lbry.io/faq/referrals)', - url: 'https://lbry.io/faq', - color: 7976557, - author: { - name: 'LBRY FAQ', + }) + .catch(function(error) { + msg.channel.send( + msg.mentions.members.first() + + ', Please enable Direct Messages from server members to communicate fully with our bot, it is located in the user setting area under Privacy & Safety tab, select the option allow direct messages from server members' + ); + }); + msg.mentions.members + .first() + .send({ + embed: { + description: + '1. Be respectful to other community members. Harrasment and vulgarity will not be tolerated \n' + + '2. Do not spam, advertise or post referral links \n' + + '3. Use appropriate channels for your discussions/questions. If you are looking for help with LBRY, use #help, for price talk, use #market-and-trading \n' + + '4. #general discussions should be at least somewhat related to LBRY, otherwise there is #random \n' + + '5. Do not post **not safe for work (NFSW)** content in any non-marked channels, there is #random-nsfw for that \n' + + '6. Do not direct message and LBRY team or mods without being asked to do so \n' + + '7. Do not request free LBC, begging will not be tolerated \n', + color: 7976557, + author: { + name: 'Ground rules', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + msg.mentions.members + .first() + .send({ + embed: { + description: + '1. Type !tip help in the #bot-sandbox channel to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). **Enable 2FA in your Discord account settings!** \n' + + '2. See the Frequently Asked Questions (FAQ) section below prior to asking for help or information on LBRY \n' + + '3. Backing up your LBRY wallet is your responsbility, see FAQ link below \n' + + '4. You can find the LBRY Block explorer at https://explorer.lbry.io \n' + + '5. Want to contribute more? Check out https://lbry.io/faq/contributing \n' + + '6. Are you a dev? Check out the #dev channel \n' + + '7. Want to share something you published? Post it on the #publishers channel \n', + color: 7976557, + author: { + name: 'Helpful hints', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + msg.mentions.members + .first() + .send({ + embed: { + title: '*Click here for more info about LBRY!*', + description: + '[**LBRY**](https://lbry.io) is a protocol providing fully decentralized network for the discovery, distribution, and payment of data. It utilizes the [**LBRY blockchain**](https://lbry.io/what#the-network) as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, and rights and access rules. \n[_**Download the LBRY App here**_](https://lbry.io/get)', + url: 'https://lbry.io/what', + color: 7976557, + author: { + name: 'What is LBRY?', + url: 'https://lbry.io/what', + icon_url: 'https://i.imgur.com/yWf5USu.png' + } + } + }) + .catch(function(error) { + console.log('could not send dm'); + }); + msg.mentions.members + .first() + .send({ + embed: { + title: '*Click here to see all LBRY Frequently Asked Questions (FAQ)!*', + description: + 'Want to backup your LBRY wallet? [**Backup**](https://lbry.io/faq/how-to-backup-wallet) \nLooking for LBRY data? [**Behind the scenes files**](https://lbry.io/faq/lbry-directories) \nTrouble starting LBRY? [**Startup troubleshooting**](https://lbry.io/faq/startup-troubleshooting) \nNeed help finding your log files (will help us troubleshoot!)? [**Find logs**](https://lbry.io/faq/how-to-find-lbry-log-file) \nNot able to stream any content? [**Troublshoot streaming**](https://lbry.io/faq/unable-to-stream)\nNeed help with publishing? [**How to Publish**](https://lbry.io/faq/how-to-publish) \nWant more LBRY Credits (LBC)? [**Get LBC**](https://lbry.io/faq/earn-credits) \nLooking for referral information? [**Referrals**](https://lbry.io/faq/referrals)', url: 'https://lbry.io/faq', - icon_url: 'https://spee.ch/8/Id5Qoc3w.png' + color: 7976557, + author: { + name: 'LBRY FAQ', + url: 'https://lbry.io/faq', + icon_url: 'https://spee.ch/8/Id5Qoc3w.png' + } } - } - }).catch(console.error).then(console.log('could not send dm')); - msg.mentions.members.first().send({ - embed: { - title: '*Have you checked out spee.ch yet?!*', - description: - "[**spee.ch**](https://spee.ch) runs on top of the LBRY network - it's essentially an open source, censorship resistent and decentralized image and video sharing site with the added benefit of being a web-based (works on mobile too!) gateway into the LBRY network. spee.ch can be used to retrieve LBRY images/videos that are free by accessing them through a web browser. \nFor example, if content is located at lbry://loose-cannons-episode1#12c87bb42dd8832167b1e54edf72bbd37bc47622, you can view it on spee.ch at: https://spee.ch/12c87bb42dd8832167b1e54edf72bbd37bc47622/loose-cannons-episode1. You can also view channels on spee.ch, such as: https://spee.ch/@copchronicles:5c039dc7423657e59d78939df72c186e43273675 or https://spee.ch/@MinutePhysics:589276465a23c589801d874f484cc39f307d7ec7 \n\nspee.ch also allows you to create a channel to group your uploads and retreive them easily. These channels are separate from any you may have in the LBRY app since they exist on the spee.ch site via a login process. You can even share your channel name and password so that others can contribute to it.", - url: 'https://spee.ch/about', - color: 7976557, - author: { - name: 'spee.ch', - url: 'https://spee.ch', - icon_url: 'http://www.pd4pic.com/images/flag-green-blue-purple-indigo-bars-background.png' + }) + .catch(console.error) + .then(console.log('could not send dm')); + msg.mentions.members + .first() + .send({ + embed: { + title: '*Have you checked out spee.ch yet?!*', + description: + "[**spee.ch**](https://spee.ch) runs on top of the LBRY network - it's essentially an open source, censorship resistent and decentralized image and video sharing site with the added benefit of being a web-based (works on mobile too!) gateway into the LBRY network. spee.ch can be used to retrieve LBRY images/videos that are free by accessing them through a web browser. \nFor example, if content is located at lbry://loose-cannons-episode1#12c87bb42dd8832167b1e54edf72bbd37bc47622, you can view it on spee.ch at: https://spee.ch/12c87bb42dd8832167b1e54edf72bbd37bc47622/loose-cannons-episode1. You can also view channels on spee.ch, such as: https://spee.ch/@copchronicles:5c039dc7423657e59d78939df72c186e43273675 or https://spee.ch/@MinutePhysics:589276465a23c589801d874f484cc39f307d7ec7 \n\nspee.ch also allows you to create a channel to group your uploads and retreive them easily. These channels are separate from any you may have in the LBRY app since they exist on the spee.ch site via a login process. You can even share your channel name and password so that others can contribute to it.", + url: 'https://spee.ch/about', + color: 7976557, + author: { + name: 'spee.ch', + url: 'https://spee.ch', + icon_url: 'http://www.pd4pic.com/images/flag-green-blue-purple-indigo-bars-background.png' + } } - } - }).catch(function(error) {console.log('could not send dm')}); + }) + .catch(function(error) { + console.log('could not send dm'); + }); } }; diff --git a/config/commands.json b/config/commands.json index da15687..2c257e1 100644 --- a/config/commands.json +++ b/config/commands.json @@ -183,7 +183,8 @@ "bundle": { "url": "", "title": "", - "description": ":warning: Hey, glad to see you love **LBRY** so much, but for the safety of our users we ask that you avoid using **Discord names** that include the word **LBRY**, names of **LBRY staff**, names of other **LBRY members** on the this server or any name that could be considered **deceptive**. This is to prevent impersonation and scams.", + "description": + ":warning: Hey, glad to see you love **LBRY** so much, but for the safety of our users we ask that you avoid using **Discord names** that include the word **LBRY**, names of **LBRY staff**, names of other **LBRY members** on the this server or any name that could be considered **deceptive**. This is to prevent impersonation and scams.", "color": 7976557, "author": { "name": "Discord Username", @@ -696,7 +697,7 @@ } } }, - "!content": { + "!content": { "usage": "", "description": "What Content Can I legally Upload to LBRY?", "operation": "send", @@ -712,7 +713,7 @@ } } }, - "!aup": { + "!aup": { "usage": "", "description": "Acceptable Use Policy", "operation": "send", @@ -776,7 +777,7 @@ } } }, - "!jiggytom": { + "!jiggytom": { "usage": "", "description": "What is JiggyTom?", "operation": "send", @@ -800,7 +801,8 @@ "bundle": { "url": "", "title": "", - "description": "Type `!tip help` or `!tips` to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). <#369896313082478594> should be used to talk to bots in order to avoid spamming other channels. \nRead our [Tipbot FAQ](https://lbry.io/faq/tipbot-discord) on how use the LBRY Discord Tipbot", + "description": + "Type `!tip help` or `!tips` to interact with our Tipbot which can be used to send and receive LBRY Credits (LBC). <#369896313082478594> should be used to talk to bots in order to avoid spamming other channels. \nRead our [Tipbot FAQ](https://lbry.io/faq/tipbot-discord) on how use the LBRY Discord Tipbot", "color": 7976557, "author": { "name": "Tipbot Help Message",