- Does flosch/messagebird-bundle work with Laravel?
- No. flosch/messagebird-bundle is a Symfony bundle built around AppKernel registration, DI extension classes, and YAML configuration, so Laravel will not auto-register it or consume its services. Composer may install it, but you will not get the Laravel integration you expect. For Laravel, use the official MessageBird PHP SDK or REST API behind a Laravel service provider instead.
- How do I install flosch/messagebird-bundle in a Laravel app?
- You can run composer require flosch/messagebird-bundle, but Laravel package discovery will not register the bundle and there is no service provider to bind its MessageBird client. Forcing Symfony bundle conventions into Laravel takes more effort than writing a small adapter. The practical path is to skip the bundle and call the MessageBird SDK directly from a Laravel service.
- What Laravel and PHP versions does flosch/messagebird-bundle support?
- It targets Symfony 3, not Laravel, and carries Symfony 3 transitive constraints plus an older MessageBird PHP SDK. That makes Composer conflicts likely on modern PHP and Laravel versions. Check the package's composer.json before assuming compatibility, and do not rely on it for a current Laravel release.
- How do I send an SMS with MessageBird in Laravel without this bundle?
- Create a small service class that wraps the official MessageBird PHP client, bind it in a service provider, and inject it where needed. Keep the API key in config/services.php or a dedicated config file and read it from the environment. For outbound sends, dispatch a queued job and expose the service through a Laravel notification channel so call sites stay clean.
- Can I use the official MessageBird PHP SDK directly in Laravel?
- Yes. The bundle only adds Symfony DI wiring around the official MessageBird PHP client, so using the SDK directly gives you the same capability with fewer framework assumptions. Install messagebird/php-rest-api, instantiate MessageBird\Client with your access key, and wrap it in a Laravel service or facade. That keeps the dependency graph small and makes testing straightforward.
- Is flosch/messagebird-bundle maintained and production ready?
- Treat it as high risk. It is a single-maintainer GitLab project with no visible release cadence or community backstop, and it targets Symfony 3, which reached end of life years ago. For internal, low-volume Symfony 3 legacy code it may still work, but it is not a safe foundation for authentication-critical or high-volume SMS. For Laravel, it is simply the wrong target.
- What are alternatives to flosch/messagebird-bundle for Laravel?
- Use the official MessageBird PHP SDK or REST API behind a Laravel service provider, ideally with a notification channel and queued jobs. If you are still choosing a vendor, compare Twilio, Vonage, and AWS SNS on coverage, sender ID rules, delivery receipts, and pricing. The bundle itself is a Symfony convenience wrapper, not a feature you cannot reproduce in a few hours.
- How do I configure the MessageBird API key with this bundle?
- In Symfony, the bundle exposes an access_key configuration node through its DI extension, so you put the key in your Symfony config files and inject the MessageBird service. That YAML-plus-DI-extension pattern does not carry over to Laravel's config/*.php files. In Laravel, store the key in .env and read it through config/services.php.
- Does flosch/messagebird-bundle support inbound SMS, delivery receipts, or webhooks?
- The bundle is primarily a DI wrapper around the official MessageBird client, with a Swiftmailer transport for outbound SMS in Symfony apps. It does not add Laravel webhook routing, delivery-receipt handling, or two-way messaging features. If you need inbound messages or status callbacks, implement those routes and handlers yourself in Laravel.
- How should I test MessageBird SMS sending in Laravel?
- Do not hit the live API in tests. Bind a fake implementation of your own SmsGateway interface in the container, or use Laravel's HTTP fake if you call the REST API directly, and assert that the expected message was dispatched. Keep the real MessageBird client behind that interface so production wiring is the only place the SDK is constructed. The Symfony bundle does not provide Laravel testing helpers.