Returns all numbers that a message is being sent to and includes their carriers.
public getToWithCarriers ( ) : array | ||
return | array | An array with numbers and carriers |
/** * Generates the Laravel Message Object. * * @param Illuminate\Mail\Message $email * @param SimpleSoftwareIO\SMS\OutgoingMessage $message * * @return Illuminate\Mail\Message */ protected function generateMessage($email, $message) { foreach ($message->getToWithCarriers() as $number) { $email->to($this->buildEmail($number, $message)); } if ($message->getAttachImages()) { foreach ($message->getAttachImages() as $image) { $email->attach($image); } } $email->from($message->getFrom()); return $email; }
/** * Sends a SMS message. * * @param \SimpleSoftwareIO\SMS\OutgoingMessage $message */ public function send(OutgoingMessage $message) { $from = $message->getFrom(); $composeMessage = $message->composeMessage(); $numbers = $message->getToWithCarriers(); if (count($numbers) > 1) { $endpoint = '/send-sms-multiple'; $data = ['sendSmsMultiRequest' => ['sendSmsRequestList' => []]]; foreach ($numbers as $key => $item) { array_push($data['sendSmsMultiRequest']['sendSmsRequestList'], $this->generateMessageBody($from, $item, $composeMessage)); } } else { $endpoint = '/send-sms'; $data = ['sendSmsRequest' => $this->generateMessageBody($from, $numbers[0], $composeMessage)]; } $this->buildCall($endpoint); $this->buildBody($data); $this->postRequest(); }