notifier_transports.php 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <?php
  2. /*
  3. * This file is part of the Symfony package.
  4. *
  5. * (c) Fabien Potencier <fabien@symfony.com>
  6. *
  7. * For the full copyright and license information, please view the LICENSE
  8. * file that was distributed with this source code.
  9. */
  10. namespace Symfony\Component\DependencyInjection\Loader\Configurator;
  11. use Symfony\Component\Notifier\Bridge\Discord\DiscordTransportFactory;
  12. use Symfony\Component\Notifier\Bridge\Esendex\EsendexTransportFactory;
  13. use Symfony\Component\Notifier\Bridge\Firebase\FirebaseTransportFactory;
  14. use Symfony\Component\Notifier\Bridge\FreeMobile\FreeMobileTransportFactory;
  15. use Symfony\Component\Notifier\Bridge\GoogleChat\GoogleChatTransportFactory;
  16. use Symfony\Component\Notifier\Bridge\Infobip\InfobipTransportFactory;
  17. use Symfony\Component\Notifier\Bridge\LinkedIn\LinkedInTransportFactory;
  18. use Symfony\Component\Notifier\Bridge\Mattermost\MattermostTransportFactory;
  19. use Symfony\Component\Notifier\Bridge\Mobyt\MobytTransportFactory;
  20. use Symfony\Component\Notifier\Bridge\Nexmo\NexmoTransportFactory;
  21. use Symfony\Component\Notifier\Bridge\OvhCloud\OvhCloudTransportFactory;
  22. use Symfony\Component\Notifier\Bridge\RocketChat\RocketChatTransportFactory;
  23. use Symfony\Component\Notifier\Bridge\Sendinblue\SendinblueTransportFactory;
  24. use Symfony\Component\Notifier\Bridge\Sinch\SinchTransportFactory;
  25. use Symfony\Component\Notifier\Bridge\Slack\SlackTransportFactory;
  26. use Symfony\Component\Notifier\Bridge\Smsapi\SmsapiTransportFactory;
  27. use Symfony\Component\Notifier\Bridge\Telegram\TelegramTransportFactory;
  28. use Symfony\Component\Notifier\Bridge\Twilio\TwilioTransportFactory;
  29. use Symfony\Component\Notifier\Bridge\Zulip\ZulipTransportFactory;
  30. use Symfony\Component\Notifier\Transport\AbstractTransportFactory;
  31. use Symfony\Component\Notifier\Transport\NullTransportFactory;
  32. return static function (ContainerConfigurator $container) {
  33. $container->services()
  34. ->set('notifier.transport_factory.abstract', AbstractTransportFactory::class)
  35. ->abstract()
  36. ->args([service('event_dispatcher'), service('http_client')->ignoreOnInvalid()])
  37. ->set('notifier.transport_factory.slack', SlackTransportFactory::class)
  38. ->parent('notifier.transport_factory.abstract')
  39. ->tag('chatter.transport_factory')
  40. ->set('notifier.transport_factory.linkedin', LinkedInTransportFactory::class)
  41. ->parent('notifier.transport_factory.abstract')
  42. ->tag('chatter.transport_factory')
  43. ->set('notifier.transport_factory.telegram', TelegramTransportFactory::class)
  44. ->parent('notifier.transport_factory.abstract')
  45. ->tag('chatter.transport_factory')
  46. ->set('notifier.transport_factory.mattermost', MattermostTransportFactory::class)
  47. ->parent('notifier.transport_factory.abstract')
  48. ->tag('chatter.transport_factory')
  49. ->set('notifier.transport_factory.nexmo', NexmoTransportFactory::class)
  50. ->parent('notifier.transport_factory.abstract')
  51. ->tag('texter.transport_factory')
  52. ->set('notifier.transport_factory.rocketchat', RocketChatTransportFactory::class)
  53. ->parent('notifier.transport_factory.abstract')
  54. ->tag('chatter.transport_factory')
  55. ->set('notifier.transport_factory.googlechat', GoogleChatTransportFactory::class)
  56. ->parent('notifier.transport_factory.abstract')
  57. ->tag('chatter.transport_factory')
  58. ->set('notifier.transport_factory.twilio', TwilioTransportFactory::class)
  59. ->parent('notifier.transport_factory.abstract')
  60. ->tag('texter.transport_factory')
  61. ->set('notifier.transport_factory.firebase', FirebaseTransportFactory::class)
  62. ->parent('notifier.transport_factory.abstract')
  63. ->tag('chatter.transport_factory')
  64. ->set('notifier.transport_factory.freemobile', FreeMobileTransportFactory::class)
  65. ->parent('notifier.transport_factory.abstract')
  66. ->tag('texter.transport_factory')
  67. ->set('notifier.transport_factory.ovhcloud', OvhCloudTransportFactory::class)
  68. ->parent('notifier.transport_factory.abstract')
  69. ->tag('texter.transport_factory')
  70. ->set('notifier.transport_factory.sinch', SinchTransportFactory::class)
  71. ->parent('notifier.transport_factory.abstract')
  72. ->tag('texter.transport_factory')
  73. ->set('notifier.transport_factory.zulip', ZulipTransportFactory::class)
  74. ->parent('notifier.transport_factory.abstract')
  75. ->tag('chatter.transport_factory')
  76. ->set('notifier.transport_factory.infobip', InfobipTransportFactory::class)
  77. ->parent('notifier.transport_factory.abstract')
  78. ->tag('texter.transport_factory')
  79. ->set('notifier.transport_factory.mobyt', MobytTransportFactory::class)
  80. ->parent('notifier.transport_factory.abstract')
  81. ->tag('texter.transport_factory')
  82. ->set('notifier.transport_factory.smsapi', SmsapiTransportFactory::class)
  83. ->parent('notifier.transport_factory.abstract')
  84. ->tag('texter.transport_factory')
  85. ->set('notifier.transport_factory.esendex', EsendexTransportFactory::class)
  86. ->parent('notifier.transport_factory.abstract')
  87. ->tag('texter.transport_factory')
  88. ->set('notifier.transport_factory.sendinblue', SendinblueTransportFactory::class)
  89. ->parent('notifier.transport_factory.abstract')
  90. ->tag('texter.transport_factory')
  91. ->set('notifier.transport_factory.discord', DiscordTransportFactory::class)
  92. ->parent('notifier.transport_factory.abstract')
  93. ->tag('chatter.transport_factory')
  94. ->set('notifier.transport_factory.null', NullTransportFactory::class)
  95. ->parent('notifier.transport_factory.abstract')
  96. ->tag('chatter.transport_factory')
  97. ->tag('texter.transport_factory')
  98. ;
  99. };