使用ASP.NET发送免费的确认短信
本文关键字:确认 免费 ASP NET 使用 | 更新日期: 2023-09-27 18:06:28
我正在与ASP合作。. NET web应用程序,我想使用SMS
消息注册后确认用户帐户。我找到的唯一方法是使用twilio
,我需要买一个号码!它将出现在"FROM"字段中,在SMS
中作为一个数字而不是一个名称!我找到的twilio代码如下:
// Find your Account Sid and Auth Token at twilio.com/user/account
string AccountSid = "..";
string AuthToken = "[AuthToken]";
var twilio = new TwilioRestClient(AccountSid, AuthToken);
var message = twilio.SendMessage("[From]", "[To]", null, null, null);
Console.WriteLine(message.Sid);
我的问题是:有没有办法免费发送确认的SMS
?我可以选择名字也在"FROM"字段的消息?
您可以使用运营商的电子邮件短信地址免费发送短信(查看http://www.emailtextmessages.com/以获取使用的格式)。它不是很好,因为它需要用户选择他们的运营商,运营商可以随着时间的推移更换号码移植,但在你的情况下,因为这只是为了初步确认,运营商更换不是一个问题。如果我没记错的话,在这种情况下,FROM将显示为您发送文本的电子邮件地址。
举个例子,假设电话号码是123-456-7890,你可以用1234567890@vtext.com给Verizon客户发短信。
为了得到一个免费的解决方案,你可能不得不做出一些牺牲,比如走这条路。
这里是Twilio开发者布道者。
在这些免费信息的回答中有一些很好的建议,我也想从Twilio的角度来回答。
你可以从Twilio发送短信,并提供你自己的发件人ID,不是一个数字。这在这里列出的145个国家都有效。您将以完全相同的方式发送消息,除了您将用您想要的发件人ID替换示例中的From
号码。
然而,发送短信将花费你(和我们一样)。此外,如果你需要发送短信到一个不支持字母数字发送者ID的国家,比如美国,你会想要退回到使用数字发送消息。
如果有帮助,请告诉我
大多数运营商允许通过SMTP发送SMS消息。这里有一个不错的列表:http://martinfitzpatrick.name/list-of-email-to-sms-gateways/,谷歌是你的朋友。
你可以询问用户他们的运营商(在下拉列表中)以及他们的电话号码,然后使用SmtpClient
发送电子邮件。例如,如果您想通过Verizon向1234发送SMS消息,则发送部分可能看起来像这样:
SmptClient smpt = new SmptClient(...);
...
if (carrier = "Verizon")
{
smpt.Send("admin@mysite.com", phoneNumber + "@vtext.com", "Welcome to MySite.com!", "Your account is registered.");
}
显然,您需要有一个有效的Smtp配置,并且您可能希望有一种更优雅的方式来解析载波,但这就是一般的想法。
这不是完全免费的-你需要一个电子邮件服务器。如果你发送了太多的信息,或者有太多的用户抱怨你在向他们发送垃圾信息,你可能会遇到运营商的麻烦(我认为付费服务可以帮你解决这个问题)。