许多团队希望让访客可以直接预订会议或演示,但既不想为Calendly这类付费服务买单,也不希望引入外部组件。更关键的是,预订数据最好存放在自己的数据库里,并且能无缝接入应用自身的业务流程,而不是停留在一个孤立的iframe中。Wireschedule正是为此而生的自托管方案。
Wireschedule是一个面向Laravel的自托管会议调度器。可用性规则保存在配置文件里,预订记录直接落入你自己的数据表,前端部分则是一个可随意放置的Livewire组件。安装过程相当快捷。
作为标准Composer包,Wireschedule的服务提供者会自动注册迁移文件,无需额外发布即可运行:composer require edulazaro/wireschedule 然后执行 php artisan migrate。唯一的手动步骤是样式表:你需要将其导入自己的CSS包,否则组件会以无样式状态显示。没有独立的JavaScript构建,Livewire视图自带内联Alpine,因此直接复用已有的Livewire和Alpine环境。环境要求为PHP 8.2+、Laravel 11+以及Livewire 3。
在使用上,只需在希望访客预订的地方放置Blade组件,例如 ,其中事件名对应你在配置文件中定义的键。外观可在根元素上设置一次主题,Wireschedule与同系列组件共享一个主题属性,内置studio、minimal、brutalist、glass、neon等十一套主题。
配置每个事件时,本质上是一张每周可用性映射表加上若干预订规则。映射以ISO星期几为键,1代表周一,7代表周日,每一天对应一个HH:MM时段列表。duration和buffer以分钟计,days_ahead限定可预订天数,而min_notice则指定了最短提前通知时间。
有了Wireschedule,Laravel开发者不必再依赖外部日历服务,就能将会议预订完全掌握在自己手中,同时让预订数据直接融入现有应用管道。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.