10000 [Notifier] Add MessageMedia Bridge · symfony/symfony@d09e61a · GitHub
[go: up one dir, main page]

Skip to content

Commit d09e61a

Browse files
committed
[Notifier] Add MessageMedia Bridge
1 parent 2b7e79b commit d09e61a

File tree

3 files changed

+12
-16
lines changed

3 files changed

+12
-16
lines changed

src/Symfony/Component/Notifier/Bridge/MessageMedia/MessageMediaTransport.php

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -72,27 +72,22 @@ protected function doSend(MessageInterface $message): SentMessage
7272
'destination_number' => $message->getPhone(),
7373
'source_number' => $this->from,
7474
'content' => $message->getSubject(),
75-
]
76-
]
75+
],
76+
],
7777
],
7878
]
7979
);
8080

81-
if (202 !== $response->getStatusCode()) {
82-
$error = $response->toArray(false);
81+
if (202 === $response->getStatusCode()) {
82+
$result = $response->toArray(false)['messages'][0];
83+
$sentMessage = new SentMessage($message, (string)$this);
84+
$sentMessage->setMessageId($result['message_id']);
8385

84-
throw new TransportException(sprintf('Unable to send the SMS: "%s".', $error['message']), $response);
86+
return $sentMessage;
8587
}
8688

87-
$success = $response->toArray(false)['messages'][0];
89+
$error = $response->toArray(false);
8890

89-
if (false === isset($success['message_id'])) {
90-
throw new TransportException(sprintf('Unable to send the SMS: "%s".', $success['message']), $response);
91-
}
92-
93-
$sentMessage = new SentMessage($message, (string) $this);
94-
$sentMessage->setMessageId($success['message_id']);
95-
96-
return $sentMessage;
91+
throw new TransportException(sprintf('Unable to send the SMS: "%s".', $error['details'][0] ?? $error['message']), $response);
9792
}
9893
}

src/Symfony/Component/Notifier/Bridge/MessageMedia/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ MESSAGEMEDIA_DSN=messagemedia://API_KEY:API_SECRET@default?from=FROM
1313
where:
1414
- `API_KEY` is your API key
1515
- `API_SECRET` is your API secret
16-
- `FROM` is your sender (optional)
16+
- `FROM` is your registered sender ID (optional). Accepted values: 3-15 letters, could be alpha tag, shortcode or international phone number.
17+
When phone number starts with a `+` sign, it needs to be url encoded in the DSN
1718

1819
Resources
1920
---------

src/Symfony/Component/Notifier/Bridge/MessageMedia/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
],
1818
"require": {
1919
"php": ">=7.2.5",
20-
"symfony/http-client": "^4.3|^5.0|^6.0",
20+
"symfony/http-client": "^4.4|^5.2|^6.0",
2121
"symfony/notifier": "^5.3|^6.0"
2222
},
2323
"autoload": {

0 commit comments

Comments
 (0)
0