{"_id":"@brewery/parse-job-scheduler","_rev":"4-3de8fd9dd70baef480eec8454cf9e49c","time":{"1.0.0":"2020-07-28T14:04:14.947Z","created":"2020-07-28T14:11:46.271Z","1.0.1":"2020-07-28T14:11:48.209Z","modified":"2022-04-04T20:31:51.382Z"},"name":"@brewery/parse-job-scheduler","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@brewery/parse-job-scheduler","version":"1.0.1","description":"Parse server jobs scheduler","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":["parse-server","jobs"],"author":{"name":"Ronald DC"},"license":"MIT","dependencies":{"cron":"^1.8.2","moment":"^2.27.0","parse":"^2.15.0","request":"^2.88.2","request-promise":"^4.2.6"},"gitHead":"af133960bd8a4ba04ec39dc24cf4cd1b4b23f42b","_id":"@brewery/parse-job-scheduler@1.0.1","_nodeVersion":"12.18.2","_npmVersion":"6.14.5","dist":{"integrity":"sha512-RWx6IgsAYg297djq2gng6T62wQ0pHuEOMbSf9JN6TbWUU5ABy3J/dQI+qfsXTKy08m3bnHsyIFZXrjAHrgtwyg==","shasum":"b11cd3e901f305967b32bb12ec006e953714e5b9","tarball":"https://registry.npmjs.org/@brewery/parse-job-scheduler/-/parse-job-scheduler-1.0.1.tgz","fileCount":4,"unpackedSize":7810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIDIkCRA9TVsSAnZWagAAEE4QAKTSknXBhOBLAZRO6hwT\n038VV18F4JA6fKABfpqtdX1Rps7xrDbcrDz/mZftwGFM0nMG9vXnJqDFoGj3\nfT4TtI3hoGUdmpc0pgUuqm92HP5EXw38zI4nMHQMNdnWscEK4SJcvgZnIUPK\nx+XOWQHiNUHzx3uwaMG5O/nVm4LdAEqUo448o0Oub73F3+jZkUTPDEufUpdV\ndPOq7MtC6IApTvJ8rzprOsGJGz+Reru2OpRx2Bcll7SheLAC1Orkc0orQKxl\nGkmnVupxWiGCuUbJkoB4om/75YtTUBLzFg1EbqvTvYwpBCHoHRsfsd0xEOsH\nr1Km1KiyL2jv8B2gQmVu8pXT6h2z/IC1Dep0GVKM7yj2COTYKgT/1A0wN4UU\nI6pXqYEtQCCJoB8auQ5lXoqjQJLRuLVecUCYLl6zUyZalp9LNmL7574xE6fC\nCwtAYzsfmV55DS2IYunfSAIdYV+95j3dLfHpp5DqA1swck0hdMZx7TA8WHvc\n0jWTSAJMXhHxClL77zduWcgW/Gyt3o1IxvKHE2/hmmHkvNmNfWJXvy/BcqvH\nZXSigvEbLfWUoxwNujsHdaQDvMdSBO2VVbCeewGMssTLgAOtMnal1YTAlsh7\nYupqxYwoY0qSYlqNNNhdyCu4VSP5CZb7mKoEpF1ziQC92fmVb+TKKJXnDzXe\nPJtg\r\n=++6C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKSQClYCJP93Gcpuvvi1EaccvA17IR2vxhwZTw48YMJgIgOAzC0BxJSQ/wlupD6iIh2NzVimo3ZgwO6HtY4mDiOB0="}]},"maintainers":[{"name":"excelsior.mante","email":"excelsior.mante@gmail.com"},{"name":"jcalado","email":"jcalado@stratpoint.com"},{"name":"brewery-apps","email":"apps@stratpoint.dev"}],"_npmUser":{"name":"brewery-apps","email":"apps@stratpoint.dev"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/parse-job-scheduler_1.0.1_1595945508084_0.4254751300159876"},"_hasShrinkwrap":false}},"maintainers":[{"name":"excelsior.mante","email":"excelsior.mante@gmail.com"},{"name":"jcalado","email":"jcalado@stratpoint.com"},{"name":"brewery-apps","email":"apps@stratpoint.dev"}],"description":"Parse server jobs scheduler","keywords":["parse-server","jobs"],"author":{"name":"Ronald DC"},"license":"MIT","readme":"# Parse Server Job Scheduler\n\n## Purpose of the library\nBy default, *_JobSchedule* objects created on self-hosted Parse servers are not handled by the Parse server library.\nThis library is a minimalist tool that fetches all *_JobSchedule* objects and schedules cron tasks that will run the scheduled jobs.\n\n## How to use it?\n\n### Install the library\n\n```sh\n$ npm install --save @brewery/parse-job-scheduler\n```\n\n### Add these lines your Parse Cloud Code main file \n\n```js\n// Import the library\nconst JobsScheduler = require('@brewery/parse-job-scheduler')\n\n// Initialize a Parse instance\nJobsScheduler.init({\n    serverURL: 'http://localhost:1337/parse',\n    appId: 'myAppId',\n    masterKey: 'masterKey'\n})\n\n// Recreates all crons when the server is launched\nJobsScheduler.recreateSchedule()\n\n// Recreates schedule when a job schedule has changed\nParse.Cloud.afterSave('_JobSchedule', async (request) => {\n  JobsScheduler.recreateSchedule(request.object)\n})\n\n// Destroy schedule for removed job\nParse.Cloud.afterDelete('_JobSchedule', async (request) => {\n  JobsScheduler.destroySchedule(request.object)\n})\n```","readmeFilename":"README.md"}