Jattac.Sms.Gateway.SDK 1.0.0-beta03

This is a prerelease version of Jattac.Sms.Gateway.SDK.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Jattac.Sms.Gateway.SDK --version 1.0.0-beta03
                    
NuGet\Install-Package Jattac.Sms.Gateway.SDK -Version 1.0.0-beta03
                    
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="Jattac.Sms.Gateway.SDK" Version="1.0.0-beta03" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Jattac.Sms.Gateway.SDK" Version="1.0.0-beta03" />
                    
Directory.Packages.props
<PackageReference Include="Jattac.Sms.Gateway.SDK" />
                    
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 Jattac.Sms.Gateway.SDK --version 1.0.0-beta03
                    
#r "nuget: Jattac.Sms.Gateway.SDK, 1.0.0-beta03"
                    
#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=Jattac.Sms.Gateway.SDK&version=1.0.0-beta03&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Jattac.Sms.Gateway.SDK&version=1.0.0-beta03&prerelease
                    
Install as a Cake Tool

Jattac SMS Gateway SDK - Easy Guide!

Imagine you have a special messenger service (that's the Jattac SMS Gateway) that can send text messages (SMS) for your app. This SDK is like a remote control that lets your app talk to that messenger service easily!

What's this for?

This "SDK" (Software Development Kit) is a toolkit for .NET developers. It helps your C# application:

  1. Send SMS messages through the Jattac SMS Gateway.
  2. Find out which SMS "Providers" (like different phone companies or routes) are available.
  3. See who the "Originators" are (the "from" number or name that appears on the recipient's phone) for different users or parts of your system.

How do I get it into my project?

This is a .NET library. You'll typically add it to your project using NuGet.

In your project, you'd usually run a command like this (the exact version might change):

dotnet add package Jattac.Sms.Gateway.SDK --version 1.0.0-beta02

Or you can add it via Visual Studio's NuGet Package Manager.

First Steps: Setting things up

Before you can use the remote control, you need to tell it a few things:

  1. Where the Jattac SMS Gateway lives (its address): BaseUrl
  2. A default user ID for the gateway: DefaultTenantId
  3. An asynchronous function to retrieve an authentication token: GetJattacTokenAsync

Instantiate JattacSmsGatewaySettings as follows:

using Jattac.Libs.SmsGateway.JattacSmsGateway;

// This is just an example of how you might get a token
async Task<string> GetMySecretTokenAsync()
{
    // In a real app, you'd get this from a secure place or another service
    await Task.Delay(10); // Simulate some async work
    return "your-super-secret-jattac-token";
}

var settings = new JattacSmsGatewaySettings
{
    BaseUrl = "https://your-jattac-sms-gateway-url.com", // Replace with the actual URL
    DefaultTenantId = "your-default-tenant-guid",       // Replace with your default tenant ID
    GetJattacTokenAsync = GetMySecretTokenAsync
};

How to Use It (Simple Examples)

1. Sending an SMS

using Jattac.Libs.SmsGateway.JattacSmsGateway;

var smsSender = new JattacSmsSender(settings);

var messagePayload = new JattacSmsPayload
{
    Message = "Hello from Jattac SDK!",
    Recipients = new HashSet<string> { "1234567890", "0987654321" }, // Phone numbers
    TenantId = Guid.NewGuid(), // The ID of the user/tenant sending this
    CountryCode = 1 // e.g., 1 for USA
};

bool wasSent = await smsSender.SendAsync(messagePayload,
    onSendResults: async (status, errorMessage) =>
    {
        Console.WriteLine($"SMS Sending Status: {status}");
        if (!string.IsNullOrEmpty(errorMessage))
        {
            Console.WriteLine($"Error: {errorMessage}");
        }
    });

Console.WriteLine(wasSent ? "SMS submitted successfully!" : "SMS submission failed.");

2. Finding out available SMS Providers

using Jattac.Libs.SmsGateway.JattacSmsProviders;

var providerReader = new JattacSmsProviderReader(settings);
List<JattacSmsProvider> providers = await providerReader.GetAllAsync();

foreach (var provider in providers)
{
    Console.WriteLine($"Provider Name: {provider.Name}");
}

That's the basics! This should help you get your application talking to the Jattac SMS Gateway. 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.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.0-beta01 120 6/19/2025
1.0.0-beta03 83 6/8/2025
1.0.0-beta02 85 6/8/2025
1.0.0-beta01 83 6/7/2025