- How do I install and configure laravel-notification-channels/touch-sms?
- Install the package with Composer, then add your TouchSMS credentials and sender identity to the Laravel configuration or environment. Add TouchSmsChannel to the via() method of a notification class and implement routeNotificationForTouchSms on the notifiable model. The package is a thin adapter, so it intentionally does not add a database migration or a cross-provider abstraction.
- Does laravel-notification-channels/touch-sms support Laravel 12?
- Yes, release 2.1.0 adds Laravel 12.x support according to the provided assessment. It is described as a compatibility addition with no noted breaking changes, but you should review the 2.0.0 to 2.1.0 diff before upgrading production apps. Teams on older Laravel versions should confirm whether prior releases remain the supported path.
- How do I send an SMS from a Laravel notification using Touch SMS?
- Add TouchSmsChannel to the notification's via() method and define a toTouchSms method that returns the message payload expected by the channel. The notifiable model needs a routeNotificationForTouchSms method that returns the destination phone number. Then send the notification normally, ideally through Laravel's queue for production workloads.
- What PHP versions are supported alongside Laravel 12 in version 2.1.0?
- The provided context does not list exact PHP version constraints for 2.1.0. Check the package composer.json and the release notes before adopting it, because Laravel 12 support does not automatically guarantee a specific PHP line. Also verify that your application's PHP version matches the package's declared requirements.
- Does this package support Touch SMS delivery receipts or inbound SMS webhooks?
- Delivery receipts and inbound messaging are not described in the provided assessment and appear to be outside the package's documented scope. Treat the channel as an outbound SMS adapter and verify TouchSMS API capabilities directly if you need receipts or two-way messaging. Do not assume the package exposes webhook handling unless you confirm it in the source.
- Is there a Touch SMS sandbox or test mode for this Laravel channel?
- A sandbox or test mode is not documented in the provided context. Run a non-production spike with a TouchSMS test account and use Laravel's HTTP fake or fixture patterns in CI rather than sending live SMS. Verify sender ID rules and error behavior with the vendor before relying on it in production.
- How does laravel-notification-channels/touch-sms handle queue retries and idempotency?
- The package relies on Laravel's notification queue and retry behavior rather than providing built-in idempotency. That means a retried job can potentially send a duplicate SMS if the failure occurs after the provider accepts the request. Use queued notifications with appropriate retry limits, logging, and application-level deduplication where duplicate messages are unacceptable.
- Can I configure Touch SMS credentials and sender ID per environment?
- Laravel configuration and environment variables are the expected way to manage TouchSMS credentials and sender identity per environment. Confirm any country-specific alphanumeric sender registration requirements with TouchSMS, because sender ID rules can vary by destination. Avoid committing secrets and keep config-cache behavior in mind when deploying.
- What are the production risks of adopting this Touch SMS notification channel?
- The main risks are low ecosystem adoption, limited long-term maintenance signals, and undocumented vendor API edge cases. The 2.1.0 Laravel 12 compatibility release is positive, but it does not eliminate concerns about delivery receipts, inbound messaging, or reliance on Laravel queue retries without idempotency. MIT licensing helps because you can fork the package if maintenance stalls.
- How should I test and roll out Touch SMS notifications safely in a Laravel app?
- Start with a non-production spike on your target Laravel version and verify credentials, sender ID rules, and API error behavior. Add contract tests using Laravel HTTP fakes, then pilot one low-risk notification behind a feature flag with fallback to your existing provider. Wrap the channel behind an internal SmsSender contract if you may switch SMS vendors later, so domain notifications do not depend on TouchSMS specifics.