承接 hwkdo/intranet-app-tickets 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

hwkdo/intranet-app-tickets

最新稳定版本:v0.3

Composer 安装命令:

composer require hwkdo/intranet-app-tickets

包简介

Generated app: Tickets

README 文档

README

Zammad-Integration für das Intranet: Benutzer können ihre Support-Tickets einsehen und beantworten. Agenten arbeiten weiterhin im Zammad-UI.

Installation

composer require hwkdo/intranet-app-tickets
php artisan migrate
php artisan intranet-app:sync-settings
php artisan intranet-app:sync-permissions --all

Umgebungsvariablen

ZAMMAD_URL=https://ticket.hwkdo.com
ZAMMAD_HTTP_TOKEN=your-api-token
WEBHOOK_ZAMMAD_SECRET=your-webhook-hmac-secret

Optional:

ZAMMAD_DEBUG=false
INTRANET_APP_TICKETS_USER_MODEL=App\Models\User

Zammad Webhook einrichten

  1. In Zammad unter Verwalten → Webhooks einen neuen Webhook anlegen.
  2. Endpoint: {APP_URL}/webhooks/zammad
  3. HMAC-Token setzen (gleicher Wert wie WEBHOOK_ZAMMAD_SECRET).
  4. Unter Verwalten → Trigger Webhook-Trigger anlegen, z. B.:
    • Agent-Antworten: Artikel erstellt, Sichtbarkeit = öffentlich, Sender = Agent
    • Statusänderungen: Ticket aktualisiert, z. B. Status = geschlossen (ohne Artikel im Payload)
    • Aktion jeweils: Webhook auslösen

Optional INTRANET_APP_TICKETS_WEBHOOK_NOTIFY_STATES=closed,open setzen, um nur bestimmte Status zu benachrichtigen (Standard: alle).

Webhook-Debugging

Eingegangene Webhooks (gespeichert nach gültiger Signatur) unter:

  • /apps/tickets/webhooks (Permission manage-app-tickets)

Zusätzlich in der allgemeinen Admin-Webhook-Übersicht (/admin/webhooks), sofern der Eintrag gespeichert wurde.

Wichtig: Der Webhook-Job läuft über die Queue (QUEUE_CONNECTION=redis). Horizon bzw. Queue-Worker müssen laufen, sonst bleibt der Eintrag in webhook_calls ohne Benutzer-Benachrichtigung.

Ticket-Kategorien einrichten

Nach der Migration die Standard-Kategorien seeden:

php artisan intranet-app-tickets:seed-categories

Im Admin-Bereich (/apps/tickets/admin → Tab Kategorien) pro Kategorie den Übertragungsweg konfigurieren:

  • Zammad API: Zammad-Gruppe aus Dropdown wählen (Gruppen werden per API geladen)
  • E-Mail: Zieladresse eintragen (Standard für Moodle)
  • Optional: Genehmigung aktivieren und Genehmigungs-Rollen zuweisen

Funktionen

  • Ticketliste (offen / geschlossen / alle) per Zammad API + eigene Anfragen („Zur Genehmigung“)
  • Tickets erstellen mit kategoriespezifischen Flux-Formularen
  • Genehmigungsworkflow mit Rollen pro Kategorie
  • Übertragung per Zammad API oder E-Mail (konfigurierbar pro Kategorie)
  • Ticketdetail mit öffentlichem Verlauf und Bearbeiter-Info
  • Antworten als Kunde (setOnBehalfOfUser)
  • Anhang-Download über die App
  • Webhook-Benachrichtigungen bei Agent-Antworten (Reverb + Task-Badge)
  • Webhook-Übersicht mit Verarbeitungsstatus und Live-Updates per Reverb/Echo

Berechtigungen

  • see-app-tickets — App nutzen
  • manage-app-tickets — Admin-Bereich

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-11

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固