mirror of
https://github.com/maelgangloff/domain-watchdog.git
synced 2025-12-29 16:15:04 +00:00
Merged master
This commit is contained in:
@@ -2,22 +2,19 @@
|
||||
|
||||
namespace App\Config;
|
||||
|
||||
use App\Service\Connector\OvhConnector;
|
||||
use App\Service\Connector\GandiConnector;
|
||||
use App\Service\Connector\NamecheapConnector;
|
||||
use App\Config\Provider\GandiProvider;
|
||||
use App\Config\Provider\OvhProvider;
|
||||
|
||||
enum ConnectorProvider: string
|
||||
{
|
||||
case OVH = 'ovh';
|
||||
case GANDI = 'gandi';
|
||||
case NAMECHEAP = 'namecheap';
|
||||
|
||||
public function getConnectorProvider(): string
|
||||
{
|
||||
return match ($this) {
|
||||
ConnectorProvider::OVH => OvhConnector::class,
|
||||
ConnectorProvider::GANDI => GandiConnector::class,
|
||||
ConnectorProvider::NAMECHEAP => NamecheapConnector::class
|
||||
ConnectorProvider::OVH => OvhProvider::class,
|
||||
ConnectorProvider::GANDI => GandiProvider::class
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,4 +5,5 @@ namespace App\Config;
|
||||
enum TriggerAction: string
|
||||
{
|
||||
case SendEmail = 'email';
|
||||
case SendChat = 'chat';
|
||||
}
|
||||
|
||||
47
src/Config/WebhookScheme.php
Normal file
47
src/Config/WebhookScheme.php
Normal file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
namespace App\Config;
|
||||
|
||||
use Symfony\Component\Notifier\Bridge\Discord\DiscordTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Engagespot\EngagespotTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\GoogleChat\GoogleChatTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Mattermost\MattermostTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\MicrosoftTeams\MicrosoftTeamsTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Ntfy\NtfyTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Pushover\PushoverTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\RocketChat\RocketChatTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Slack\SlackTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Telegram\TelegramTransportFactory;
|
||||
use Symfony\Component\Notifier\Bridge\Zulip\ZulipTransportFactory;
|
||||
|
||||
enum WebhookScheme: string
|
||||
{
|
||||
case DISCORD = 'discord';
|
||||
case GOOGLE_CHAT = 'googlechat';
|
||||
case MATTERMOST = 'mattermost';
|
||||
case MICROSOFT_TEAMS = 'microsoftteams';
|
||||
case ROCKET_CHAT = 'rocketchat';
|
||||
case SLACK = 'slack';
|
||||
case TELEGRAM = 'telegram';
|
||||
case ZULIP = 'zulip';
|
||||
case PUSHOVER = 'pushover';
|
||||
case NTFY = 'ntfy';
|
||||
case ENGAGESPOT = 'engagespot';
|
||||
|
||||
public function getChatTransportFactory(): string
|
||||
{
|
||||
return match ($this) {
|
||||
WebhookScheme::DISCORD => DiscordTransportFactory::class,
|
||||
WebhookScheme::GOOGLE_CHAT => GoogleChatTransportFactory::class,
|
||||
WebhookScheme::MATTERMOST => MattermostTransportFactory::class,
|
||||
WebhookScheme::MICROSOFT_TEAMS => MicrosoftTeamsTransportFactory::class,
|
||||
WebhookScheme::ROCKET_CHAT => RocketChatTransportFactory::class,
|
||||
WebhookScheme::SLACK => SlackTransportFactory::class,
|
||||
WebhookScheme::TELEGRAM => TelegramTransportFactory::class,
|
||||
WebhookScheme::ZULIP => ZulipTransportFactory::class,
|
||||
WebhookScheme::PUSHOVER => PushoverTransportFactory::class,
|
||||
WebhookScheme::NTFY => NtfyTransportFactory::class,
|
||||
WebhookScheme::ENGAGESPOT => EngagespotTransportFactory::class
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user