- How do I install laravel-notification-channels/smspoh in a Laravel app?
- Install it with Composer using composer require laravel-notification-channels/smspoh. Laravel package discovery registers the service provider automatically, so a manual provider entry is usually unnecessary. After that, publish or merge the channel configuration, add your Smspoh credentials, and confirm your Laravel and PHP versions match the constraint in the package composer.json. A single-notification integration is typically under a day of work including a test send.
- How do I send an SMS notification through SMSPoh in Laravel?
- Create a standard Notification class and add the Smspoh channel to its via() method, then implement a toSmspoh() method that returns the message. Any model using the Notifiable trait can then receive it with $user->notify(new YourNotification()). Because it plugs into Laravel's existing channel abstraction, there is nothing new to learn beyond the toSmspoh() message object.
- What credentials or configuration does the SMSPoh channel need?
- You need an active Smspoh account plus the API credentials, typically an auth token and sender ID, that the channel reads from your config. Store these in your secrets manager or environment variables rather than in version control. You also register the channel driver in config/notifications.php if your app does not rely purely on package discovery, and you should confirm outbound egress to the Smspoh API endpoint from every environment.
- Which Laravel and PHP versions does this package support?
- Support is defined entirely by the require constraint in the package composer.json, so check that file against your application before committing. A version mismatch is the most common cause of a stalled integration. If you run an older Laravel release or an unusual PHP build, verify compatibility first instead of assuming Composer will resolve it cleanly.
- How can I test SMSPoh SMS notifications without messaging real users?
- Use Laravel's Notification::fake() in your test suite and assert that the expected notification was sent to the expected notifiable, which avoids any network calls. For an end-to-end check, do a single send to your own number or a vendor sandbox before enabling the channel broadly. Roll out per notification type behind a feature flag so a misconfiguration cannot reach your whole user base.
- Can I run SMSPoh alongside my existing SMS provider?
- Yes. Because via() returns an array of channels, you can add the Smspoh channel next to your current driver and dual-send while you compare delivery receipts. That makes a parallel run a configuration change rather than a refactor, so you can cut over notification by notification. If you need routing, failover, or cost arbitrage across vendors, put a vendor-agnostic layer above both rather than relying on this adapter.
- Is laravel-notification-channels/smspoh actively maintained?
- It is published under the laravel-notification-channels organisation, which enforces consistent conventions and a quality baseline, but maintenance activity varies widely between individual channels in that org. Adoption is very small, so expect a thin troubleshooting corpus and few outside contributors. Inspect the repository tag history and recent commits directly before committing, and treat any automated metadata or scores about the package as unverified. Plan for the possibility of forking and self-maintaining what is essentially a one-file adapter.
- Does this package handle SMS consent, opt-out, and compliance?
- No. The channel only delivers the message; consent capture, opt-out handling, quiet-hours policy, and sender ID registration remain your responsibility. SMS is a regulated channel, so confirm your privacy policy and regional rules cover storing phone numbers and message bodies. Also verify that Smspoh meets your data-handling requirements before sending production traffic.
- How should I handle failures and queuing for SMSPoh notifications?
- Implement ShouldQueue on the notification so delivery runs on a queue worker instead of blocking the request. Wrap sends in your normal retry and failure handling, and log vendor responses so you can investigate failed or delayed messages. Remember that the package is a thin adapter, so delivery guarantees, throughput, and error semantics come from Smspoh itself.
- Does this package reduce vendor lock-in for SMS?
- No. It is a single-purpose adapter for one gateway, not a general SMS abstraction, so switching providers later means changing code. If multi-vendor routing, regional coverage, or failover is on your roadmap, define your own SMS interface and treat this channel as one implementation behind it. That keeps lock-in at the configuration layer instead of inside your notification classes.