Lyo.Sms.Models
1.0.9
dotnet add package Lyo.Sms.Models --version 1.0.9
NuGet\Install-Package Lyo.Sms.Models -Version 1.0.9
<PackageReference Include="Lyo.Sms.Models" Version="1.0.9" />
<PackageVersion Include="Lyo.Sms.Models" Version="1.0.9" />
<PackageReference Include="Lyo.Sms.Models" />
paket add Lyo.Sms.Models --version 1.0.9
#r "nuget: Lyo.Sms.Models, 1.0.9"
#:package Lyo.Sms.Models@1.0.9
#addin nuget:?package=Lyo.Sms.Models&version=1.0.9
#tool nuget:?package=Lyo.Sms.Models&version=1.0.9
Lyo.Sms.Models
Shared types for Lyo.Sms: payloads, paging, events, normalization, and base options. This package does not send SMS. Implementations live in provider packages (Lyo.Sms.Twilio, and others).
SmsRequest
Canonical shape for outbound SMS/MMS. To / From prefer E.164. Builders and services normalize many US-centric inputs. Body is text. Combined length is validated against SmsServiceOptions.MaxMessageBodyLength in the core library. MediaUrls is a List<Uri> for MMS attachments (empty for plain SMS). ToString() truncates bodies for DebuggerDisplay.
SmsMessageQueryFilter / SmsMessageQueryResults<T>
Cursor-based listing used by ISmsService.GetMessagesAsync:
| Field | Role |
|---|---|
From, To |
Narrow by participant (E.164). |
DateSentAfter, DateSentBefore |
Inclusive-ish window (provider maps to APIs). DateSentBefore doubles as the next-page cursor: copy NextCursor from the previous page into DateSentBefore. |
PageSize |
1 to 1000 (default 50). |
SmsMessageQueryResults<T> exposes Items, HasMore, NextCursor, plus legacy Start, Amount, Total fields for callers that assumed offset pagination.
SmsServiceOptions (abstract)
DefaultFromPhoneNumber. Optional defaultFrom.BulkSmsConcurrencyLimit. Semaphore limit for concurrent bulk sends (default 10).MaxMessageBodyLength/MaxBulkSmsLimit. Caps before hitting upstream APIs.EnableMetrics. When true,SmsServiceBaseprefers a non-nullIMetrics.
PhoneNumber
Static helpers aligned with Lyo.Sms builders. Normalize strips formatting. 10-digit US numbers get +1. IsValid / Regex / ValidFormats pair with InvalidFormatException when validation fails. Treat Normalize as best-effort for display and routing, not a substitute for libphonenumber if compliance requires it.
Direction
Twilio-aligned string values (StringValue) for message direction enums (inbound, outbound-api, and others). Used where logs or webhooks classify traffic.
Event argument records
These pair with SmsServiceBase events: SmsSendingEventArgs, SmsSentEventArgs, SmsBulkSendingEventArgs, BulkSmsSentEventArgs. Subscribers receive SmsRequest / Result<SmsRequest> / BulkResult<SmsRequest> snapshots suitable for auditing. Persist via Lyo.Sms.Postgres or app code if durability matters.
Dependencies
Generated from ProjectReference / PackageReference (same model as docs/Lyo.ProjectGraph.html).
Lyo.Common(direct, lyo)Lyo.Result(direct, lyo)Lyo.Exceptions(transitive, lyo)Microsoft.Extensions.Logging.Abstractions10.0.5(transitive, microsoft)System.Memory4.6.3(transitive, microsoft, netstandard2.0)System.Text.Json10.0.5(transitive, microsoft, netstandard2.0)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 is compatible. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Lyo.Common (>= 1.0.9)
- Lyo.Result (>= 1.0.9)
-
net10.0
- Lyo.Common (>= 1.0.9)
- Lyo.Result (>= 1.0.9)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Lyo.Sms.Models:
| Package | Downloads |
|---|---|
|
Lyo.Sms
Base SMS service interface and implementation for sending SMS messages. |
GitHub repositories
This package is not used by any popular GitHub repositories.