ivastly/ ats-calendar-integration
从任何ATS系统导出假期到任何日历系统,例如:Securex => MS Outlook Calendar
v1.0.1
2019-10-06 21:50 UTC
Requires
- php: ^7.1
- ext-readline: *
- nesk/puphpeteer: ^1.6
- php-ews/php-ews: ~1.0
This package is auto-updated.
Last update: 2024-08-29 05:07:11 UTC
README
惊讶地看到你的关键同事又一次出去度假了?是的,两个月前就已经有邮件提到了这件事.. 通常我们会在同一分钟忘记这件事,等到太迟的时候才意识到。你不想另一个假期再次破坏你的冲刺,对吧?
那么欢迎一个解决方案,可以将任何HR系统中的所有假期同步到任何日历,这样你总是知道谁会离开!
如何开始
Docker方式
- 创建并填写
app/config/config.php文件
cp app/config/config.example.php app/config/config.php nano app/config/config.php
- 将docker化脚本添加到cron任务中
docker run --rm --interactive --tty --volume $PWD:/app composer install docker-compose run puphpeteer php sync_once.php # put this on cron for every 5 minutes
经典方式
- 安装node和puppeteer
npm install @nesk/puphpeteer
- 安装依赖项
composer install
- 创建并填写
app/config/config.php文件
cp app/config/config.example.php app/config/config.php nano app/config/config.php
- 最后,在后台运行脚本。它将所有假期导出到你的Outlook日历中。
screen -S securex-outlook-sync
php sync.php
安全问题
任何 -> MS Exchange集成
MS Exchange API(称为Exchange Web Services)需要指定纯文本用户密码。为了解决这个问题,脚本启动时会请求密码。因此,密码永远不会以纯文本形式存储在磁盘或GitHub上。这使得解决方案准备好企业级使用,并且100%符合IT安全规范。
已知限制
- 仅支持 Securex HR Online -> MS Exchange Calendar
- 请耐心等待,本地Outlook客户端需要一些时间来同步日历事件(< 1分钟)
待办事项
- 如果从Securex中删除假期事件,则从日历中删除假期事件
- 支持自定义观察期(目前硬编码为1个月)
- 如果假期超过1周,它将表示为多个日历事件 - 修复它
- 支持更多日历 - Google Calendar,Zoho Calendar等
- 支持更多ATS - BambooHR,Recruitee,Manatal,Oracle Taleo等
docker化- 测试
许可证
查看LICENSE文件