---
title: "SMS"
description: "9 posts about SMS, summarised, each linking to the original."
---

# SMS
> 9 posts about SMS, summarised, each linking to the original.

## Articles

### [How to Retrieve a Phone Number's SMS Pumping Score in Rust](https://yomu.fyi/post/how-to-retrieve-a-phone-number-s-sms-pumping-score-in-rust.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Matthew Setter
- Published: Oct 14, 2026
- Type: Tutorial

SMS Pumping Fraud exploits phone number input fields to generate revenue from SMS messages sent to numbers controlled by a specific mobile network operator. Twilio’s Lookup v2 API provides an SMS Pumping Risk Score from 0 to 100, based on a proprietary model using network data including Verify Fraud Guard signals and unusual traffic patterns. This Rust tutorial uses the rustlio crate, dotenvy, serde, and tokio to call the API and retrieve the score along with carrier risk category and block status. Canadian numbers do not return carrier information, and Twilio advises against using the score for US or Canadian numbers. Guidelines recommend sending messages for scores 0-60, adding friction for 60-75, treating as suspicious for 75-90, and blocking for 90-100.


### [Unified Customer Communications: Twilio Voice, SMS, and WhatsApp meet Salesforce](https://yomu.fyi/post/unified-customer-communications-twilio-voice-sms-and-whatsapp-meet-sal.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Hadijah Creary
- Published: Oct 8, 2026
- Type: Announcement

Twilio announced general availability of its Salesforce Partner Contact Center Integration, embedding its global Super Network with over 4,800 direct carrier relationships into the native Salesforce workspace. The integration unifies omnichannel orchestration across voice, SMS, and WhatsApp using Twilio TaskRouter, routing conversations into Salesforce’s omnichannel widget while preserving existing skills-based routing rules and syncing agent presence across channels. Real-time event metadata streams into the widget before a call connects, showing recent customer activity and sentiment to reduce average handling times and eliminate repeated information requests. Carrier-grade telephony with native real-time transcription and recording splits caller and agent voices for precise transcriptions, sentiment scoring, and post-call summaries. By pairing Salesforce’s familiar interface with Twilio’s communications engine, the integration gives agents a seamless workspace with a single source of truth, eliminating tab-switching and lost context.


### [Avoid Sending SMS to Landlines in PHP with Twilio's Lookup v2 API](https://yomu.fyi/post/avoid-sending-sms-to-landlines-in-php-with-twilio-s-lookup-v2-api.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Matthew Setter
- Published: Oct 7, 2026
- Type: Tutorial

SMS has a 98% open rate and works without internet, but sending to landlines wastes money on failed deliveries. This tutorial demonstrates filtering landlines in PHP using Twilio’s Lookup v2 API, which provides line type intelligence via the “line\_type\_intelligence” field. The core class extends PHP’s FilterIterator and overrides the accept() method to fetch each number’s line type, returning true only for “mobile” types and catching TwilioException on failure. The application uses Composer dependencies including monolog, twilio/sdk, and phpdotenv, loads credentials from a .env file, iterates over an ArrayIterator of phone numbers, logs each with Monolog to stdout, and sends an SMS only to mobile numbers. This approach avoids unnecessary charges and is straightforward using Twilio’s PHP helper library and SPL iterators.


### [Avoid Sending SMS to Landlines with the Lookup v2 API and Go](https://yomu.fyi/post/avoid-sending-sms-to-landlines-with-the-lookup-v2-api-and-go.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Matthew Setter
- Published: Oct 7, 2026
- Type: Tutorial

Sending SMS to landlines causes failed deliveries and unnecessary charges, a problem that Twilio’s Lookup v2 API solves by identifying phone number types. The API’s line\_type\_intelligence field returns a classification such as “mobile” or “landline”, enabling applications to filter out non-mobile numbers before sending an SMS. This Go tutorial loads Twilio credentials from a .env file and uses Go 1.23’s iter package to create a custom iterator over a phone number list. Within the iterator, each number is validated by calling FetchPhoneNumber with the line\_type\_intelligence parameter, and if the type is not “mobile” or the call fails, the number is skipped. Only mobile numbers are then passed to the sendSMS function, which sends the message using the Twilio Go helper library’s CreateMessage, and the terminal finally logs each success or identifies a skipped landline.


### [How to Create and Send vCards with Go](https://yomu.fyi/post/how-to-create-and-send-vcards-with-go.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Matthew Setter
- Published: Oct 2, 2026
- Type: Tutorial

Sharing contact details by copying text between apps is ineffective compared to sending a vCard, a structured data format supported by major operating systems and email clients. This tutorial demonstrates creating vCards in Go using the go-vcard package, which handles fields such as formatted name, structured name, street address, telephone number, email address, and URL. The code writes the vCard to a .vcf file with version 4.0 using the go-vcard encoder and constants from the package, exiting on failure. The vCard file is uploaded to Twilio Assets, a static file hosting service bundled with every Twilio account, to make it publicly accessible for the SMS. The Twilio Go SDK sends an SMS with a message body and the vCard URL as a media attachment via the Programmable Messaging API, allowing recipients to open it in their contacts app.


### [How to Track Opt-Outs in PHP](https://yomu.fyi/post/how-to-track-opt-outs-in-php.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Matthew Setter
- Published: Oct 2, 2026
- Type: Tutorial

This tutorial demonstrates building a PHP application that records customer opt-out preferences from SMS replies using Twilio’s Incoming Message Webhook and Event Streams, which require PHP 8.5, Composer, and SQLite. When the SMS body is an opt-out keyword such as STOP, START, or HELP, Twilio includes an OptOutType parameter in the webhook request, which the application checks using strcasecmp and array\_first. The application, based on the Twilio Slim Base project, stores the opt-out status and account SID in an SQLite database via PHP-DB and laminas-servicemanager, using a TableGateway for the user\_optouts table. The handleWebhook() function validates the OptOutType against class constants (OPT\_OUT\_TYPE\_START, OPT\_OUT\_TYPE\_STOP, OPT\_OUT\_TYPE\_HELP) and inserts a record before returning a TwiML response. Twilio already blocks further messages for standard opt-outs, but local recording enables advanced actions like syncing a CRM; the tutorial covers bootstrapping, configuring Twilio messaging services with Advanced Opt-Out, using ngrok, and verifying with an SQL query.


### [Sending SMS with an Agentic AI using Twilio and Hermes Agent](https://yomu.fyi/post/sending-sms-with-an-agentic-ai-using-twilio-and-hermes-agent.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Amanda Lange
- Published: Sep 21, 2026
- Type: Tutorial

The author, a Twilio employee, built a personal agentic AI using Hermes Agent and connected it to Twilio SMS to enable phone-based interaction. They chose SMS over a custom Android app because it works out of the box on any phone and globally, making the agent accessible to anyone with the phone number, including non-technical users. The author wired up a toll-free 800 number and tested the setup by sending a text message from a grocery store parking lot, receiving a reply from the agent. The experiment demonstrated that agentic AI can be integrated with legacy protocols like SMS to provide realtime chat capabilities. The author also noted the importance of reading email provider terms of service if creating a new account for the agent.


### [Twilio’s 2026 Heightened Awareness Period: Ensuring Reliable Messaging for Peak Season](https://yomu.fyi/post/twilio-s-2026-heightened-awareness-period-ensuring-reliable-messaging.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Published: Sep 17, 2026
- Type: Announcement

Twilio has scheduled two 2026 Heightened Awareness Periods (HAPs) to manage messaging throughput during U.S. midterm election traffic and the Black Friday/Cyber Monday and holiday shopping surge. During these windows, high-volume short code and toll-free traffic shifts temporarily to Market Throughput, while 10DLC remains on Account-Based Throughput and RCS uses standard per-sender limits; contracted limits are honored. Most users need no action, but election senders should contact their account team by October 1, 2026, and holiday senders face deadlines for RCS approval, throughput review, A2P 10DLC requests, and supplementary orders. The election HAP runs November 2–4, 2026, while the holiday HAP runs November 19, 2026, through January 4, 2027; capacity is limited and allocated first come, first served.


### [What Is SMS Pumping Fraud and How to Stop It](https://yomu.fyi/post/what-is-sms-pumping-fraud-and-how-to-stop-it.md)
- Company: [Twilio](https://yomu.fyi/company/twilio.md)
- Author: Twilio
- Published: Sep 10, 2026
- Type: Explainer

SMS pumping fraud, also called SMS toll fraud, uses bots and fake phone numbers to trigger automated text messages from public-facing endpoints, leaving businesses to pay for traffic that produces no genuine customers. The attack can target OTP requests, sign-up and lead forms, transactional notifications, marketing campaigns, and chatbot endpoints; it may appear as a sudden spike or as distributed low-volume traffic that accumulates over days or weeks. Suggested detection measures include monitoring traffic by use case and geography, reconciling spend with conversions, examining clustered phone-number patterns, and analyzing incomplete forms. The prevention guidance covers CAPTCHA, behavioral bot detection, rate limits, geographic controls, delayed OTP requests, alternative verification methods, and Twilio products including Verify Fraud Guard, SMS Pumping Protection, and Lookup SMS Pumping Risk Score.
