SMSwitch 7.0.0
dotnet add package SMSwitch --version 7.0.0
NuGet\Install-Package SMSwitch -Version 7.0.0
<PackageReference Include="SMSwitch" Version="7.0.0" />
paket add SMSwitch --version 7.0.0
#r "nuget: SMSwitch, 7.0.0"
// Install SMSwitch as a Cake Addin #addin nuget:?package=SMSwitch&version=7.0.0 // Install SMSwitch as a Cake Tool #tool nuget:?package=SMSwitch&version=7.0.0
SMSwitch(https://www.nuget.org/packages/SMSwitch)
SMSwitch is an open-source C# class library that provides a wrapper around existing services that are used to verify Mobile numbers and send messages. The service stores information in a MongoDb database that you configure using the package MongoDbService In order to know the Base Url and other common settings the following package is used uSignIn.CommonSettings
Features
- Covers Twilio, Plivo (possible to cover more if needed)
- Usage information is stored in your own MongoDB instance for audit reasons
Contributing
We welcome contributions! If you find a bug, have an idea for improvement, please submit an issue or a pull request on GitHub.
Getting Started
NuGet Package
To include SMSwitch in your project, install the NuGet package:
dotnet add package SMSwitch
Then in your appsettings.json
add the following sample configuration and change the values to match the details of your credentials to the various services.
"SMSwitchSettings": {
"SupportedCountriesIsoCodes": [ "IN", "FI", "DK" ],
"Controls": {
"MaximumFailedAttemptsToVerify": 4,
"SessionTimeoutInSeconds": 240,
"MaxRoundRobinAttempts": 2,
"PriorityBasedOnCountryPhoneCode": {
"44": [ "Twilio", "Plivo" ],
"45": [ "Twilio", "Plivo" ],
"91": [ "Plivo", "Twilio"]
},
"FallBackPriority": [ "Twilio", "Plivo" ]
},
"AndroidAppHash": "MovedToSecret",
"OtpLength": 6,
"Twilio": {
"AccountSid": "MovedToSecret",
"AuthToken": "MovedToSecret",
"ServiceSid": "MovedToSecret",
"RegisteredSenderPhoneNumber": "MovedToSecret"
},
"Plivo": {
"AuthId": "MovedToSecret",
"AuthToken": "MovedToSecret",
"AppUuid": "MovedToSecret"
}
}
After the above is done, you can just Dependency inject the SMSwitch
in your C# class.
For example:
TODO
GitHub Repository
Visit our GitHub repository for the latest updates, documentation, and community contributions. https://github.com/prmeyn/SMSwitch
License
This project is licensed under the GNU GENERAL PUBLIC LICENSE.
Happy coding! 🚀🌐📚
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- EarthCountriesInfo (>= 3.0.0)
- HumanLanguages (>= 10.0.0)
- Microsoft.AspNetCore.OpenApi (>= 8.0.7)
- Microsoft.Extensions.Configuration.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 8.0.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.1)
- MongoDbService (>= 4.0.0)
- Plivo (>= 5.47.3)
- Twilio (>= 7.2.2)
- uSignIn.CommonSettings (>= 3.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on SMSwitch:
Package | Downloads |
---|---|
EmailSwitch
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.