feat: add Plivo SMS and voice skills#86
Open
sarveshpatil-plivo wants to merge 2 commits into
Open
Conversation
Adds a plivo-sms skill under skills/ so an agent can send an SMS through Plivo. It follows the same layout as the existing gmail-email skill, a SKILL.md with YAML frontmatter plus a script in scripts/. The script sends an SMS through the Plivo Messages API. It reads PLIVO_AUTH_ID and PLIVO_AUTH_TOKEN from the environment or a .env file in the skill directory, and takes from, to and text as arguments. It uses only the Python standard library so there is nothing extra to install. Verified against a live Plivo account, the message was delivered.
Adds a plivo-voice skill that places an outbound call through the Plivo Call API, completing the SMS and voice pair from the issue. Same layout as plivo-sms and gmail-email, a SKILL.md plus a script under scripts/. Reads PLIVO_AUTH_ID and PLIVO_AUTH_TOKEN from the environment or a .env file, takes from, to and an answer URL, and uses only the Python standard library. When the call connects Plivo runs the XML at the answer URL, which can speak a message.
sarveshpatil-plivo
marked this pull request as ready for review
July 23, 2026 16:11
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #83
What
Adds two skills,
plivo-smsandplivo-voice, so an agent can text or call someone through Plivo. They sit next to the existinggmail-emailskill and follow the same layout, aSKILL.mdwith YAML frontmatter and a script underscripts/.How it works
Both scripts call the Plivo REST API with HTTP Basic auth, reading
PLIVO_AUTH_IDandPLIVO_AUTH_TOKENfrom the environment or a.envfile in the skill directory. They use only the Python standard library, so there is nothing extra to install, same as gmail-email. Both are picked up automatically bydiscoverSkills()insrc/skills.ts, so no registration is needed.plivo-smssends an SMS through the Messages API. Arguments are--from,--to,--text.plivo-voiceplaces an outbound call through the Call API. Arguments are--from,--to,--answer-url. When the call connects Plivo runs the XML at the answer URL, which can speak a message with<Speak>.Files added
skills/plivo-sms/SKILL.mdskills/plivo-sms/scripts/send_sms.pyskills/plivo-voice/SKILL.mdskills/plivo-voice/scripts/make_call.pyScope
Outbound only, matching the issue. Inbound is left out since the core has no webhook server.
Testing
Ran the SMS skill against a live Plivo account and the message was delivered. The voice skill uses the same auth and request pattern against the Call API. Credentials are read from the environment, so nothing sensitive is in the code.