/**
  * Create a new email gateway instance.
  *
  * @param string[] $config
  *
  * @return \NotifyMeHQ\Adapters\Email\EmailGateway
  */
 public function make(array $config)
 {
     Arr::requires($config, ['smtp', 'user', 'pass', 'subject']);
     $client = new PHPMailer();
     $client->isSMTP();
     $client->CharSet = 'UTF-8';
     $client->Host = Arr::get($config, 'smtp');
     $client->SMTPAuth = Arr::get($config, 'smtp_auth', true);
     $client->Username = Arr::get($config, 'user');
     $client->Password = Arr::get($config, 'pass');
     $client->SMTPSecure = Arr::get($config, 'smtp_secure', 'tls');
     $client->Port = Arr::get($config, 'port', 587);
     $client->isHTML(Arr::get($config, 'html', true));
     $client->setFrom(Arr::get($config, 'from', 'APP'), Arr::get($config, 'from_name', 'APP'));
     return new EmailGateway($client, $config);
 }
 /**
  * Create a new Nexmo gateway instance.
  *
  * @param string[] $config
  *
  * @return \NotifyMeHQ\Adapters\Nexmo\NexmoGateway
  */
 public function make(array $config)
 {
     Arr::requires($config, ['api_key', 'api_secret', 'from']);
     $client = new Client();
     return new NexmoGateway($client, $config);
 }
Exemple #3
0
 /**
  * Create a new slack gateway instance.
  *
  * @param string[] $config
  *
  * @return \NotifyMeHQ\Adapters\Slack\SlackGateway
  */
 public function make(array $config)
 {
     Arr::requires($config, ['token']);
     $client = new Client();
     return new SlackGateway($client, $config);
 }
Exemple #4
0
 /**
  * Create a new webhook gateway instance.
  *
  * @param string[] $config
  *
  * @return \NotifyMeHQ\Adapters\Webhook\WebhookGateway
  */
 public function make(array $config)
 {
     Arr::requires($config, ['endpoint']);
     $client = new Client();
     return new WebhookGateway($client, $config);
 }
Exemple #5
0
 /**
  * Create a new campfire gateway instance.
  *
  * @param string[] $config
  *
  * @return \NotifyMeHQ\Adapters\Campfire\CampfireGateway
  */
 public function make(array $config)
 {
     Arr::requires($config, ['from', 'token']);
     $client = new Client();
     return new CampfireGateway($client, $config);
 }