Как использовать несколько конечных точек для Symfony NexySlackBundle - PullRequest
0 голосов
/ 07 июня 2018

Я использую пакет Nexylan / Slack для моего приложения Symfony 3.4.Я настроил слабый Incoming WebHook для канала # general , и он работает как положено.Конфигурация пакета выглядит примерно так:

nexy_slack:

    # If you want to use an another httplug client service.
    http:
        client: httplug.client

    # The Slack API Incoming WebHooks URL.
    endpoint:             https://hooks.slack.com/services/ABCD/987ABC
    channel:              null
    username:             null
    icon:                 null
    link_names:           false
    unfurl_links:         false
    unfurl_media:         true
    allow_markdown:       true
    markdown_in_attachments: []

Теперь у меня есть другой канал с именем # dev , и я добавил Incoming WebHook и получил конечную точку.Я также хочу отправлять сообщения на канал разработчиков.

Мой вопрос: как мне настроить конечную точку канала dev, чтобы использовать ее?Есть ли способ, которым я могу сделать это?

Вот Slack Bundle

1 Ответ

0 голосов
/ 07 июня 2018

Похоже, что пакет поддерживает только 1 конечную точку.Если вы хотите иметь несколько конечных точек, вам нужно либо разветвляться, либо отправлять PR.

В основном вам нужно настроить оба файла в src / DependencyInjection.

В Configuration.phpвам нужно убедиться, что вы можете определить несколько конечных точек, добавив родительский узел массива , например, называемые конечными точками.Затем внутри NexySlackExtension вы можете просматривать каждую конфигурацию конечной точки и выполнять ту же конфигурацию, что и раньше, просто добавив префикс или суффикс.Так что-то вроде:

$configuration = new Configuration();
$endpointConfigs = $this->processConfiguration($configuration, $configs);

foreach ($endpointConfigs['endpoints'] as $config) {
    // ....
}

Возможно, вы захотите добавить специальную обработку для конечной точки «по умолчанию».Это уже должно сработать, хотя может потребоваться некоторая корректировка, так как я не рассматривал Bundle подробно.Возможно, вы также можете связаться с автором через тикет в системе отслеживания проблем, и они могут помочь вам написать PR.

...