SMSwitch 9.1.0

dotnet add package SMSwitch --version 9.1.0
                    
NuGet\Install-Package SMSwitch -Version 9.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SMSwitch" Version="9.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SMSwitch" Version="9.1.0" />
                    
Directory.Packages.props
<PackageReference Include="SMSwitch" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SMSwitch --version 9.1.0
                    
#r "nuget: SMSwitch, 9.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=SMSwitch&version=9.1.0
                    
Install SMSwitch as a Cake Addin
#tool nuget:?package=SMSwitch&version=9.1.0
                    
Install SMSwitch as a Cake Tool

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 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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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.

Version Downloads Last updated
9.1.0 27 4/15/2025
9.0.0 57 4/15/2025
8.3.1 72 4/13/2025
8.3.0 190 4/2/2025
8.2.0 144 4/2/2025
8.1.0 331 1/8/2025
8.0.0 80 1/8/2025
7.0.0 194 8/11/2024
6.0.6 96 8/2/2024
6.0.5 85 8/2/2024
6.0.4 162 7/30/2024
6.0.3 115 7/30/2024
6.0.2 97 7/29/2024
6.0.1 232 7/21/2024
6.0.0 110 7/21/2024
5.4.0 120 7/13/2024
5.3.0 131 7/12/2024