Skip to content

Releases: teesofttech/SMSBridge

v0.3.0 - MessageBird & Infobip providers

23 Jun 06:51

Choose a tag to compare

SmsBridge v0.3.0

This release adds MessageBird and Infobip support and strengthens provider conformance, delivery reporting, and failover safety across the SDK.

New Providers

MessageBird (UseMessageBird())

Sends through the MessageBird SMS API using AccessKey authentication, documented form-encoded requests, automatic GSM/Unicode data coding, and normalized API errors.

.UseMessageBird("messagebird", o =>
{
    o.AccessKey = "...";
    o.From = "MyApp";
})

Infobip (UseInfobip())

Uses Infobip's current SMS API v3 with an account-specific base URL and App API-key authentication.

.UseInfobip("infobip", o =>
{
    o.ApiKey = "...";
    o.BaseUrl = "https://xxxxx.api.infobip.com";
    o.From = "MyApp";
})

Provider Improvements

  • Added delivery report parsing for Plivo, Sinch, and Telnyx.
  • Added normalized delivery error codes and transient-failure metadata.
  • Added optional delivery callback configuration for Twilio, Plivo, and Sinch.
  • Added configurable regional Sinch API endpoints.
  • Added automatic Unicode selection for Vonage messages outside GSM-7.
  • Aligned provider request, response, and retry behavior with current official documentation.

Safer Failover

Automatic failover now avoids ambiguous connection and provider 5xx outcomes where the primary provider may already have accepted the message. This reduces the risk of duplicate SMS delivery.

Stats

  • 136 tests passing
  • Targets .NET 8 and .NET 9
  • Release build: 0 warnings, 0 errors

Upgrading

dotnet add package SmsBridge --version 0.3.0

Full Changelog: v0.2.0...v0.3.0

v0.2.0 - Sinch, Plivo & Telnyx providers

14 Jun 20:10
91630ce

Choose a tag to compare

SmsBridge v0.2.0

This release adds three new SMS providers: Sinch, Plivo, and Telnyx.

New Providers

Sinch (UseSinch())

Global cloud communications platform. Sends via the XMS Batches REST API with Bearer token auth.

.UseSinch("sinch", o => {
    o.ServicePlanId = "...";
    o.ApiToken = "...";
    o.From = "...";
})

Plivo (UsePlivo())

US/India-based platform with global SMS coverage. Sends via the REST Message API with Basic auth.

.UsePlivo("plivo", o => {
    o.AuthId = "...";
    o.AuthToken = "...";
    o.From = "...";
})

Telnyx (UseTelnyx())

US carrier-grade communications platform. Sends via the v2 Messages API with Bearer token auth.

.UseTelnyx("telnyx", o => {
    o.ApiKey = "...";
    o.From = "...";
})

Stats

  • 70 tests passing (up from 36 in v0.1.0)
  • Targets net8.0 and net9.0

Upgrading

dotnet add package SmsBridge --version 0.2.0

v0.1.0 - Initial Release

14 Jun 18:49

Choose a tag to compare

SmsBridge v0.1.0

Initial release of SmsBridge — a provider-agnostic .NET SDK for sending SMS through multiple providers via one clean interface.

Features

  • ISmsClient abstraction — application code never references a provider directly
  • Twilio and Vonage providers (raw REST, no vendor SDKs)
  • Configuration-based provider selection and per-message provider override
  • Automatic failover to a backup provider on transient errors
  • ASP.NET Core DI integration via AddSmsBridge() fluent builder
  • Options validation at startup
  • Structured logging via ILogger<T> (no secrets logged)
  • OpenTelemetry ActivitySource instrumentation around sends
  • Webhook normalisation for Twilio and Vonage delivery callbacks
  • Targets net8.0 and net9.0

Getting Started

dotnet add package SmsBridge
builder.Services.AddSmsBridge(opts => { opts.DefaultProvider = "twilio"; })
    .UseTwilio("twilio", o => { o.AccountSid = "..."; o.AuthToken = "..."; o.From = "+1..."; });