PluginVersion 3.0.0

Twilio

Sends SMS and MMS through Twilio with a restricted API key, reads delivery status and replies by polling, and keeps a consented-recipients list and opt-outs on the twilio site.

5.8 MB. Check the download against its SHA-256 below.

What it contains

  • Settings: Mode, Send allowlist, From number, Message prefix, Messaging Service SID, Text consented recipients, Most consented recipients, Daily send cap, Daily cap per recipient, Media URL hosts, Allowed countries, Opt-out footer, Privacy policy URL, Terms URL, Auto-reply, Auto-reply text, Auto-reply once per hours, Owner commands, Owner numbers, Owner keywords
  • Keys: Account SID, API key SID, API key secret
  • Sign-ins: Twilio
  • Events: One text twilio sent: an sms or mms command in send mode, or an auto-reply during poll. A dry run sends nothing and publishes nothing here. Never carries the text. New texts to our Twilio number that are not opt-out keywords. Snippets are untrusted content from the sender. Numbers that texted an opt-out keyword since the last poll. A 21610 on a send also marks the number opted out but publishes nothing here; the failing command or plugin.twilio-plugin.delivery reports it. Opted-out numbers that texted START, UNSTOP or YES. Only a person re-activates a consented entry. Sent texts reached a final status with failures, or the setup test text was delivered. An owner number texted exactly one of ownerKeywords, while ownerCommands is on. Names the keyword only, never the rest of the text. One event per command text; the text is not also in plugin.twilio-plugin.received and is never auto-replied to.
  • Skills: plugin-twilio-plugin

Documentation

What it does

Dry run by default; sends only to your numbers or person-activated consented recipients; never buys numbers or deletes anything.

What it needs

Accounts you connect

Twilio optional

an Apikey account

The Twilio account to text through: an API-key connection with the Twilio preset (Account SID, API key SID and the secret of a Restricted API key), made in Team settings -> Connections.

Keys set on the Host

A plugin names its secret fields; you choose the key each one reads when you hire it.

accountSidrequired

Account SID: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

apiKeySidrequired

API key SID: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

apiKeySecretrequired

API key secret: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

Settings you choose

modeoptional

dryRun checks and reports each text and never sends. send sends for real.

sendAllowlistoptional

Your cell and any other number texts may always go to, up to 20. +country format (+15551234567); 10 US digits are read as +1.

fromNumberoptional

Your Twilio number texts come from, in +country format. Empty: the account's only SMS number is used; check says when there is none or several.

messagePrefixoptional

Put at the start of every text: your business name as the campaign registered it, such as "Acme Plumbing: ". A text that already starts with that name is left as it is. At most 40 characters.

messagingServiceSidoptional

A Messaging Service SID (MG and 32 hex characters). Set it to send through the service your A2P 10DLC campaign is registered on; empty sends from fromNumber.

allowConsentedRecipientsoptional

In send mode, also text the active entries of the consented list on the twilio page. Refused while the account is Trial or the number is not registered.

maxConsentedRecipientsoptional

The most active consented entries honoured; the earliest activated win.

dailySendCapoptional

Real texts sent per UTC day, across all recipients; dry runs do not count. A safety brake of the plugin, not a Twilio limit: a Low Volume Mixed 10DLC campaign allows about 2,000 a day.

perRecipientDailyCapoptional

Real texts sent to one number per UTC day.

mediaUrlHostsoptional

Host names MMS media may come from, up to 20, each a public https host. Empty: MMS is refused in send mode.

allowedCountriesoptional

Countries texts may go to.

optOutFooteroptional

Ends texts with "Reply STOP to opt out.": every text, the first text to each number, or off. A text that already says "Reply STOP" is left as it is.

privacyUrloptional

The https address of the privacy policy your campaign registered. Shown by check beside what every text carries.

termsUrloptional

The https address of the terms your campaign registered. Shown by check beside what every text carries.

autoReplyoptional

Answer each new text with autoReplyText at the next poll, by itself and through every check a send has: dry run records it, only sendAllowlist numbers or active consented recipients, never an opted-out number or a STOP, START or HELP text.

autoReplyTextoptional

The auto-reply, at most 300 characters. messagePrefix and the opt-out line are added as for any text. Empty: no auto-reply is sent and check says so.

autoReplyOncePerHoursoptional

At most one auto-reply to a number in this many hours.

ownerCommandsoptional

Let you text a keyword (ownerKeywords) from your own phone to have the team act on it at the next poll, such as "summary" for a short text back. The plugin matches the keyword and publishes plugin.twilio-plugin.command naming only the keyword; the text itself is never an instruction to anyone. A spoofed sender can at worst make the team text your own number.

ownerNumbersoptional

The numbers that may send owner commands, up to 20, in +country format (+15551234567); 10 US digits are read as +1. Empty: the numbers on sendAllowlist. An owner number also needs to be on sendAllowlist for the answer to be sent.

ownerKeywordsoptional

The owner command keywords, separated by commas: at most 20, each 1 to 32 letters, digits and spaces. A text is a command when its whole body, in any case and without a trailing ? ! or ., is one of them. STOP, START, HELP and the other opt-out, opt-in and help keywords are never commands.

Setting it up

Accounts you connect

Twilio optional

an Apikey account

The Twilio account to text through: an API-key connection with the Twilio preset (Account SID, API key SID and the secret of a Restricted API key), made in Team settings -> Connections.

Settings and secrets

Mode optional

Default: dryRun

dryRun checks and reports each text and never sends. send sends for real.

Send allowlist optional

No default.

Your cell and any other number texts may always go to, up to 20. +country format (+15551234567); 10 US digits are read as +1.

From number optional

No default.

Your Twilio number texts come from, in +country format. Empty: the account's only SMS number is used; check says when there is none or several.

Message prefix optional

No default.

Put at the start of every text: your business name as the campaign registered it, such as "Acme Plumbing: ". A text that already starts with that name is left as it is. At most 40 characters.

Messaging Service SID optional

No default.

A Messaging Service SID (MG and 32 hex characters). Set it to send through the service your A2P 10DLC campaign is registered on; empty sends from fromNumber.

Text consented recipients optional

Default: Off

In send mode, also text the active entries of the consented list on the twilio page. Refused while the account is Trial or the number is not registered.

Most consented recipients optional

Default: 25

The most active consented entries honoured; the earliest activated win.

Daily send cap optional

Default: 500

Real texts sent per UTC day, across all recipients; dry runs do not count. A safety brake of the plugin, not a Twilio limit: a Low Volume Mixed 10DLC campaign allows about 2,000 a day.

Daily cap per recipient optional

Default: 50

Real texts sent to one number per UTC day.

Media URL hosts optional

No default.

Host names MMS media may come from, up to 20, each a public https host. Empty: MMS is refused in send mode.

Allowed countries optional

Default: US

Countries texts may go to.

Opt-out footer optional

Default: every

Ends texts with "Reply STOP to opt out.": every text, the first text to each number, or off. A text that already says "Reply STOP" is left as it is.

Privacy policy URL optional

No default.

The https address of the privacy policy your campaign registered. Shown by check beside what every text carries.

Terms URL optional

No default.

The https address of the terms your campaign registered. Shown by check beside what every text carries.

Auto-reply optional

Default: Off

Answer each new text with autoReplyText at the next poll, by itself and through every check a send has: dry run records it, only sendAllowlist numbers or active consented recipients, never an opted-out number or a STOP, START or HELP text.

Auto-reply text optional

No default.

The auto-reply, at most 300 characters. messagePrefix and the opt-out line are added as for any text. Empty: no auto-reply is sent and check says so.

Auto-reply once per hours optional

Default: 24

At most one auto-reply to a number in this many hours.

Owner commands optional

Default: Off

Let you text a keyword (ownerKeywords) from your own phone to have the team act on it at the next poll, such as "summary" for a short text back. The plugin matches the keyword and publishes plugin.twilio-plugin.command naming only the keyword; the text itself is never an instruction to anyone. A spoofed sender can at worst make the team text your own number.

Owner numbers optional

No default.

The numbers that may send owner commands, up to 20, in +country format (+15551234567); 10 US digits are read as +1. Empty: the numbers on sendAllowlist. An owner number also needs to be on sendAllowlist for the answer to be sent.

Owner keywords optional

Default: summary, status, updates

The owner command keywords, separated by commas: at most 20, each 1 to 32 letters, digits and spaces. A text is a command when its whole body, in any case and without a trailing ? ! or ., is one of them. STOP, START, HELP and the other opt-out, opt-in and help keywords are never commands.

Account SID secret, optional

Account SID: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

Entered once per member and kept encrypted; shown as you type it.

API key SID secret, optional

API key SID: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

Entered once per member and kept encrypted; shown as you type it.

API key secret secret, optional

API key secret: now held by the API-key connection bound to the `twilio` slot (Twilio preset), set in Team settings -> Connections. Declared only so an update carries an existing value over to that connection.

Entered once per member and kept encrypted; hidden as you type it.

Details

Kind
Plugin
Version
3.0.0
Plugins
twilio-plugin 3.0.0
Platforms
Linux x64, Linux Arm64
Size
5.8 MB (6,091,471 bytes)
SHA-256
d71542526683c9c12b3f6c66c5cb131c16599919f7c15ea71fc22f3d22f07aca
Download
twilio-plugin-3.0.0.zip
Source
github.com/djlsystems/Yawble-packages/tree/main/packages/twilio-plugin
License
Apache License 2.0 (Apache-2.0), separate from the license of Yawble itself

How to install

In Yawble, open Marketplace, find Twilio under Browse and press Get. Or download the .zip, then in Yawble:

  1. Admin
  2. Plugins
  3. Install from a folder

You see what the package adds before it goes in, and you connect its accounts and set its keys afterwards.