![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/app/bundles/SmsBundle/Integration/Twilio/ |
<?php namespace Mautic\SmsBundle\Integration\Twilio; use Mautic\PluginBundle\Helper\IntegrationHelper; use Twilio\Exceptions\ConfigurationException; class Configuration { /** * @var string */ private $messagingServiceSid; /** * @var string */ private $accountSid; /** * @var string */ private $authToken; public function __construct( private IntegrationHelper $integrationHelper ) { } /** * @return string * * @throws ConfigurationException */ public function getMessagingServiceSid() { $this->setConfiguration(); return $this->messagingServiceSid; } /** * @return string * * @throws ConfigurationException */ public function getAccountSid() { $this->setConfiguration(); return $this->accountSid; } /** * @return string * * @throws ConfigurationException */ public function getAuthToken() { $this->setConfiguration(); return $this->authToken; } /** * @throws ConfigurationException */ private function setConfiguration(): void { if ($this->accountSid) { return; } $integration = $this->integrationHelper->getIntegrationObject('Twilio'); if (!$integration || !$integration->getIntegrationSettings()->getIsPublished()) { throw new ConfigurationException(); } $this->messagingServiceSid = $integration->getIntegrationSettings()->getFeatureSettings()['messaging_service_sid']; if (empty($this->messagingServiceSid)) { throw new ConfigurationException(); } $keys = $integration->getDecryptedApiKeys(); if (empty($keys['username']) || empty($keys['password'])) { throw new ConfigurationException(); } $this->accountSid = $keys['username']; $this->authToken = $keys['password']; } }