Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Iran Sms

Laravel Iran Sms Laravel Package

hooman-mirghasemi/laravel-iran-sms

Laravel package for integrating Iranian SMS providers into your application. It offers a simple, unified API for sending messages, configurable gateways, and easy setup so you can add SMS notifications, OTP codes, and transactional messaging to Laravel apps.

View on GitHub
Deep Wiki
Context7

A well designed package for sending sms from iranian sms provider.

Frequently asked questions about Laravel Iran Sms
How do I install and configure hooman-mirghasemi/laravel-iran-sms in a Laravel app?
Install it with composer require hooman-mirghasemi/laravel-iran-sms. The service provider is auto-discovered, then you publish the config file and add your Ghasedak credentials and gateway settings to it. The package exposes a facade and a notification channel so you can send from controllers, queued jobs, or Laravel notifications.
Which Laravel and PHP versions does this Iranian SMS package support?
Check the constraints in composer.json before installing, because dropping the vendor Ghasedak SDK in version 1.4.2 may have come with a bump to the minimum PHP or Laravel version. The package follows the standard Laravel package shape with auto-discovery, so it should work across recent releases within those constraints. Pin a version and run your test suite on your target Laravel version before rolling it out.
Does laravel-iran-sms support Ghasedak and other Iranian SMS providers?
The current implementation targets Ghasedak, which the package now calls directly instead of through the vendor SDK. The config-driven gateway design leaves room for more providers, but you should verify which gateways actually ship in the release you install. The overview advertises configurable gateways, so read the published config file for the supported driver list.
How do I send an OTP code with this Laravel SMS package?
Use the facade or the notification channel to send a short message to the user's phone number, then store the code server-side with an expiry and verify it on submit. The package is a transport layer, so OTP generation, throttling, and verification remain your application's responsibility. Keep the message template short and never log the code itself.
Can I use laravel-iran-sms as a Laravel notification channel?
Yes, the package ships a notification channel, so you can define a toSms method on your notification class and route it to a phone number. That keeps SMS alongside mail and database notifications in the same class. Confirm the channel class name and route method signature against the README for your pinned version, since the transport rewrite in 1.4.2 may have touched them.
How do I test SMS sending with laravel-iran-sms without hitting the real gateway?
If the package now uses Laravel's Http facade, you can fake outbound calls with Http::fake and assert on the recorded requests and payloads. If it still uses its own transport, you will need to swap the client in the container or mock the underlying class instead. Check which approach applies in your pinned version, because that change can silently break existing test suites.
What happens when the Ghasedak API returns an error or times out in this package?
The package owns the Ghasedak HTTP contract, so non-2xx responses should surface as exceptions you can catch around the send call. Timeout and retry defaults are configurable, but the exact exception classes and retry semantics should be verified against the source for your pinned version rather than assumed from the old vendor SDK behaviour. Wrap sends in try and catch, and route failures to a fallback or a queued retry.
Is it safe to run composer update with laravel-iran-sms 1.4.2?
Version 1.4.2 replaced the vendor Ghasedak SDK with a first-party implementation but was released as a patch, so automated updates such as Dependabot will pull it in with no review trigger. Pin the previous version, then upgrade deliberately in a branch with a full test run and a diff of the published config. Exercise one real send against a sandbox account before merging.
How does this package compare to using the Ghasedak SDK directly or other Laravel SMS packages?
Calling the Ghasedak SDK directly means one more dependency, but the vendor tracks its own API changes for you. This package trades that for a smaller dependency tree and one unified Laravel API, at the cost of the maintainer owning the HTTP contract. If you need several Iranian providers behind a single interface, confirm the gateway coverage in this package before committing.
Who maintains laravel-iran-sms and what happens when the Ghasedak API changes?
The package is maintained by Hooman Mirghasemi and, since 1.4.2, owns the Ghasedak request signing, endpoint URLs, and response parsing itself. Provider-side API changes must therefore be tracked by the maintainer, with no vendor SDK acting as an early warning. Check the repository's issue activity and release cadence before depending on it in production.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections