{"id":25008089,"url":"https://github.com/vend/phoneduty","last_synced_at":"2025-10-20T00:30:34.231Z","repository":{"id":19578747,"uuid":"22828481","full_name":"vend/phoneduty","owner":"vend","description":"Twilio/PagerDuty integration to forward inbound calls to the currently on-call engineer","archived":false,"fork":false,"pushed_at":"2024-01-10T03:04:53.000Z","size":23,"stargazers_count":26,"open_issues_count":7,"forks_count":35,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-04-15T01:15:33.495Z","etag":null,"topics":["backstage-exclude"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vend.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-11T05:54:32.000Z","updated_at":"2024-03-11T03:09:01.000Z","dependencies_parsed_at":"2022-08-24T13:40:57.165Z","dependency_job_id":null,"html_url":"https://github.com/vend/phoneduty","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vend%2Fphoneduty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vend%2Fphoneduty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vend%2Fphoneduty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vend%2Fphoneduty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vend","download_url":"https://codeload.github.com/vend/phoneduty/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237231308,"owners_count":19276159,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backstage-exclude"],"created_at":"2025-02-05T02:56:55.121Z","updated_at":"2025-10-20T00:30:33.954Z","avatar_url":"https://github.com/vend.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Phoneduty\n\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/vend/phoneduty/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/vend/phoneduty/?branch=master)\n[![Build Status](https://scrutinizer-ci.com/g/vend/phoneduty/badges/build.png?b=master)](https://scrutinizer-ci.com/g/vend/phoneduty/build-status/master)\n\n[![Deploy](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy)\n\nThis is a Twilio Twimlet designed to be hosted on Heroku. It will query PagerDuty to find the currently on-call engineer and forward the inbound call to them.\n\nIt needs a few environment variables defined to work:\n\n    PAGERDUTY_SCHEDULE_ID\n    PAGERDUTY_API_TOKEN\n    PAGERDUTY_DOMAIN\n\nThose names should be fairly self-explanatory. The domain is the piece of your PagerDuty URL that is specific to you \ni.e.  https://[PAGERDUTY_DOMAIN].pagerduty.com/\n\nYou can also optionally set PHONEDUTY_ANNOUNCE_TIME, which if set to a TRUEish value will include the current\ntime of the engineer being called as part of the answering message. This may help raise awareness that you are potentially getting\nsomebody out of bed, so be gentle :D\n\n\n# Usage\n\n- Configure your on-call schedule in PagerDuty\n- Ensure your rostered staff have a 'phone' contact method defined\n- Note the schedule ID of the roster you wish to use.\n- Create and note an API key in PagerDuty\n- Deploy this app to Heroku.\n- Configure the relevant environment variables above in Heroku\n- Buy a phone number from Twilio\n- Add the generated Heroku URL  as a \"Request URL\" for the Voice property of this Twilio number\n- Call the external Twilio number. You should get a voice prompt telling you who is on call, what time it is in their timezone currently, and then you will get connected to the rostered engineer.\n\n\n# Relevant Reading\n\n## Twilio\n\nTwilio TwiML reference\n\u003chttps://www.twilio.com/docs/api/twiml\u003e\n\nSome sample Twimlets:\n\u003chttps://www.twilio.com/labs/twimlets\u003e\n\n\n## PagerDuty \n\nPagerDuty API \n\u003chttp://developer.pagerduty.com/documentation/integration/events\u003e\n\n## Heroku\n\nSetting up and deploying PHP apps on Heroku\n\u003chttps://devcenter.heroku.com/articles/getting-started-with-php\u003e\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvend%2Fphoneduty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvend%2Fphoneduty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvend%2Fphoneduty/lists"}