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

Gammu Laravel Package

laravel-notification-channels/gammu

A Laravel notification channel for sending SMS messages through Gammu, the open-source SMS gateway. Integrate Gammu into your Laravel app and deliver notifications as text messages using Laravel’s familiar notification API.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Architecture fit: Narrow and tactical. Laravel’s notification-channel abstraction is a reasonable fit for SMS, but Gammu is an on-prem hardware/CLI integration, not a managed messaging API. This package is best treated as an edge adapter for low-volume internal or air-gapped alerts—not a strategic customer-messaging layer.
  • Integration feasibility: Feasible only in a Laravel 5.3-era codebase running on a Linux host with a Gammu-compatible GSM modem, SIM, and Gammu installed. Modern Laravel/PHP, cloud, serverless, or containerized deployments will likely require a fork/port and device passthrough.
  • Technical risk: High. Last release was 2016-12-19, with 14 stars, 0 dependents, and no apparent maintenance. Expect outdated Composer constraints, no security updates, shell/process coupling, hardware failure modes, and unclear queue/retry/delivery-receipt behavior.
  • Key questions: Is the app truly locked to Laravel 5.3, or can this be isolated as a sidecar gateway? What modem/OS/Gammu version is supported? What volume, latency, and delivery-receipt requirements exist? Who owns SIM, carrier compliance, and hardware operations? Is a managed SMS provider acceptable as fallback? Can we fork and test the channel rather than depend on upstream?

Integration Approach

  • Stack fit: Only PHP/Laravel + Linux + physical modem/SIM + Gammu. Poor fit for Kubernetes, serverless, multi-tenant SaaS, or any architecture without reliable device access. Prefer exposing Gammu as an internal SMS gateway service and calling it from Laravel.
  • Migration path: Do not adopt the package unmodified as a long-term dependency. Treat it as a reference implementation: port the channel to the current Laravel NotificationChannel contract, or vendor/fork and pin it. In a legacy app, isolate it behind an internal SmsSender interface.
  • Compatibility: Built for Laravel 5.3; expect PHP 5.6/7.0-era constraints. Verify Composer requirements and Gammu compatibility before estimating effort. Modern Laravel support is not assumed.
  • Sequencing: (1) validate manual Gammu send/receive on target hardware; (2) spike the package in a disposable legacy environment; (3) decide fork versus rewrite as a thin adapter; (4) wrap with queueing, retry, idempotency, and logging; (5) add health checks and fallback provider; (6) pilot low-volume internal alerts; (7) roll out only with explicit reliability acceptance criteria.

Operational Impact

  • Maintenance: Internal ownership required. No upstream maintenance means budgeting for fork upkeep, dependency patching, and hardware lifecycle.
  • Support: No vendor or meaningful community support. Operational runbooks must cover modem, SIM, permissions, host, and Gammu process management.
  • Scaling: Poor horizontal scalability. Throughput is constrained by modem serial capacity, SIM/carrier limits, and host affinity. Scale via queued gateway workers and multiple modems, not by adding Laravel replicas.
  • Failure modes: Modem offline, SIM inactive or out of credit, signal loss, hung gammu process, device lock/permission issues, duplicate or lost messages, missing delivery receipts, and host reboot. Require health checks, dead-letter queues, alerting, and fallback.
  • Ramp-up: Small code surface, but nontrivial hardware/ops knowledge. Plan a test SIM, on-call ownership, runbook, and acceptance criteria for latency and delivery reliability before committing.
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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console