My web app sends an SMS text message to users in the US when they enter their phone number, using the Nexmo API. When the SMS contains a link, it does not get delivered to users if their carrier is Verizon or T-Mobile. For other carriers, such as Sprint and AT&T, it does get delivered. It does not generate error messages in any case with Nexmo and I still get charged for the text even if it gets blocked by the carrier.
I contacted Nexmo and they replied:
I would say it is very likely that the link in this sms caused a spam
filter to block this message, especially if other plain content
messages have been delivered to this number successfully. So the issue
with US LVNs is that they are intended for pure P2P traffic and this
is why sending a link might be suspicious and seen as a message
originated from an application. Unfortunately there is nothing we can
do about this as it is set by the US carriers.
These are not definitely not spam or marketing messages. How can I send a link in an SMS message and not get blocked?
I had the same issue recently. All major carriers have some basic checks in place which blocks the SMS from getting delivered if you use short links (e.g.http://abc.gl/1432). The SMS will get delivered as long as you have a .com in the URL (e.g. http://abc.gl.com/1432)
Well, I observed that some carriers mark it as spam if have "Some Message. Click Here http://example/somelink" format.
Removing "Click here" part worked for me.
i.e. "Some Message. http://example/somelink"
Got the same issue. I have been using twilio to a t-mobile phone in the US.
SMS Hello Alan, your code is: 146945 for website.com is not working but
SMS Hello Alan, your code is: 146945 is working fine.
Related
I built an app that sends SMS messages with a URL to a list of users. When sending to Google Fi phones.
the message is "Your Weekly Report is now available! Log in to check it out: [URL]".
This message sends successfully with the URL in it to phones on AT&T, Verizon, and other carriers, but not to Google Fi.
This message sends successfully to Fi if I remove the link from the message, so I know the code is good.
I have reached out to Fi and they were not at all helpful.
Any Ideas?
remove the link. Carriers are strict when sending links via SMS, more so when using standard long codes and Application to Person (A2P) traffic (vs. two people exchange SMS directly with one another).
You can try sending from a Toll Free number, to see if you have any better luck but those still experience filtering. The true solution is a carrier short code, but that involves an extensive carrier vetting process of your business and have additional costs involved.
How Does Carrier Filtering Work?
I am sending SMS using Twilio API. During testing i found that it sometimes delivered message to the phone number but does not sends all the time. This is the case of DND activated numbers(Do Not Call List).
I knew this is because of Sender routing done by Twilio. When Twilio sends SMS using a number(only numeric sender-FROM), i received the message, but when it sends message using some alphanumeric sender(like DM-044138), it does not delivers the message.
Now my question is do we have any access to change this ? Can we set something that could guarantee the delivery even for the DND numbers ?
Any help would be highly appreciated.
Your problem is you are sending it to India.
Please review the following.
This feature is only available when sending messages to supported countries
As you can see from the list below India is not a supported country.
https://www.twilio.com/help/faq/sms/what-countries-does-twilio-support-alphanumeric-sender-id
I'm currently working as a programmer analyst in a company and we built an app that send invites to an event by SMS with the help of the Twilio API.
Here's how it works:
When a new event is created, a phone number is reserved on Twilio through the API. Then, when people are invited in the app, a SMS is sent from the reserved phone number, here again through the API. People who get the SMS can answer to the SMS by “Yes” or “No”. Our app handles the answer of the person to see if he/she will be present or not at the event.
Most of the time, everything works. The phone number is reserved properly, the invites are sent to people, and answers are handled as expected.
But since few days, we're having some issues where answers to invites aren’t received in the app.
Here’s our investigation for now:
An event is successfully created in our app and phone number is reserved properly in Twilio.
Invites are sent properly to people by SMS.
Twilio logs are showing outbound SMS.
Invites are properly received by people.
When they answer to the invite, nothing occurs. Nothing is available in Twilio logs.
If I try to text an existing phone number of an event that is working, I can see the SMS in Twilio logs.
We checked, the problem is present with different carriers.
In summary, some of the phone numbers used aren’t receiving answers by SMS, while there isn't any problem with others.
We opened a ticket with the Twilio support and are currently investigating with them and I contacted the carrier of the cellphones used for testing, but I still want to ask you guys, in case anyone had a similar issue and could help.
I also have the same problem.
Use Case: Xfinity is setup for two-factor. Would like for 2-factor authentication to go to a Twilio number which will forward to myself and wife. When Xfinity sends the validation sms message it does not show up in the log or to the forwarded number. Sending messages from another mobile device works fine.
I use TwiML Bin for this. Here is the code
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Message to="+1xxxxxxxxxx">{{From}}: {{Body}}</Message>
</Response>
I want to use Twilio to create an SMS relaying service where the Twilio number is the only number that is exposed, much like web proxy servers that allow you to access the Internet anonymously. I've used the example php code that twilio provides, saved it to a php file and hosted it on a public web server, then updated the messages URL on the Twilio site accordingly. Any message sent to the Twilio number the is forwarded to my mobile. Everything works fine, except for the fact that when I reply to the forwarded message from my phone, the reply includes a header that says "Sent from your Twilio trial account - + mymobilenumber" I understand that the header is inserted because I have a trial account, however I don't want the mymobilenumber field to be exposed. Is it possible to hide this?
I should mention I'm not really a programmer but I'm learning with Twilio.
I followed the example given here:
https://www.twilio.com/help/faq/sms/how-do-i-forward-my-sms-messages-to-another-phone-number
Thx
Antonio
A short code is a 5 or 6-digit number that can send and receive messages with mobile phones. These high-throughput numbers are perfect for apps that need to send messages to lots of users or need to send time sensitive messages. You can buy shortcodes from Twilio or port existing short codes to our platform.
I am trying out different things with Twilio, but open for other solutions with Nexmo, Tropo or Plivo.
Here's a situation, I am sending an SMS texts from a server to bunch of clients. I can get a status back: like queued, sending, sent, or failed. Here's what Twilio says about SMS sent status:
"Sent" indicates that your message was successfully sent into the SMS
network for delivery. However Twilio does not receive confirmation from
the destination carrier that the message was received, and this is not
a guarantee that the message has reached the intended device.
(https://www.twilio.com/help/faq/sms/what-do-the-sms-statuses-mean)
So, my question is: does Plivo, Tropo or Nexmo (or any other service that I missed) do anything like that? I mean, knowing that an SMS was received either by client directly, or client's carrier would be really important.
PS. I'm not even sure if it is possible
Any help or suggestions would be appreciated.
It's certainly possible with Nexmo - as the other answer and comment state, it's not possible with Twilio & Tropo. Plivo's docs look like their delivery receipts are similar to Nexmo's.
Nexmo sends a delivery receipt if it's supported by the carrier. In the US it's not, but internationally it is supported often. In those cases Nexmo will give your app a callback with a delivery receipt. You can also use the message ID to query for the message status.
This screencast shows checking the DLR from the dashboard, which is really just a UI on top of the API.
Kevin makes the point that this could be difficult if the message is bounced through multiple providers - one of Nexmo's focuses is getting as direct a connection as possible.
[Disclaimer: I do occasional developer evangelism for Nexmo.]
I'm a Tropo customer, and I've asked the same question, and so far, the answer's similar to what Kevin Burke gave for Twilio. It's hard to do, so there's no confirmation at this time. They do give some debugging information in the logs which is helpful with that first-hop negotiation, at least, even if it's hard to retrieve/parse easily. They are working on it, and have been very active adding new features.