Last Updated: 20210709 0901 (UTC+8)
DXC DSBot Project Update Dec`20
Disclaimer! - The Contents and Links are Outdated and is nolonger check for validity! Proceed at your own discretion!
The ><>< Prefix has been tied to Social Commands since a few months ago. However, there was only a few upgrades with regards to links to the DXC Network Sites (using the ><><deluxe command) and yet still using the old links for TVR ( short for Twitter(TW), VK, Reddit(RD), Facebook(FB)* and Instagram(IG)* ) *new
The old scDXCCsg.js file is the one responsible for the old format. However, there is one flaw in that format - the incapability to display social pages of others, other than my own. Thus a basic non-intrusive string concat prototype dubbed the social-link-handler was created. It replaces the ><><twitter ><><vk ><><reddit commands in the old JS file with the new feature:
Using the following commands (Basically its the same thing for all):
For ><><twitter and ><><tw commands
concats "https://twitter.com/" URL link to {link}{args_0} ... {link}{args_n} from {command} {args_0} ... {args_n}
with a hidden built in command that gives the DXChiam Twitter link
For ><><vk commands
concats "https://vk.com/" URL link to {link}{args_0} ... {link}{args_n} from {command} {args_0} ... {args_n}
with a hidden built in command that gives the DXChiam VK link
For ><><reddit and ><><rd commands
concats "https://www.reddit.com/user/" URL link to {link}{args_0} ... {link}{args_n} from {command} {args_0} ... {args_n}
with a hidden built in command that gives the DXChiam Reddit link
For ><><facebook and ><><fb commands
concats "https://www.facebook.com/" URL link to {link}{args_0} ... {link}{args_n} from {command} {args_0} ... {args_n}
For ><><instagram and ><><ig commands (Extremely useful for chikopeks)
concats "https://www.instagram.com/" URL link to {link}{args_0} ... {link}{args_n} from {command} {args_0} ... {args_n}
One is capable of gathering links to click in discord and do not worry about privacy as the bot will send you a private message. However, the bot will not delete the original message like the echo type base commands (<>echo <>mega <>message)
Other Updates and Minor Fixes:
Update for the DateTime commands. Added <>dtbotstart that returns the date and time the bot's script was started. Useful for administration since heroku often restart bot processes for free plans (~24 hours) - thus the multiple fixes and implementation of new functions in the Worker\DateTime
Extending the datetime backend, update for the <>message command. Implemented a date time stamp for every message sent and received. All responses are however, adjusted to Singapore General Time (Universal Coordinated Time +08:00 hours)
Adjusted several strings to reflect the current progress like changing any <>say <>shout <>whisper to <>echo <>mega <>message ; however, do note that all these commands still work for legacy reasons, just that the newer ones are the primaries
Fixed certain logic in SUDO commands activity control and prefix manager with regards to white spaces.
This is the beginning of the transition from the old "YYMM.DD" format to the new "YMMDD"; which is an unofficial declaration that this project will not make it thru 2030; as using the last digit of the year limits this whole project from 2020 to 2029. However, things might still change. Till then, we go~
Minor fixes to SUDO's Activity Control (activity-control) command:
Added new arguements: SET and CLEAR:
The "set" arguement takes in any text after the args and set it as the bot's playing activity without changing the bot online status; online/idle/dnd/invisible
The "clear" arguement on the other hand removes the bot's playing activity
Removed outdated arguements: CUSTOM-INVISIBLE and SLEEP; as these two are just glorified version of the "invisible" arguement
Summarising the list of arguements that the activity-control now takes in:
There are four which only changes the Bot's Online Status - "online", "idle", "dnd", "invisible" (Bot's Playing Activity is untouched)
There are two which only changes the Bot's Playing Activity - "set", "clear" - Do note that "set" requires extra texts in order for the command to work (Bot's Online Status are untouched in this case)
There are three built-in DXC playing activity - "start" (DXC's online); "restart" (DXC's idle); and "stop" (DXC's dnd) - These do not require arguements
Finally the three custom playing activities; in which all requires arguements like the set command:
"custom-online" (merger of set and online);
"custom-idle" (merger of set and idle); and
"custom-dnd" (merger of set and dnd)
Before things get too long; DateTime logic improved - Now, it doesnt matter the timezone the hosted machine is on, the Date Time Offset provided in Java Script can deal with it now. However, in time, things will get hard for me, so I might or may, employ the use of an external module.
Finally the important thing for this patch version and closed release - Prefix Manager (prefix-manager):
This SUDO command allows the change and modification, reset to environment variable or bot default for the prefix/escape characters assigned for the bot in question.
And thats it all, other than what each arguements for the command does, making use of the important files in the Worker folder: ForbiddenCheck and the interface that was built on it: PrefixControl - Hence here are the arguements:
"default" - Resets the Bot Prefix/Escape Characters to the Bot's Default Prefix/Escape Characters as stated in the internal json file
"reset" - Resets the Bot Prefix/Escape Characters as stated in the host/machine/system environment variable file/module/settings
"set" - Gives the authorised user the power to change the Bot's current Prefix/Escape Characters to what they want. Just do take note that there are quite a number of forbidden and legacy prefixes that are denied and cannot be used. The error messages are informative enough to live by so do drop a message in the C4 server for any issues or error reporting
Addon: Also did remove the extra line in <>message (<>whisper) command that shows "a message" even when there are none when tag on user or self is valid. That is fixed.
So tired. The fixes for the issues and errors found in <>datetime <>mega and <>message
Luckily, the issues were slightly major/minor and is easily solved. Now all that matters is the close monitoring of the datetime command.
What was changed?
New Misc Bots prefix: 'aa' 'bb' 'cc' changed to more standardised prefixes considering the chances of users activating a bot with double alphabets are quite high. The new prefixes are as follows:
New DXChiam Bot (MiscBot20A): '()'
New DXCellon Bot (MiscBot20B): '[]'
New DXCC Bot (MiscBot20C): '{}'
Improving datetime command. There were errors regarding the timezones received by the previous build in November. The mistake can still be seen for the (Old Misc Bots). However, this is just a temporary fix as the timezone used in Heroku is UTC 0000 hours. As usual, the time is converted to Singapore Standard Time, with no Daylight Saving all year round.
The mega and message commands had flawed and unnecessary repetitions in its logic. The mistakes once again can be seen in the last November build.
Added Inactive Users (DXC accounts that are no longer in use; aka inactive) and Super Admin Users (non-DXC users granted the power of the SUDO commands) alongside the existing Super Root Users (DXC accounts active and authorised to execute SUDO commands).
There are plans to make use of the Inactive Users List to exclude them from receiving messages from the message command and have their received messages redirected to an appointed DXC DS account.
However, Super Admin Users are still denied from executing commands on Deluxe Assistant (PersonalBotDXC).
Finally are the refinement of the DXRoot activity-control command
We are moving away from customised online/idle/dnd/invisible with logic that invisible and its built in equalivalent sleep does not need any set presense is still pending.