xenon-bot / xenon Goto Github PK
View Code? Open in Web Editor NEWCreate backups of your discord server
License: GNU General Public License v3.0
Create backups of your discord server
License: GNU General Public License v3.0
Since a lot of users use templates for backups cause they have a custom name
Why not having a pro only feature that give the ability to save backups with a custom name (id whatever)
Command "/usr/bin/python3.6 -u -c "import setuptools, tokenize;file='/tmp/pip-install-j_i5fcaq/psutil/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-record-kxew9psx/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-j_i5fcaq/psutil/
Version: Python 3.6.8
Pretty self explanatory, x!copy should be able to clone the emotes (suggesting this for copy as im sure the bot backing up and storing emotes would get very heavy well at least assuming the copy command isnt storing the server as well)
Is your feature request related to a problem? Please describe.
Its more likyely for you and your servers :)
Describe the solution you'd like
would it possible that the bot checks for server changes (if the backup-intervall is active), that way you would save alot of disk space for the db.
Describe alternatives you've considered
maybe add it as an additional command to toggle it.
So right now the bot destroys the entire server and rebuilds it. While this is great, it probably uses alot of resources and time to do this. Instead Xenon should be smart enough to tell what roles, channels, and categories are identical to the incoming backup being loaded and leave them alone, thus generating/backing up messages that exist in the new backup.
Kinda ties into #5 in terms of specifications, it would be good if you could choose which parts to delete and which to keep the same.
would it possible to disable the backup message, and only get the backupcode via a command.
an alternative would be, that the bot checks for server changes, that way you would save alot of disk space for the db
see image attached https://i.imgur.com/1U5zXtK.png
Instead of the x!template list command just pointing to the lists in the server, it should show ones you made yourself. Then at the bottom, have it point to the lists in the server.
But, it'd be far more user friendly than the user just having to search for their own name in the server in case they forgot their own named templates, etc..
Basically x!pro but the turbo version.
An embed with the serveur name and others info at thé end of backup création because we have a command and a code but we do not know what it is and when we have several we get lost
In addition to the already saved data. Could we get an implementation of nicknames being saved as well? It would be a godsend for a server with a large population such as ours, 28k+.
@merlintor my discord bricked lmfao (this is unrelated to xenon)
I have access to 3 servers where I've invited pro. more or less like so
Server 1:
Channel 1.1
Server 2:
Channel 2.1
Server 3:
Channel 3.1
Now, I want to sync channel 1.1 to 2.1 and 3.1, so I run "x?sync messages <channel 1.1 ID>" in Channels 2.1 and 3.1 in that order.
The result is that sync of text goes just as it should in 2.1, but in 3.1 it posts synced images twice. If I test on a third channel, it posts it three times. I have not tried any further, but it seems it's likely it'll post four times in the forth channel etc
Since you can copy servers and also back them up, it only makes sense that you would be able to sync things such as bans, roles and nicknames... (Ofc this would have to be a premium thing and probably only update every 30 mins or so but it would be super cool)
Hi there. Maybe is it nice to add in the embed in #template_list how much the template has been used. I think you can collect the things by collecting the amount of templates loading commands. Every time that will happen, the bot will update the count in #template_list.
Greeting, Menno
When creating a backup, Xenon should detect if they're channels that aren't categorized, so if there are uncategorized channels, it creates an category, adds that channels into that category and then creates backup.
Can we issue backups based off custom options,
x!backup roles create
or
x!backup channels create
I love the bot, but would be cool if there was a command to backup only certain things (not just one, the whole server)
Sometimes the bot wont properly load a backup of voice channel member limits (the limits are set properly in the original server).
https://cdn.discordapp.com/attachments/499259944508456976/532177497891143700/image0.png
I was told that ''x!shards'' isn't for DMs and if that's the case it should respond with the ''This command can't be used in private messages.'' error, instead of the current error code the bots gives you when you try to use the command in DMs.
When using the reinvite feature, Xenon seems to do the following steps:
In my case this yielded only 35 invites, and most of those invites seemed to go to users who were already in the server at that point. Kind of pointless.
In my humble opinion it should proceed in this way instead:
This would be much more useful for a 500 user backup like mine. Presumably it would actually end up inviting 100 users who aren't currently in the server, which would be the behavior I had hoped for when signing up for Xenon pro.
Is your feature request related to a problem? Please describe.
no
Describe the solution you'd like
Remove messages from templates entirely
Describe alternatives you've considered
Warn people before creating a template with messages in it.
At some point, the template system will be redone, feel free to reply with ideas for the new template system and they will (at some point) be added to the list below to be accepted/denied.
If anything is missing from the list below please let me know and i'll update it.
A command that deletes all backups and optionally all other personal information.
x!backup purge
I just deleted all the messages in my server, after one admin of it made the same mistake. At first I thought he was stupid because he didn't read instructions, so I went to use the bot myself, with the following flow:
Notice that at any point it was ever clearly mentioned that the bot would wipe out all the messages in my server*
I still though that I was doing something wrong so I looked for the bot page, where I found this:
Only then did I find this:
Which is the first place that explicitly mentions that the bot only saves messages for the pro version, and still only 25. I understand that actually backing up all the messages can be very hard to do. However, I think what happened to me could've been prevented with clearer messages and better explanation of what the bot actually does.
I'm suggesting making it very clear on the front page that only the PRO version does the backup of messages (and would go a step further mentioning the 25 message limit, so people don't pay and lose their messages)
*: Only after knowing that clearing the server is the expected behaviour that I understood what "your channels will be replaced meant", this could be much more clearer message, such as "all your messages in all your channels will be deleted", since losing all the messages might be a very critical problem for some servers, especially ones that was just looking for a tool to back them up.
Hi i wanted to recommend something, is it possible for the reinvite thing to like... log who it invited already and skip them like if it gets triggered again in a period? Like, they cant be reinvited in the same day. So we can reinvite all a srver slowly in an easier way. Or like make an option to skip them.
The body to the error provided is pretty basic as seen here. I feel it could use a few upgrades and should instead say something along the lines of No template name specified, join the [support server](https://discord.gg/Ty3cpWb) in order to find a template!
Creating automatic backup at assigned time intervals/time-slots of servers by using a command. If possible, the new backup may be able to overwrite the previous backup.
Don't really know if the future exists already or not, but would love to see it in a future release.
Traceback (most recent call last):
File "launcher.py", line 6, in <module>
from bot import Xenon
File "/root/xenon/bot.py", line 18
self.log.info(f"Loaded {len(self.cogs)} cogs")
^
How i can fix this?, i use Python 3
Have a version of xenon that does not use embeds and is mobile friendly. It could be triggered with a separate prefix or with a -m on the end of each command.
There is an option to backup messages when doing manual backups, but no automatic backups set on an interval. This would be a good feature to implement.
Don't know if it's possible, but I would really like the role copying command, some templates have too many channels and I just want to copy the roles.
Xenon tries to remove reactions in DM channel with the template list command, just need to disable the middle button in a dm really. https://thatlifeofgames.com/img/1564567961.png
Could you make it to where we can backup only one channel and its mgs to be able to transfer.
It would make it easier to transfer things like rules or bot guides/lists.
Or maybe just a certain category
Where are the "backups" stored and how do i download them (commands guide please)
what database is this stored under and how do i access it??
sorry for wasting any time and thanks for any help
Similar to #8 but instead of storing nicknames, its with bans.
The bans don’t load well for me, the bot seems to only load bans for people it shares a server with or something. It loaded 30 of my 1.8k bans...
When you copy/load a backup of a server it deletes everything that is on it, it would be nice to have an option where you can choose to keep the roles or choose to keep the channels instead of deleting everything.
Backups are linked to the creator account. Backup Ids are therefore not a private value anymore.
This can be useful for people that have their dms disabled.
It can be really annoying to get pinged in two channels at once using the message sync, you could make it so the synced message doesn't actually ping the user as you only need to see it in one channel anyway.
Maybe don't do this by default, but have an option to.
What about make the bot can backup your all server messages just like if you have many messages in your server and you don't want to lose it then you can backup and not lose it i think that would be helpful for me and people.
Seems like there are problems with this feature.
I temporarily disabled it
When I load backups, I don’t always want to load permissions but I may want roles, there are also other times where I just want to update permissions so if that was a thing it would be really cool!
Make a js branch, in eris if possible please ❤️
Title says it all.
Being able to download a plaintext file with the backed up list of users (names & IDs) would be pretty great.
Being able to import such files would also be cool, tho not something I personally need.
Let the backup interval keep multiple backups (maybe up to 3) as if something happens to a server, and it creates a backup after it happens, you have no useful interval backup (if that doesn't make sense, ask).
The IDs could simply be something like guildid-number (eg 410488579140354049**-2**)
Whenever you load messages from a backup you endup with the bot loading the x!backup create text and also the bot saying check your dms blah blah, maybe make it somehow ignore those messages? They tend to get spammy :p
This should make the loading process alot faster.
The asyncio.gather / asyncio.wait function creates a task for each coroutine. This could lead to a high amount of concurrent tasks. It's therefore probably only a feature for turbo.
#53 What about make bot can backup your all server messages just like if you have many messages in your server and you don't want to lose it then you can backup and not lose it i think that would be helpful for me and people.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.