ส่งการแจ้งเตือนไปยังผู้ใช้โดยใช้เทมเพลตการแจ้งเตือนและช่องทางการแจ้งเตือนหลายช่องทาง รองรับ Filament Native Notification Service พร้อมมาโคร และบูรณาการอย่างสมบูรณ์กับการแจ้งเตือนของพนักงานบริการ FCM
ส่งการแจ้งเตือนไปยังผู้ใช้
ใช้การแจ้งเตือนเนทิฟ Filament
ใช้เทมเพลตการแจ้งเตือน
การบูรณาการพนักงานบริการ FCM เต็มรูปแบบ
ใช้ช่องทางการแจ้งเตือนหลายช่อง
API เพื่อรับการแจ้งเตือน
ซ่อนทรัพยากรการแจ้งเตือน
ใช้ไดรเวอร์หย่อน
ใช้ไดร์เวอร์ Discord
ใช้ไดร์เวอร์รีเวิร์บ
ใช้ไดรเวอร์ SMS Misr
ใช้ไดร์เวอร์อีเมล์
ใช้ไดร์เวอร์ฐานข้อมูล
ใช้ไดรเวอร์ MessageBird
ก่อนใช้แพ็คเกจนี้ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งแล้ว
Filament Spatie แปลได้
ไลบรารีสื่อ Filament Spatie
ศูนย์กลางการตั้งค่าเส้นใย
ผู้แต่งต้องการการแจ้งเตือน Tomatophp/Filament
ตอนนี้คุณต้องเผยแพร่และย้ายตารางการตั้งค่า
ผู้จำหน่ายช่าง PHP: เผยแพร่ --provider = "SpatieLaravelSettingsLaravelSettingsServiceProvider" --tag = "การโยกย้าย"
หลังจากติดตั้งแพ็คเกจของคุณแล้ว โปรดรันคำสั่งนี้
การแจ้งเตือนไส้หลอด php artisan: ติดตั้ง
หากคุณไม่ได้ใช้แพ็คเกจนี้เป็นปลั๊กอิน โปรดลงทะเบียนปลั๊กอินบน /app/Providers/Filament/AdminPanelProvider.php
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() -
เพื่อตั้งค่ารุ่นใดก็ได้เพื่อรับการแจ้งเตือนจากคุณ
<?phpnamespace AppModels;ใช้ IlluminateContractsAuthMustVerifyEmail;ใช้ IlluminateDatabaseEloquentFactoriesHasFactory;ใช้ IlluminateFoundationAuthUser เป็น Authenticatable;ใช้ IlluminateNotificationsNotifiable;ใช้ LaravelFortifyTwoFactorAuthenticatable;ใช้ LaravelJetstreamHasProfilePhoto;ใช้ LaravelSanctumHasApiTokens;ใช้ SpatiePermissionTraitsHasRoles; ใช้ TomatoPHPFilamentAlertsTraitsInteractsWithNotifications; ผู้ใช้คลาสขยายการรับรองความถูกต้องได้{ใช้ HasApiTokens; ใช้ HasFactory; ใช้ HasProfilePhoto; ใช้การแจ้งเตือน; ใช้ TwoFactorAuthenticatable; ใช้ HasRoles; ใช้ InteractsWithNotifications; -
และคุณต้องตั้งค่าสำหรับ FCM เพื่อรับการแจ้งเตือนแบบเรียลไทม์
การแจ้งเตือนจะทำงานบนคิว ดังนั้นคุณต้องเรียกใช้งานผู้ปฏิบัติงานคิวเพื่อส่งการแจ้งเตือน
คิวช่าง php:work.php
คุณสามารถใช้การแจ้งเตือนแบบเนทีฟของเส้นใยและเราเพิ่ม macro
ให้กับคุณ
ใช้ FilamentNotificationsNotification;Notification::make('send') ->หัวข้อ('การแจ้งเตือนการทดสอบ') ->body('นี่คือการแจ้งเตือนการทดสอบ') -> ไอคอน ('heroicon-o-bell') ->สี('ความสำเร็จ') ->การกระทำ ([เส้นใยการแจ้งเตือนการกระทำการกระทำ::make('มุมมอง') ->ป้ายกำกับ('ดู') ->url('https://google.com') ->เครื่องหมาย AsRead() - ->sendToDiscord(รับรองความถูกต้อง()->ผู้ใช้()) ->sendToEmail(รับรองความถูกต้อง()->ผู้ใช้()) -> ออกอากาศ (รับรองความถูกต้อง () -> ผู้ใช้ ()) -> sendToDatabase (รับรองความถูกต้อง () -> ผู้ใช้ ()) -> sendToSlack (รับรองความถูกต้อง () -> ผู้ใช้ ()) ->sendToFCM(รับรองความถูกต้อง()->ผู้ใช้())
ในการสร้างเทมเพลตใหม่ คุณสามารถใช้เทมเพลต CRUD และตรวจสอบให้แน่ใจว่าคีย์เทมเพลตไม่ซ้ำกัน เนื่องจากคุณจะใช้คีย์ดังกล่าวในการแจ้งเตือนทุกครั้ง
ในการส่งการแจ้งเตือนคุณต้องใช้ตัวช่วยของเรา SendNotification::class like
SendNotification::make($template->ผู้ให้บริการ) ->เทมเพลต($เทมเพลต->คีย์) -> ค้นหาชื่อเรื่อง ($matchesTitle) ->replaceTitle($titleFill) -> ค้นหาร่างกาย ($matchesBody) ->แทนที่ร่างกาย($titleBody) -> รุ่น (ผู้ใช้ :: คลาส) ->id(ผู้ใช้::first()->id) -> ความเป็นส่วนตัว ('ส่วนตัว') ->ไฟ();
โดยที่ $template
ถูกเลือกของเทมเพลตด้วยคีย์ และ $matchesTitle และ $matchesBody คืออาร์เรย์ของรายการที่ตรงกันเพื่อแทนที่เทมเพลต และ $titleFill และ $titleBody คืออาร์เรย์ของค่าที่จะแทนที่รายการที่ตรงกัน
คุณสามารถใช้ช่องทางการแจ้งเตือนได้หลายช่องทางเช่น
อีเมล
เอสเอ็มเอส
เอฟซีเอ็ม
พัดโบก
ฐานข้อมูล
หย่อน
ความไม่ลงรอยกัน
มันสามารถทำงานกับวิธีการของผู้ใช้โดยตรงเช่น
$user->notifySMSMisr(สตริง $message);$user->notifyEmail(string $message, ?string $subject = null, ?string $url = null);$user->notifyFCMSDK(string $message, string $type= 'เว็บ', ?string $title=null, ?string $url=null, ?string $image=null, ?string $icon=null, ?array $data=[]);$user->notifyDB(สตริง $message, ?string $title=null, ?string $url =null);$user->notifySlack(สตริง $title,string $message=null,?string $url=null, ?string $image=null, ?string $webhook=null);$user->notifyDiscord(string $title,string $message=null,?string $url=null, ?string $image=null, ?string $webhook=null);
เพื่อให้การแจ้งเตือน FCM ทำงานได้ คุณต้องติดตั้ง Filament Settings Hub และอนุญาตให้ใช้ Setting Hub บนปลั๊กอิน
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() ->useSettingsHub() ->useFCM() -
กว่าที่คุณต้องติดตั้งแพ็คเกจ filament-fcm
โดยใช้คำสั่งนี้
ผู้แต่งต้องการ Tomatophp/Filament-fcm
และเพิ่มปลั๊กอินของผู้ให้บริการ
->ปลั๊กอิน(TomatoPHPFilamentFcmFilamentFcmPlugin::make())
ตอนนี้คุณต้องอัปเดตการกำหนดค่า
# โครงการ FirebaseFIREBASE_API_KEY=FIREBASE_AUTH_DOMAIN=FIREBASE_DATABASE_URL=FIREBASE_PROJECT_ID=FIREBASE_STORAGE_BUCKET=FIREBASE_MESSAGING_SENDER_ID=FIREBASE_APP_ID=FIREBASE_MEASUREMENT_ID=# Firebase Cloud MessagingFIREBASE_VAPID=# เสียงแจ้งเตือน FirebaseFCM_ALERT_SOUND=
กว่ารันคำสั่งนี้
php artisan fil-fcm: ติดตั้ง
มันจะสร้างผู้ปฏิบัติงาน FCM ให้คุณเพื่อให้การแจ้งเตือนทำงานบนพื้นหลัง
หากต้องการซ่อนทรัพยากรการแจ้งเตือนจากแถบด้านข้างคุณสามารถใช้วิธีปลั๊กอิน hideNotificationsResources
เช่น
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() -> ซ่อนทรัพยากรการแจ้งเตือน () -
หากต้องการใช้ไดรเวอร์ slack คุณต้องตั้งค่า slack webhook บนฮับการตั้งค่าและใช้วิธีการปลั๊กอิน useSlack
เช่น
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() ->useSlack() -
ตอนนี้ในไฟล์ .env
ของคุณให้เพิ่มคีย์ SLACK_WEBHOOK
ด้วย webhook URL
หากต้องการใช้ไดรเวอร์ discord คุณต้องตั้งค่า discord webhook บนฮับการตั้งค่าและใช้วิธีการปลั๊กอิน useDiscord
like
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() ->useDiscord() -
ตอนนี้ในไฟล์ .env
ของคุณ ให้เพิ่มคีย์ DISCORD_WEBHOOK
ด้วย URL ของ webhook
เรารองรับ API บางตัวเพื่อรับการแจ้งเตือนและดำเนินการบางอย่างที่คุณสามารถค้นหาได้ภายใต้เส้นทาง api/notifications
คุณสามารถเปลี่ยนโมเดลผู้ใช้ได้โดยใช้วิธีปลั๊กอิน apiModel
เช่น
->ปลั๊กอิน (TomatoPHPFilamentAlertsFilamentAlertsPlugin::make() ->apiModel(ผู้ใช้::คลาส) -
คุณสามารถเผยแพร่ไฟล์ปรับแต่งได้โดยใช้คำสั่งนี้
ผู้ขาย php ช่างฝีมือ: เผยแพร่ --tag = "เส้นใย-alerts-config"
คุณสามารถเผยแพร่ไฟล์มุมมองได้โดยใช้คำสั่งนี้
ผู้ขาย php ช่างฝีมือ: เผยแพร่ --tag = "เส้นใย-alerts-views"
คุณสามารถเผยแพร่ไฟล์ภาษาได้โดยใช้คำสั่งนี้
ผู้ขาย php ช่างฝีมือ: เผยแพร่ --tag = "เส้นใย-alerts-lang"
คุณสามารถเผยแพร่ไฟล์การโยกย้ายได้โดยใช้คำสั่งนี้
ผู้ขาย php ช่างฝีมือ: เผยแพร่ --tag = "เส้นใย-alerts-migrations"
ชำระเงิน TomatoPHP ที่ยอดเยี่ยมของเรา