Súbory priamo na tikete sú v súkromnej skupine media-library:
$media = Tickets::for($ticket)->by($agent)->attachments()->add($request->file('log'));
Tickets::for($ticket)->attachments()->remove($media); // by model or uuid; another owner's is refused
Tickets::for($ticket)->attachments()->all();- Skupina je tickets.attachments.bucket na tickets.attachments.disk (local — nikdy predvolený, webom servírovaný public z media-library), s tickets.attachments.mimes a max_kb.
- Sťahovanie ide cez dočasné URL — vlastné URL disku alebo podpísanú streamovaciu routu media-library. API resources ich vytvárajú s platnosťou 5 minút.
- Pridanie aj odobratie zapíše záznam aktivity a spustí TicketAttachmentAdded / TicketAttachmentRemoved; remove() berie model alebo uuid a médium iného vlastníka odmietne.
- Žiadatelia prílohy tiketu vidia; súbory len pre agentov dávajte do príloh interných poznámok. V API sú nahrávanie a odoberanie príloh na úrovni tiketu len pre agentov — žiadatelia prikladajú súbory k odpovediam.
- Prílohy odpovedí a poznámok sú prílohy komentárov a riadia sa comments.media.* z balíka comments. tickets:doctor overí, že disk príloh nie je public a že sa dajú vytvoriť URL na stiahnutie.
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.