PHPackages                             wiensa/support-ticket - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wiensa/support-ticket

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

wiensa/support-ticket
=====================

Laravel 12 Support Ticket System Package

v2.1.0(1y ago)02MITPHPPHP ^8.2

Since May 1Pushed 1y ago1 watchersCompare

[ Source](https://github.com/wiensa/support-ticket)[ Packagist](https://packagist.org/packages/wiensa/support-ticket)[ RSS](/packages/wiensa-support-ticket/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (8)Versions (2)Used By (0)

Laravel Support Ticket System
=============================

[](#laravel-support-ticket-system)

Bu paket, Laravel uygulamalarınız için tam özellikli bir destek bileti sistemi sunar. Kullanıcılarınızın destek taleplerini kolayca yönetmenize olanak tanır.

Özellikler
----------

[](#özellikler)

- **Kullanıcı Talepleri**: Kullanıcılar destek talebi oluşturabilir, görüntüleyebilir ve yanıtlayabilir
- **Kategori Sistemi**: Talepleri farklı kategorilere ayırma
- **Dosya Ekleri**: Taleplere ve yanıtlara dosya ekleme desteği
- **Bildirimler**: E-posta bildirimleri ve webhook entegrasyonları
- **Admin Paneli**: Tüm destek taleplerini yönetme
- **Ayarlar Yönetimi**: Sistem ayarlarını admin panelinden değiştirme
- **API Desteği**: RESTful API entegrasyonu
- **Yetkilendirme**: Laravel Gate ve Policy sistemi ile tam entegrasyon
- **Morph İlişkileri**: Herhangi bir kullanıcı modeli ile kullanılabilir
- **Modern UI**: Bootstrap 5 ile responsive tasarım
- **Filtreleme ve Arama**: Gelişmiş arama ve filtreleme özellikleri

Ekran Görüntüleri
-----------------

[](#ekran-görüntüleri)

### Kullanıcı Arayüzü

[](#kullanıcı-arayüzü)

- **Talep Listesi**[![Talep Listesi](screenshots/ticket-list.png)](screenshots/ticket-list.png)
- **Talep Detayı**[![Talep Detayı](screenshots/ticket-detail.png)](screenshots/ticket-detail.png)
- **Talep Oluşturma**[![Talep Oluşturma](screenshots/create-ticket.png)](screenshots/create-ticket.png)

### Admin Arayüzü

[](#admin-arayüzü)

- **Admin Talep Listesi**[![Admin Talep Listesi](screenshots/admin-ticket-list.png)](screenshots/admin-ticket-list.png)
- **Admin Talep Detayı**[![Admin Talep Detayı](screenshots/admin-ticket-detail.png)](screenshots/admin-ticket-detail.png)

Kurulum
-------

[](#kurulum)

Composer aracılığıyla paketi yükleyin:

```
composer require wiensa/support-ticket
```

Paket yapılandırması, görünümleri ve migrationları yayınlamak için aşağıdaki komutu çalıştırın:

```
php artisan supportticket:install
```

Migrationları çalıştırın:

```
php artisan migrate
```

Temel verileri eklemek için seed komutunu çalıştırın:

```
php artisan db:seed --class=Database\\Seeders\\SupportTicketCategorySeeder
php artisan db:seed --class=Database\\Seeders\\SupportTicketSettingsSeeder
```

Kullanım
--------

[](#kullanım)

### Kullanıcı Modülü Entegrasyonu

[](#kullanıcı-modülü-entegrasyonu)

Kullanıcı modülünüze destek talepleri sistemini entegre etmek için, projenizin `routes/web.php` dosyasına aşağıdaki rotaları ekleyin:

```
// Destek talepleri için route'ları include et
Route::middleware(['web', 'auth'])->group(function () {
    Route::prefix('support')->name('support.')->group(function () {
        include base_path('vendor/wiensa/support-ticket/routes/web.php');
    });
});
```

Blade şablonlarınıza destek talepleri bağlantısını ekleyin:

```
Destek Taleplerim
```

### Admin Modülü Entegrasyonu

[](#admin-modülü-entegrasyonu)

Admin panel yapınıza destek talepleri yönetimini entegre etmek için, admin route yapılandırmanıza:

```
// Admin için destek talepleri route'larını include et
Route::middleware(['web', 'auth', 'admin'])->group(function () {
    Route::prefix('admin/support')->name('admin.support.')->group(function () {
        include base_path('vendor/wiensa/support-ticket/routes/admin.php');
    });
});
```

Ayrıca, config dosyasında admin middleware'i düzenleyebilirsiniz:

```
// config/supportticket.php
'admin_middleware' => ['web', 'auth', 'admin'], // Admin middleware
```

### Blade Komponentleri

[](#blade-komponentleri)

Paket, kullanmanız için bir dizi Blade komponenti içerir:

```

```

### Partial Bileşenleri

[](#partial-bileşenleri)

Paket, projenize entegre edebileceğiniz partial bileşenler içerir:

```

@include('partials.alerts')

@include('partials.category-filter')

@include('partials.attachment-form', ['ticketable' => $ticket])
```

### Servis Sınıfları

[](#servis-sınıfları)

Paketi programatik olarak kullanmak için aşağıdaki servis sınıflarını kullanabilirsiniz:

```
use Wiensa\SupportTicket\Services\TicketService;
use Wiensa\SupportTicket\Services\AttachmentService;
use Wiensa\SupportTicket\Services\NotificationService;

// Ticket Service
$ticketService = app(TicketService::class);
$ticket = $ticketService->createTicket([
    'subject' => 'Konu',
    'message' => 'Mesaj',
    'priority' => 'medium',
    'category' => $categoryId,
], $user);

// Attachment Service
$attachmentService = app(AttachmentService::class);
$attachment = $attachmentService->uploadFile($file, $ticket, $user);

// Notification Service
$notificationService = app(NotificationService::class);
$notificationService->sendNewTicketNotifications($ticket);
```

### Olaylar ve Dinleyiciler

[](#olaylar-ve-dinleyiciler)

Paket, aşağıdaki olayları tetikler:

- `Wiensa\SupportTicket\Events\TicketCreated` - Yeni talep oluşturulduğunda
- `Wiensa\SupportTicket\Events\TicketReplied` - Talebe yanıt verildiğinde
- `Wiensa\SupportTicket\Events\TicketClosed` - Talep kapatıldığında
- `Wiensa\SupportTicket\Events\TicketReopened` - Talep yeniden açıldığında
- `Wiensa\SupportTicket\Events\TicketStatusChanged` - Talep durumu değiştiğinde
- `Wiensa\SupportTicket\Events\AttachmentUploaded` - Dosya yüklendiğinde

Uygulamanızda bu olayları dinlemek için event listener'lar oluşturabilirsiniz.

### API Kullanımı

[](#api-kullanımı)

API endpointleri şunlardır:

- `GET /api/support/tickets` - Tüm talepleri listeler
- `GET /api/support/tickets/{id}` - Belirli bir talebi görüntüler
- `POST /api/support/tickets` - Yeni talep oluşturur
- `POST /api/support/tickets/{id}/replies` - Talebe yanıt ekler
- `PUT /api/support/tickets/{id}` - Talebi günceller
- `DELETE /api/support/tickets/{id}` - Talebi siler
- `POST /api/support/tickets/{id}/close` - Talebi kapatır
- `POST /api/support/tickets/{id}/reopen` - Talebi yeniden açar
- `POST /api/support/attachments` - Dosya ekler
- `GET /api/support/categories` - Kategorileri listeler

API kullanımı örneği:

```
// Yeni talep oluşturma
$response = $client->post('/api/support/tickets', [
    'json' => [
        'subject' => 'API Test',
        'message' => 'Bu bir API test talebidir',
        'category' => $categoryId,
        'priority' => 'high',
    ],
    'headers' => [
        'Authorization' => 'Bearer ' . $token,
    ],
]);
```

Yapılandırma
------------

[](#yapılandırma)

`config/supportticket.php` dosyasında aşağıdaki ayarları özelleştirebilirsiniz:

- `route_prefix` - Rota öneki
- `middleware` - Rotalarda kullanılacak middleware
- `admin_middleware` - Admin rotalarında kullanılacak middleware
- `events` - Olay yapılandırması
- `attachments` - Dosya eki yapılandırması
    - `max_size` - Maksimum dosya boyutu (MB)
    - `allowed_types` - İzin verilen dosya tipleri
    - `storage_disk` - Depolama diski
    - `storage_path` - Depolama yolu
- `categories` - Kategori yapılandırması
    - `allow_create` - Kullanıcıların kategori oluşturmasına izin ver
    - `default` - Varsayılan kategori ID'si
- `auto_close` - Otomatik kapanma ayarları
    - `enabled` - Aktif/Pasif
    - `days` - Otomatik kapanma günü
- `admin_emails` - Bildirim alacak admin e-postaları

Özelleştirme
------------

[](#özelleştirme)

### Views

[](#views)

Viewları özelleştirmek için:

```
php artisan vendor:publish --tag=supportticket-views
```

### Config

[](#config)

Yapılandırma dosyasını özelleştirmek için:

```
php artisan vendor:publish --tag=supportticket-config
```

### Translations

[](#translations)

Dil dosyalarını özelleştirmek için:

```
php artisan vendor:publish --tag=supportticket-lang
```

### Assets

[](#assets)

CSS ve JS dosyalarını özelleştirmek için:

```
php artisan vendor:publish --tag=supportticket-assets
```

Değişiklik Geçmişi
------------------

[](#değişiklik-geçmişi)

Değişiklik geçmişi için [CHANGELOG.md](CHANGELOG.md) dosyasına bakın.

Lisans
------

[](#lisans)

Bu paket MIT lisansı altında lisanslanmıştır.

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance48

Moderate activity, may be stable

Popularity2

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

383d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f9ee4d04b7a32566a0656daaf696629a761aef649a1eb2e2ac8816c0f4bea8b8?d=identicon)[wiensa](/maintainers/wiensa)

---

Top Contributors

[![wiensa](https://avatars.githubusercontent.com/u/155260864?v=4)](https://github.com/wiensa "wiensa (3 commits)")

---

Tags

laravelpackagesupportcustomer servicehelpdeskticketlaravel support ticket

###  Code Quality

TestsPest

Static AnalysisPHPStan, Rector

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/wiensa-support-ticket/health.svg)

```
[![Health](https://phpackages.com/badges/wiensa-support-ticket/health.svg)](https://phpackages.com/packages/wiensa-support-ticket)
```

###  Alternatives

[barryvdh/laravel-ide-helper

Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.

14.9k123.0M687](/packages/barryvdh-laravel-ide-helper)[tehwave/laravel-achievements

Simple, elegant Achievements the Laravel way

7012.8k](/packages/tehwave-laravel-achievements)[binshops/laravel-ticket

A simple ticketing system for Laravel 5.1 – 5.8 and 6.\* - 7.\* - 8.\* - 9.\* - 10.\* -which integrates smoothly with Laravel default users and auth system

261.0k](/packages/binshops-laravel-ticket)[balping/ticketit-app

Ticketit, the simple helpdesk tickets system pre-installed in Laravel

136.6k](/packages/balping-ticketit-app)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
