1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-01-31 09:09:00 +03:00

Rebrand to Octobot (#128)

We're moving!

---------

Signed-off-by: Macintosh II <mctaylxrs@outlook.com>
Signed-off-by: Macintosh II <95250141+mctaylors@users.noreply.github.com>
Co-authored-by: Octol1ttle <l1ttleofficial@outlook.com>
This commit is contained in:
Macintxsh 2023-09-30 16:58:32 +03:00 committed by GitHub
parent 2e2f50908e
commit 804bcd6e68
Signed by: GitHub
GPG key ID: 4AEE18F83AFDEB23
53 changed files with 174 additions and 171 deletions

4
.github/CODEOWNERS vendored
View file

@ -1,2 +1,2 @@
* @LabsDevelopment/boyfriend * @LabsDevelopment/octobot
/docs/ @LabsDevelopment/boyfriend-docs /docs/ @LabsDevelopment/octobot-docs

View file

@ -25,7 +25,7 @@ jobs:
- name: ReSharper CLI InspectCode - name: ReSharper CLI InspectCode
uses: muno92/resharper_inspectcode@1.8.3 uses: muno92/resharper_inspectcode@1.8.3
with: with:
solutionPath: ./Boyfriend.sln solutionPath: ./Octobot.sln
ignoreIssueType: InvertIf, ConvertIfStatementToSwitchStatement ignoreIssueType: InvertIf, ConvertIfStatementToSwitchStatement
extensions: ReSharperPlugin.CognitiveComplexity extensions: ReSharperPlugin.CognitiveComplexity
solutionWideAnalysis: true solutionWideAnalysis: true

View file

@ -9,7 +9,7 @@ on:
jobs: jobs:
upload-solution: upload-solution:
name: Upload Boyfriend to production name: Upload Octobot to production
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
actions: read actions: read

View file

@ -6,29 +6,29 @@
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<Version>2.0.0</Version> <Version>2.0.0</Version>
<Title>Boyfriend</Title> <Title>Octobot</Title>
<Authors>Octol1ttle, mctaylors, neroduckale</Authors> <Authors>Octol1ttle, mctaylors, neroduckale</Authors>
<Copyright>AGPLv3</Copyright> <Copyright>AGPLv3</Copyright>
<PackageProjectUrl>https://github.com/LabsDevelopment/Boyfriend</PackageProjectUrl> <PackageProjectUrl>https://github.com/LabsDevelopment/Octobot</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/LabsDevelopment/Boyfriend/blob/master/LICENSE</PackageLicenseUrl> <PackageLicenseUrl>https://github.com/LabsDevelopment/Octobot/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryUrl>https://github.com/LabsDevelopment/Boyfriend</RepositoryUrl> <RepositoryUrl>https://github.com/LabsDevelopment/Octobot</RepositoryUrl>
<RepositoryType>github</RepositoryType> <RepositoryType>github</RepositoryType>
<Company>TeamOctolings</Company> <Company>LabsDevelopment</Company>
<NeutralLanguage>en</NeutralLanguage> <NeutralLanguage>en</NeutralLanguage>
<Description>A legacy-driven Discord bot written in C#</Description> <Description>A general-purpose Discord bot for moderation written in C#</Description>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="DiffPlex" Version="1.7.1"/> <PackageReference Include="DiffPlex" Version="1.7.1" />
<PackageReference Include="Humanizer.Core.ru" Version="2.14.1"/> <PackageReference Include="Humanizer.Core.ru" Version="2.14.1" />
<PackageReference Include="JetBrains.Annotations" Version="2023.2.0"/> <PackageReference Include="JetBrains.Annotations" Version="2023.2.0" />
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.4"/> <PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.4" />
<PackageReference Include="Microsoft.Extensions.Hosting" Version="7.0.1"/> <PackageReference Include="Microsoft.Extensions.Hosting" Version="7.0.1" />
<PackageReference Include="Remora.Discord.Caching" Version="37.0.0"/> <PackageReference Include="Remora.Discord.Caching" Version="37.0.0" />
<PackageReference Include="Remora.Discord.Extensions" Version="5.3.2"/> <PackageReference Include="Remora.Discord.Extensions" Version="5.3.2" />
<PackageReference Include="Remora.Discord.Hosting" Version="6.0.7"/> <PackageReference Include="Remora.Discord.Hosting" Version="6.0.7" />
<PackageReference Include="Remora.Discord.Interactivity" Version="4.5.1"/> <PackageReference Include="Remora.Discord.Interactivity" Version="4.5.1" />
<PackageReference Include="Serilog.Extensions.Logging.File" Version="3.0.0"/> <PackageReference Include="Serilog.Extensions.Logging.File" Version="3.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Update="locale\Messages.resx"> <EmbeddedResource Update="locale\Messages.resx">
@ -37,6 +37,6 @@
</EmbeddedResource> </EmbeddedResource>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<AdditionalFiles Include="CodeAnalysis\BannedSymbols.txt"/> <AdditionalFiles Include="CodeAnalysis\BannedSymbols.txt" />
</ItemGroup> </ItemGroup>
</Project> </Project>

View file

@ -1,6 +1,6 @@
 
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Boyfriend", "Boyfriend.csproj", "{9CA7A44F-167C-46D4-923D-88CE71044144}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Octobot", "Octobot.csproj", "{9CA7A44F-167C-46D4-923D-88CE71044144}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution

View file

@ -1,6 +1,6 @@
# Contributing Guidelines # Contributing Guidelines
Thank you for showing interest in the development of Boyfriend. We aim to provide a good collaborating environment for Thank you for showing interest in the development of Octobot. We aim to provide a good collaborating environment for
everyone involved, and as such have decided to list some of the most important things to keep in mind in the process. everyone involved, and as such have decided to list some of the most important things to keep in mind in the process.
Before starting, please read our [Code of Conduct](CODE_OF_CONDUCT.md) Before starting, please read our [Code of Conduct](CODE_OF_CONDUCT.md)
@ -29,7 +29,7 @@ While pull requests from unaffiliated contributors are welcome, please note that
internal issues that haven't been published to the issue tracker yet. Reviewing PRs is done on a best-effort basis, so internal issues that haven't been published to the issue tracker yet. Reviewing PRs is done on a best-effort basis, so
please be aware that it may take a while before a core maintainer gets around to review your change. please be aware that it may take a while before a core maintainer gets around to review your change.
The [issue tracker](https://github.com/LabsDevelopment/Boyfriend/issues) should provide plenty of issues to start with. The [issue tracker](https://github.com/LabsDevelopment/Octobot/issues) should provide plenty of issues to start with.
Make sure to check that an issue you're planning to resolve does not already have people working on it and that there Make sure to check that an issue you're planning to resolve does not already have people working on it and that there
are no PRs associated with it are no PRs associated with it
@ -62,7 +62,7 @@ After you're done with your changes and you wish to open the PR, please observe
- Please do not merge `master` continually if there are no conflicts to resolve. We will do this for you when the change - Please do not merge `master` continually if there are no conflicts to resolve. We will do this for you when the change
is ready for merge. is ready for merge.
We are highly committed to quality when it comes to Boyfriend. This means that contributions from less experienced We are highly committed to quality when it comes to Octobot. This means that contributions from less experienced
community members can take multiple rounds of review to get to a mergeable state. We try our utmost best to never community members can take multiple rounds of review to get to a mergeable state. We try our utmost best to never
conflate a person with the code they authored, and to keep the discussion focused on the code at all times. Please conflate a person with the code they authored, and to keep the discussion focused on the code at all times. Please
consider our comments and requests a learning experience. consider our comments and requests a learning experience.

View file

@ -1,12 +1,12 @@
<p align="center"> <p align="center">
<img src="https://mctaylors.ddns.net/cdn/boyfriend-banner-light-padding.png" alt="Boyfriend banner" width="75%"/> <img src="https://mctaylors.ddns.net/cdn/octobot-banner.png" alt="Octobot banner"/>
</p> </p>
![License](https://img.shields.io/github/license/LabsDevelopment/Boyfriend) ![License](https://img.shields.io/github/license/LabsDevelopment/Octobot)
![Workflow Status](https://img.shields.io/github/actions/workflow/status/LabsDevelopment/Boyfriend/.github/workflows/build-push.yml?branch=master&logo=ReSharper) ![Workflow Status](https://img.shields.io/github/actions/workflow/status/LabsDevelopment/Octobot/.github/workflows/build-push.yml?branch=master&logo=ReSharper)
![Last Commit](https://img.shields.io/github/last-commit/LabsDevelopment/Boyfriend) ![Last Commit](https://img.shields.io/github/last-commit/LabsDevelopment/Octobot)
Beep! I'm a general-purpose bot for moderation written by [@Octol1ttle](https://github.com/Octol1ttle) in C# and Remora.Discord Veemo! I'm a general-purpose bot for moderation (formerly known as Boyfriend) written by [Labs Development Team](https://github.com/LabsDevelopment) in C# and Remora.Discord
## Features ## Features
@ -17,9 +17,9 @@ Beep! I'm a general-purpose bot for moderation written by [@Octol1ttle](https://
*...and more!* *...and more!*
## Installing and running Boyfriend ## Installing and running Octobot
You can read our [wiki](https://github.com/LabsDevelopment/Boyfriend/wiki) in order to assemble your Boyfriend™ and You can read our [wiki](https://github.com/LabsDevelopment/Octobot/wiki) in order to assemble your Octobot and
moderate the server. moderate the server.
## Contributing ## Contributing
@ -33,8 +33,11 @@ the most effective way possible.
![JetBrains Logo (Main) logo](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg) ![JetBrains Logo (Main) logo](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)
[JetBrains](https://www.jetbrains.com/), creators of [ReSharper](https://www.jetbrains.com/resharper) [JetBrains](https://www.jetbrains.com/), creators of [ReSharper](https://www.jetbrains.com/resharper)
and [Rider](https://www.jetbrains.com/rider), supports Boyfriend with one of and [Rider](https://www.jetbrains.com/rider), supports Octobot with one of
their [Open Source Licenses](https://jb.gg/OpenSourceSupport). their [Open Source Licenses](https://jb.gg/OpenSourceSupport).
Rider is the recommended IDE when working with Boyfriend, and everyone on the Boyfriend team uses it. Rider is the recommended IDE when working with Octobot, and everyone on the Octobot team uses it.
Additionally, ReSharper command-line tools made by JetBrains are used for status checks on pull requests to ensure code Additionally, ReSharper command-line tools made by JetBrains are used for status checks on pull requests to ensure code
quality even when not using ReSharper or Rider. quality even when not using ReSharper or Rider.
#
<sup>Not an official Splatoon™ product. We are in no way affiliated with or endorsed by Nintendo Company, or other rightsholders.</sup>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

View file

@ -120,14 +120,14 @@
<data name="DefaultWelcomeMessage" xml:space="preserve"> <data name="DefaultWelcomeMessage" xml:space="preserve">
<value>{0}, welcome to {1}</value> <value>{0}, welcome to {1}</value>
</data> </data>
<data name="Beep1" xml:space="preserve"> <data name="Sound1" xml:space="preserve">
<value>Bah!</value> <value>Veemo!</value>
</data> </data>
<data name="Beep2" xml:space="preserve"> <data name="Sound2" xml:space="preserve">
<value>Bop!</value> <value>Woomy!</value>
</data> </data>
<data name="Beep3" xml:space="preserve"> <data name="Sound3" xml:space="preserve">
<value>Beep!</value> <value>Ngyes!</value>
</data> </data>
<data name="CommandNoPermissionBot" xml:space="preserve"> <data name="CommandNoPermissionBot" xml:space="preserve">
<value>I do not have permission to execute this command!</value> <value>I do not have permission to execute this command!</value>
@ -520,13 +520,13 @@
<value>Developers:</value> <value>Developers:</value>
</data> </data>
<data name="AboutTitleRepository" xml:space="preserve"> <data name="AboutTitleRepository" xml:space="preserve">
<value>Boyfriend's source code</value> <value>Octobot's source code</value>
</data> </data>
<data name="AboutBot" xml:space="preserve"> <data name="AboutBot" xml:space="preserve">
<value>About Boyfriend</value> <value>About Octobot</value>
</data> </data>
<data name="AboutDeveloper@mctaylors" xml:space="preserve"> <data name="AboutDeveloper@mctaylors" xml:space="preserve">
<value>developer &amp; designer, Boyfriend's Wiki creator</value> <value>developer &amp; designer, Octobot's Wiki creator</value>
</data> </data>
<data name="AboutDeveloper@Octol1ttle" xml:space="preserve"> <data name="AboutDeveloper@Octol1ttle" xml:space="preserve">
<value>main developer</value> <value>main developer</value>
@ -544,7 +544,7 @@
<value>You asked me to remind you {0}</value> <value>You asked me to remind you {0}</value>
</data> </data>
<data name="SettingsListTitle" xml:space="preserve"> <data name="SettingsListTitle" xml:space="preserve">
<value>Boyfriend's Settings</value> <value>Octobot's Settings</value>
</data> </data>
<data name="SettingSuccessfullyChanged" xml:space="preserve"> <data name="SettingSuccessfullyChanged" xml:space="preserve">
<value>Setting successfully changed</value> <value>Setting successfully changed</value>

View file

@ -120,14 +120,14 @@
<data name="DefaultWelcomeMessage" xml:space="preserve"> <data name="DefaultWelcomeMessage" xml:space="preserve">
<value>{0}, добро пожаловать на сервер {1}</value> <value>{0}, добро пожаловать на сервер {1}</value>
</data> </data>
<data name="Beep1" xml:space="preserve"> <data name="Sound1" xml:space="preserve">
<value>Бап!</value> <value>Виимо!</value>
</data> </data>
<data name="Beep2" xml:space="preserve"> <data name="Sound2" xml:space="preserve">
<value>Боп!</value> <value>Вууми!</value>
</data> </data>
<data name="Beep3" xml:space="preserve"> <data name="Sound3" xml:space="preserve">
<value>Бип!</value> <value>Нгьес!</value>
</data> </data>
<data name="CommandNoPermissionBot" xml:space="preserve"> <data name="CommandNoPermissionBot" xml:space="preserve">
<value>У меня недостаточно прав для выполнения этой команды!</value> <value>У меня недостаточно прав для выполнения этой команды!</value>
@ -520,10 +520,10 @@
<value>Разработчики:</value> <value>Разработчики:</value>
</data> </data>
<data name="AboutTitleRepository" xml:space="preserve"> <data name="AboutTitleRepository" xml:space="preserve">
<value>Исходный код Boyfriend</value> <value>Исходный код Octobot</value>
</data> </data>
<data name="AboutBot" xml:space="preserve"> <data name="AboutBot" xml:space="preserve">
<value>О Boyfriend</value> <value>Об Octobot</value>
</data> </data>
<data name="AboutDeveloper@neroduckale" xml:space="preserve"> <data name="AboutDeveloper@neroduckale" xml:space="preserve">
<value>разработчик</value> <value>разработчик</value>
@ -532,7 +532,7 @@
<value>основной разработчик</value> <value>основной разработчик</value>
</data> </data>
<data name="AboutDeveloper@mctaylors" xml:space="preserve"> <data name="AboutDeveloper@mctaylors" xml:space="preserve">
<value>разработчик и дизайнер, создатель Boyfriend's Wiki</value> <value>разработчик и дизайнер, создатель Octobot's Wiki</value>
</data> </data>
<data name="ReminderCreated" xml:space="preserve"> <data name="ReminderCreated" xml:space="preserve">
<value>Напоминание для {0} создано</value> <value>Напоминание для {0} создано</value>
@ -544,7 +544,7 @@
<value>Вы просили напомнить вам {0}</value> <value>Вы просили напомнить вам {0}</value>
</data> </data>
<data name="SettingsListTitle" xml:space="preserve"> <data name="SettingsListTitle" xml:space="preserve">
<value>Настройки Boyfriend</value> <value>Настройки Octobot</value>
</data> </data>
<data name="SettingSuccessfullyChanged" xml:space="preserve"> <data name="SettingSuccessfullyChanged" xml:space="preserve">
<value>Настройка успешно изменена</value> <value>Настройка успешно изменена</value>

View file

@ -120,14 +120,14 @@
<data name="DefaultWelcomeMessage" xml:space="preserve"> <data name="DefaultWelcomeMessage" xml:space="preserve">
<value>{0}, добро пожаловать на сервер {1}</value> <value>{0}, добро пожаловать на сервер {1}</value>
</data> </data>
<data name="Beep1" xml:space="preserve"> <data name="Sound1" xml:space="preserve">
<value>брах!</value> <value>вииимо!</value>
</data> </data>
<data name="Beep2" xml:space="preserve"> <data name="Sound2" xml:space="preserve">
<value>брох!</value> <value>вуууми!</value>
</data> </data>
<data name="Beep3" xml:space="preserve"> <data name="Sound3" xml:space="preserve">
<value>брух!</value> <value>нгьес!</value>
</data> </data>
<data name="CommandNoPermissionBot" xml:space="preserve"> <data name="CommandNoPermissionBot" xml:space="preserve">
<value>у меня прав нету, сделай что нибудь.</value> <value>у меня прав нету, сделай что нибудь.</value>
@ -520,13 +520,13 @@
<value>девелоперы:</value> <value>девелоперы:</value>
</data> </data>
<data name="AboutTitleRepository" xml:space="preserve"> <data name="AboutTitleRepository" xml:space="preserve">
<value>репа Boyfriend (тык)</value> <value>репа Octobot (тык)</value>
</data> </data>
<data name="AboutBot" xml:space="preserve"> <data name="AboutBot" xml:space="preserve">
<value>немного о Boyfriend</value> <value>немного об Octobot</value>
</data> </data>
<data name="AboutDeveloper@mctaylors" xml:space="preserve"> <data name="AboutDeveloper@mctaylors" xml:space="preserve">
<value>скучный девелопер + дизайнер создавший Boyfriend's Wiki</value> <value>скучный девелопер + дизайнер создавший Octobot's Wiki</value>
</data> </data>
<data name="AboutDeveloper@neroduckale" xml:space="preserve"> <data name="AboutDeveloper@neroduckale" xml:space="preserve">
<value>ВАЖНЫЙ соучастник кодинг-стримов @Octol1ttle</value> <value>ВАЖНЫЙ соучастник кодинг-стримов @Octol1ttle</value>
@ -544,7 +544,7 @@
<value>ты хотел чтоб я напомнил тебе {0}</value> <value>ты хотел чтоб я напомнил тебе {0}</value>
</data> </data>
<data name="SettingsListTitle" xml:space="preserve"> <data name="SettingsListTitle" xml:space="preserve">
<value>приколы Boyfriend</value> <value>приколы Octobot</value>
</data> </data>
<data name="SettingSuccessfullyChanged" xml:space="preserve"> <data name="SettingSuccessfullyChanged" xml:space="preserve">
<value>прикол редактирован</value> <value>прикол редактирован</value>

View file

@ -1,6 +1,6 @@
using System.Drawing; using System.Drawing;
namespace Boyfriend; namespace Octobot;
/// <summary> /// <summary>
/// Contains all colors used in embeds. /// Contains all colors used in embeds.

View file

@ -1,8 +1,8 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -15,7 +15,7 @@ using Remora.Discord.Extensions.Embeds;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles the command to show information about this bot: /about. /// Handles the command to show information about this bot: /about.
@ -57,7 +57,7 @@ public class AboutCommandGroup : CommandGroup
[Command("about")] [Command("about")]
[DiscordDefaultDMPermission(false)] [DiscordDefaultDMPermission(false)]
[RequireContext(ChannelContext.Guild)] [RequireContext(ChannelContext.Guild)]
[Description("Shows Boyfriend's developers")] [Description("Shows Octobot's developers")]
[UsedImplicitly] [UsedImplicitly]
public async Task<Result> ExecuteAboutAsync() public async Task<Result> ExecuteAboutAsync()
{ {
@ -90,12 +90,12 @@ public class AboutCommandGroup : CommandGroup
builder.AppendLine($"- {tag} — {$"AboutDeveloper@{dev.Username}".Localized()}"); builder.AppendLine($"- {tag} — {$"AboutDeveloper@{dev.Username}".Localized()}");
} }
builder.Append($"### [{Messages.AboutTitleRepository}](https://github.com/LabsDevelopment/Boyfriend)"); builder.Append($"### [{Messages.AboutTitleRepository}](https://github.com/LabsDevelopment/Octobot)");
var embed = new EmbedBuilder().WithSmallTitle(Messages.AboutBot, currentUser) var embed = new EmbedBuilder().WithSmallTitle(Messages.AboutBot, currentUser)
.WithDescription(builder.ToString()) .WithDescription(builder.ToString())
.WithColour(ColorsList.Cyan) .WithColour(ColorsList.Cyan)
.WithImageUrl("https://mctaylors.ddns.net/cdn/boyfriend-banner-light.png") .WithImageUrl("https://mctaylors.ddns.net/cdn/octobot-banner.png")
.Build(); .Build();
return await _feedback.SendContextualEmbedResultAsync(embed, ct); return await _feedback.SendContextualEmbedResultAsync(embed, ct);

View file

@ -1,9 +1,9 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using Boyfriend.Services.Update;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Octobot.Services.Update;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -17,7 +17,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles commands related to ban management: /ban and /unban. /// Handles commands related to ban management: /ban and /unban.

View file

@ -1,8 +1,8 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -16,7 +16,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles the command to clear messages in a channel: /clear. /// Handles the command to clear messages in a channel: /clear.
@ -100,7 +100,7 @@ public class ClearCommandGroup : CommandGroup
{ {
var idList = new List<Snowflake>(messages.Count); var idList = new List<Snowflake>(messages.Count);
var builder = new StringBuilder().AppendLine(Mention.Channel(channelId)).AppendLine(); var builder = new StringBuilder().AppendLine(Mention.Channel(channelId)).AppendLine();
for (var i = messages.Count - 1; i >= 1; i--) // '>= 1' to skip last message ('Boyfriend is thinking...') for (var i = messages.Count - 1; i >= 1; i--) // '>= 1' to skip last message ('Octobot is thinking...')
{ {
var message = messages[i]; var message = messages[i];
idList.Add(message.ID); idList.Add(message.ID);

View file

@ -4,7 +4,7 @@ using Remora.Discord.Commands.Contexts;
using Remora.Discord.Commands.Services; using Remora.Discord.Commands.Services;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands.Events; namespace Octobot.Commands.Events;
/// <summary> /// <summary>
/// Handles error logging for slash command groups. /// Handles error logging for slash command groups.

View file

@ -4,7 +4,7 @@ using Remora.Discord.Commands.Contexts;
using Remora.Discord.Commands.Services; using Remora.Discord.Commands.Services;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands.Events; namespace Octobot.Commands.Events;
/// <summary> /// <summary>
/// Handles error logging for slash commands that couldn't be successfully prepared. /// Handles error logging for slash commands that couldn't be successfully prepared.

View file

@ -1,7 +1,7 @@
using System.ComponentModel; using System.ComponentModel;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -14,7 +14,7 @@ using Remora.Discord.Extensions.Embeds;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles the command to kick members of a guild: /kick. /// Handles the command to kick members of a guild: /kick.

View file

@ -1,9 +1,9 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using Boyfriend.Services.Update;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Octobot.Services.Update;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -17,7 +17,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles commands related to mute management: /mute and /unmute. /// Handles commands related to mute management: /mute and /unmute.

View file

@ -1,7 +1,7 @@
using System.ComponentModel; using System.ComponentModel;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -15,7 +15,7 @@ using Remora.Discord.Gateway;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles the command to get the time taken for the gateway to respond to the last heartbeat: /ping /// Handles the command to get the time taken for the gateway to respond to the last heartbeat: /ping
@ -78,7 +78,7 @@ public class PingCommandGroup : CommandGroup
var latency = _client.Latency.TotalMilliseconds; var latency = _client.Latency.TotalMilliseconds;
if (latency is 0) if (latency is 0)
{ {
// No heartbeat has occurred, estimate latency from local time and "Boyfriend is thinking..." message // No heartbeat has occurred, estimate latency from local time and "Octobot is thinking..." message
var lastMessageResult = await _channelApi.GetChannelMessagesAsync( var lastMessageResult = await _channelApi.GetChannelMessagesAsync(
channelId, limit: 1, ct: ct); channelId, limit: 1, ct: ct);
if (!lastMessageResult.IsDefined(out var lastMessage)) if (!lastMessageResult.IsDefined(out var lastMessage))
@ -90,7 +90,7 @@ public class PingCommandGroup : CommandGroup
} }
var embed = new EmbedBuilder().WithSmallTitle(currentUser.GetTag(), currentUser) var embed = new EmbedBuilder().WithSmallTitle(currentUser.GetTag(), currentUser)
.WithTitle($"Beep{Random.Shared.Next(1, 4)}".Localized()) .WithTitle($"Sound{Random.Shared.Next(1, 4)}".Localized())
.WithDescription($"{latency:F0}{Messages.Milliseconds}") .WithDescription($"{latency:F0}{Messages.Milliseconds}")
.WithColour(latency < 250 ? ColorsList.Green : latency < 500 ? ColorsList.Yellow : ColorsList.Red) .WithColour(latency < 250 ? ColorsList.Green : latency < 500 ? ColorsList.Yellow : ColorsList.Red)
.WithCurrentTimestamp() .WithCurrentTimestamp()

View file

@ -1,8 +1,8 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -16,7 +16,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles commands to manage reminders: /remind, /listremind, /delremind /// Handles commands to manage reminders: /remind, /listremind, /delremind

View file

@ -1,10 +1,10 @@
using System.ComponentModel; using System.ComponentModel;
using System.Text; using System.Text;
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Boyfriend.Data;
using Boyfriend.Data.Options;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Data.Options;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -18,7 +18,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles the commands to list and modify per-guild settings: /settings and /settings list. /// Handles the commands to list and modify per-guild settings: /settings and /settings list.

View file

@ -1,9 +1,9 @@
using System.ComponentModel; using System.ComponentModel;
using System.Drawing; using System.Drawing;
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Commands.Attributes; using Remora.Commands.Attributes;
using Remora.Commands.Groups; using Remora.Commands.Groups;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -16,7 +16,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Commands; namespace Octobot.Commands;
/// <summary> /// <summary>
/// Handles tool commands: /showinfo, /random. /// Handles tool commands: /showinfo, /random.

View file

@ -1,7 +1,7 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Remora.Rest.Core; using Remora.Rest.Core;
namespace Boyfriend.Data; namespace Octobot.Data;
/// <summary> /// <summary>
/// Stores information about a guild. This information is not accessible via the Discord API. /// Stores information about a guild. This information is not accessible via the Discord API.

View file

@ -1,8 +1,8 @@
using Boyfriend.Data.Options; using Octobot.Data.Options;
using Boyfriend.Responders; using Octobot.Responders;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
namespace Boyfriend.Data; namespace Octobot.Data;
/// <summary> /// <summary>
/// Contains all per-guild settings that can be set by a member /// Contains all per-guild settings that can be set by a member

View file

@ -1,4 +1,4 @@
namespace Boyfriend.Data; namespace Octobot.Data;
/// <summary> /// <summary>
/// Stores information about a member /// Stores information about a member

View file

@ -1,7 +1,7 @@
using Boyfriend.Commands;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Commands;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
/// <summary> /// <summary>
/// Represents all options as enums. /// Represents all options as enums.

View file

@ -1,7 +1,7 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
public sealed class BoolOption : Option<bool> public sealed class BoolOption : Option<bool>
{ {

View file

@ -1,7 +1,7 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
public interface IOption public interface IOption
{ {

View file

@ -3,7 +3,7 @@ using System.Text.Json.Nodes;
using Remora.Discord.Extensions.Formatting; using Remora.Discord.Extensions.Formatting;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
/// <inheritdoc /> /// <inheritdoc />
public sealed class LanguageOption : Option<CultureInfo> public sealed class LanguageOption : Option<CultureInfo>

View file

@ -2,7 +2,7 @@ using System.Text.Json.Nodes;
using Remora.Discord.Extensions.Formatting; using Remora.Discord.Extensions.Formatting;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
/// <summary> /// <summary>
/// Represents an per-guild option. /// Represents an per-guild option.

View file

@ -4,7 +4,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
public sealed partial class SnowflakeOption : Option<Snowflake> public sealed partial class SnowflakeOption : Option<Snowflake>
{ {

View file

@ -2,7 +2,7 @@ using System.Text.Json.Nodes;
using Remora.Commands.Parsers; using Remora.Commands.Parsers;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Data.Options; namespace Octobot.Data.Options;
public sealed class TimeSpanOption : Option<TimeSpan> public sealed class TimeSpanOption : Option<TimeSpan>
{ {

View file

@ -1,4 +1,4 @@
namespace Boyfriend.Data; namespace Octobot.Data;
public struct Reminder public struct Reminder
{ {

View file

@ -1,7 +1,7 @@
using System.Text.Json.Serialization; using System.Text.Json.Serialization;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
namespace Boyfriend.Data; namespace Octobot.Data;
/// <summary> /// <summary>
/// Stores information about scheduled events. This information is not provided by the Discord API. /// Stores information about scheduled events. This information is not provided by the Discord API.

View file

@ -13,7 +13,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend; namespace Octobot;
public static class Extensions public static class Extensions
{ {

View file

@ -5,7 +5,7 @@ using Remora.Discord.Commands.Feedback.Services;
using Remora.Discord.Interactivity; using Remora.Discord.Interactivity;
using Remora.Results; using Remora.Results;
namespace Boyfriend; namespace Octobot;
/// <summary> /// <summary>
/// Handles responding to various interactions. /// Handles responding to various interactions.

View file

@ -7,7 +7,7 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace Boyfriend { namespace Octobot {
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute()] [System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
@ -25,7 +25,7 @@ namespace Boyfriend {
internal static System.Resources.ResourceManager ResourceManager { internal static System.Resources.ResourceManager ResourceManager {
get { get {
if (object.Equals(null, resourceMan)) { if (object.Equals(null, resourceMan)) {
System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Boyfriend.locale.Messages", typeof(Messages).Assembly); System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Octobot.locale.Messages", typeof(Messages).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;
@ -72,21 +72,21 @@ namespace Boyfriend {
} }
} }
internal static string Beep1 { internal static string Sound1 {
get { get {
return ResourceManager.GetString("Beep1", resourceCulture); return ResourceManager.GetString("Sound1", resourceCulture);
} }
} }
internal static string Beep2 { internal static string Sound2 {
get { get {
return ResourceManager.GetString("Beep2", resourceCulture); return ResourceManager.GetString("Sound2", resourceCulture);
} }
} }
internal static string Beep3 { internal static string Sound3 {
get { get {
return ResourceManager.GetString("Beep3", resourceCulture); return ResourceManager.GetString("Sound3", resourceCulture);
} }
} }

View file

@ -1,11 +1,11 @@
using Boyfriend.Commands;
using Boyfriend.Commands.Events;
using Boyfriend.Services;
using Boyfriend.Services.Update;
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Octobot.Commands;
using Octobot.Commands.Events;
using Octobot.Services;
using Octobot.Services.Update;
using Remora.Commands.Extensions; using Remora.Commands.Extensions;
using Remora.Discord.API.Abstractions.Gateway.Commands; using Remora.Discord.API.Abstractions.Gateway.Commands;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
@ -21,9 +21,9 @@ using Remora.Discord.Interactivity.Extensions;
using Remora.Rest.Core; using Remora.Rest.Core;
using Serilog.Extensions.Logging; using Serilog.Extensions.Logging;
namespace Boyfriend; namespace Octobot;
public sealed class Boyfriend public sealed class Octobot
{ {
public static readonly AllowedMentions NoMentions = new( public static readonly AllowedMentions NoMentions = new(
Array.Empty<MentionType>(), Array.Empty<Snowflake>(), Array.Empty<Snowflake>()); Array.Empty<MentionType>(), Array.Empty<Snowflake>(), Array.Empty<Snowflake>());
@ -104,7 +104,7 @@ public sealed class Boyfriend
.WithCommandGroup<RemindCommandGroup>() .WithCommandGroup<RemindCommandGroup>()
.WithCommandGroup<SettingsCommandGroup>() .WithCommandGroup<SettingsCommandGroup>()
.WithCommandGroup<ToolsCommandGroup>(); .WithCommandGroup<ToolsCommandGroup>();
var responderTypes = typeof(Boyfriend).Assembly var responderTypes = typeof(Octobot).Assembly
.GetExportedTypes() .GetExportedTypes()
.Where(t => t.IsResponder()); .Where(t => t.IsResponder());
foreach (var responderType in responderTypes) foreach (var responderType in responderTypes)
@ -114,7 +114,7 @@ public sealed class Boyfriend
} }
).ConfigureLogging( ).ConfigureLogging(
c => c.AddConsole() c => c.AddConsole()
.AddFile("Logs/Boyfriend-{Date}.log", .AddFile("Logs/Octobot-{Date}.log",
outputTemplate: "{Timestamp:o} [{Level:u4}] {Message} {NewLine}{Exception}") outputTemplate: "{Timestamp:o} [{Level:u4}] {Message} {NewLine}{Exception}")
.AddFilter("System.Net.Http.HttpClient.*.LogicalHandler", LogLevel.Warning) .AddFilter("System.Net.Http.HttpClient.*.LogicalHandler", LogLevel.Warning)
.AddFilter("System.Net.Http.HttpClient.*.ClientHandler", LogLevel.Warning) .AddFilter("System.Net.Http.HttpClient.*.ClientHandler", LogLevel.Warning)

View file

@ -1,7 +1,7 @@
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.API.Gateway.Events; using Remora.Discord.API.Gateway.Events;
@ -9,7 +9,7 @@ using Remora.Discord.Extensions.Embeds;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles sending a <see cref="Ready" /> message to a guild that has just initialized if that guild /// Handles sending a <see cref="Ready" /> message to a guild that has just initialized if that guild
@ -85,7 +85,7 @@ public class GuildLoadedResponder : IResponder<IGuildCreate>
var i = Random.Shared.Next(1, 4); var i = Random.Shared.Next(1, 4);
var embed = new EmbedBuilder().WithSmallTitle(currentUser.GetTag(), currentUser) var embed = new EmbedBuilder().WithSmallTitle(currentUser.GetTag(), currentUser)
.WithTitle($"Beep{i}".Localized()) .WithTitle($"Sound{i}".Localized())
.WithDescription(Messages.Ready) .WithDescription(Messages.Ready)
.WithCurrentTimestamp() .WithCurrentTimestamp()
.WithColour(ColorsList.Blue) .WithColour(ColorsList.Blue)

View file

@ -1,7 +1,7 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.Extensions.Embeds; using Remora.Discord.Extensions.Embeds;
@ -9,7 +9,7 @@ using Remora.Discord.Gateway.Responders;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles sending a guild's <see cref="GuildSettings.WelcomeMessage" /> if one is set. /// Handles sending a guild's <see cref="GuildSettings.WelcomeMessage" /> if one is set.
@ -78,7 +78,7 @@ public class GuildMemberJoinedResponder : IResponder<IGuildMemberAdd>
return (Result)await _channelApi.CreateMessageAsync( return (Result)await _channelApi.CreateMessageAsync(
GuildSettings.PublicFeedbackChannel.Get(cfg), embeds: new[] { built }, GuildSettings.PublicFeedbackChannel.Get(cfg), embeds: new[] { built },
allowedMentions: Boyfriend.NoMentions, ct: ct); allowedMentions: Octobot.NoMentions, ct: ct);
} }
private async Task<Result> TryReturnRolesAsync( private async Task<Result> TryReturnRolesAsync(

View file

@ -1,11 +1,11 @@
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles updating <see cref="MemberData.Roles" /> when a guild member is updated. /// Handles updating <see cref="MemberData.Roles" /> when a guild member is updated.

View file

@ -1,7 +1,7 @@
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
@ -10,7 +10,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles logging the contents of a deleted message and the user who deleted the message /// Handles logging the contents of a deleted message and the user who deleted the message
@ -104,6 +104,6 @@ public class MessageDeletedResponder : IResponder<IMessageDelete>
return (Result)await _channelApi.CreateMessageAsync( return (Result)await _channelApi.CreateMessageAsync(
GuildSettings.PrivateFeedbackChannel.Get(cfg), embeds: new[] { built }, GuildSettings.PrivateFeedbackChannel.Get(cfg), embeds: new[] { built },
allowedMentions: Boyfriend.NoMentions, ct: ct); allowedMentions: Octobot.NoMentions, ct: ct);
} }
} }

View file

@ -1,8 +1,8 @@
using System.Text; using System.Text;
using Boyfriend.Data;
using Boyfriend.Services;
using DiffPlex.DiffBuilder; using DiffPlex.DiffBuilder;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
@ -12,7 +12,7 @@ using Remora.Discord.Extensions.Embeds;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles logging the difference between an edited message's old and new content /// Handles logging the difference between an edited message's old and new content
@ -112,6 +112,6 @@ public class MessageEditedResponder : IResponder<IMessageUpdate>
return (Result)await _channelApi.CreateMessageAsync( return (Result)await _channelApi.CreateMessageAsync(
GuildSettings.PrivateFeedbackChannel.Get(cfg), embeds: new[] { built }, GuildSettings.PrivateFeedbackChannel.Get(cfg), embeds: new[] { built },
allowedMentions: Boyfriend.NoMentions, ct: ct); allowedMentions: Octobot.NoMentions, ct: ct);
} }
} }

View file

@ -5,7 +5,7 @@ using Remora.Discord.Gateway.Responders;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles sending replies to easter egg messages. /// Handles sending replies to easter egg messages.

View file

@ -1,11 +1,11 @@
using Boyfriend.Data;
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Data;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
/// <summary> /// <summary>
/// Handles adding a scheduled event to a guild's ScheduledEventData. /// Handles adding a scheduled event to a guild's ScheduledEventData.

View file

@ -1,10 +1,10 @@
using Boyfriend.Services;
using JetBrains.Annotations; using JetBrains.Annotations;
using Octobot.Services;
using Remora.Discord.API.Abstractions.Gateway.Events; using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.Gateway.Responders; using Remora.Discord.Gateway.Responders;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Responders; namespace Octobot.Responders;
[UsedImplicitly] [UsedImplicitly]
public class ScheduledEventUpdatedResponder : IResponder<IGuildScheduledEventUpdate> public class ScheduledEventUpdatedResponder : IResponder<IGuildScheduledEventUpdate>

View file

@ -1,6 +1,6 @@
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
namespace Boyfriend.Services; namespace Octobot.Services;
public sealed class BackgroundGuildDataSaverService : BackgroundService public sealed class BackgroundGuildDataSaverService : BackgroundService
{ {

View file

@ -1,13 +1,13 @@
using System.Collections.Concurrent; using System.Collections.Concurrent;
using System.Text.Json; using System.Text.Json;
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Boyfriend.Data;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Octobot.Data;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Rest.Core; using Remora.Rest.Core;
namespace Boyfriend.Services; namespace Octobot.Services;
/// <summary> /// <summary>
/// Handles saving, loading, initializing and providing <see cref="GuildData" />. /// Handles saving, loading, initializing and providing <see cref="GuildData" />.

View file

@ -1,7 +1,7 @@
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using Boyfriend.Data;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Octobot.Data;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.Extensions.Embeds; using Remora.Discord.Extensions.Embeds;
@ -9,7 +9,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Services.Update; namespace Octobot.Services.Update;
public sealed partial class MemberUpdateService : BackgroundService public sealed partial class MemberUpdateService : BackgroundService
{ {

View file

@ -1,7 +1,7 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Boyfriend.Data;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Octobot.Data;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.API.Objects; using Remora.Discord.API.Objects;
@ -11,7 +11,7 @@ using Remora.Discord.Interactivity;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Services.Update; namespace Octobot.Services.Update;
public sealed class ScheduledEventUpdateService : BackgroundService public sealed class ScheduledEventUpdateService : BackgroundService
{ {

View file

@ -4,7 +4,7 @@ using Remora.Discord.API.Gateway.Commands;
using Remora.Discord.API.Objects; using Remora.Discord.API.Objects;
using Remora.Discord.Gateway; using Remora.Discord.Gateway;
namespace Boyfriend.Services.Update; namespace Octobot.Services.Update;
public sealed class SongUpdateService : BackgroundService public sealed class SongUpdateService : BackgroundService
{ {

View file

@ -1,8 +1,8 @@
using System.Drawing; using System.Drawing;
using System.Text; using System.Text;
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Boyfriend.Data;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Octobot.Data;
using Remora.Discord.API.Abstractions.Objects; using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest; using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.Extensions.Embeds; using Remora.Discord.Extensions.Embeds;
@ -10,7 +10,7 @@ using Remora.Discord.Extensions.Formatting;
using Remora.Rest.Core; using Remora.Rest.Core;
using Remora.Results; using Remora.Results;
namespace Boyfriend.Services; namespace Octobot.Services;
/// <summary> /// <summary>
/// Provides utility methods that cannot be transformed to extension methods because they require usage /// Provides utility methods that cannot be transformed to extension methods because they require usage