Sufficit.Gateway.Zabbix
1.26.728.1654
dotnet add package Sufficit.Gateway.Zabbix --version 1.26.728.1654
NuGet\Install-Package Sufficit.Gateway.Zabbix -Version 1.26.728.1654
<PackageReference Include="Sufficit.Gateway.Zabbix" Version="1.26.728.1654" />
<PackageVersion Include="Sufficit.Gateway.Zabbix" Version="1.26.728.1654" />
<PackageReference Include="Sufficit.Gateway.Zabbix" />
paket add Sufficit.Gateway.Zabbix --version 1.26.728.1654
#r "nuget: Sufficit.Gateway.Zabbix, 1.26.728.1654"
#:package Sufficit.Gateway.Zabbix@1.26.728.1654
#addin nuget:?package=Sufficit.Gateway.Zabbix&version=1.26.728.1654
#tool nuget:?package=Sufficit.Gateway.Zabbix&version=1.26.728.1654
Sufficit.Gateway.Zabbix
Pacote .NET do gateway Zabbix da Sufficit.
O projeto concentra:
- contratos públicos das integrações, destinos, execuções e automação;
- persistência Entity Framework do gateway;
- orquestração dos alertas telefônicos;
- configuração remota do Zabbix por JSON-RPC;
- extensões de injeção de dependências.
Os projetos consumidores usam o projeto local quando ele está disponível e o
pacote Sufficit.Gateway.Zabbix em instalações publicadas.
O target netstandard2.0 contém somente contratos e interfaces para clientes
legados. Persistência Entity Framework, registro de serviços e automação remota
ficam nos targets modernos (net7.0, net9.0 e net10.0). Essa separação evita
carregar o provedor MySQL legado e sua dependência Newtonsoft.Json nos clientes.
Registro
services.AddSufficitGatewayZabbix(configuration, loggerFactory);
O host precisa informar o callback público no appsettings.json:
{
"Sufficit": {
"Gateway": {
"Zabbix": {
"PublicAlertEndpoint": "https://endpoints.example.com/gateway/zabbix/alert"
}
}
}
}
PublicAlertEndpoint é obrigatório, deve ser uma URL HTTPS absoluta e não pode
conter query string ou fragmento. O pacote acrescenta contextId e id ao
configurar o webhook. Não existe endereço padrão ou fallback compilado no serviço.
O host deve registrar implementações para:
IZabbixTelephonyBridge, conectando o gateway ao Call Dispatch;IZabbixTokenProtector, protegendo o token da API do cliente.
Essa configuração pertence exclusivamente ao host da API que recebe os alertas.
O runtime calcula alert_callback_url e a inclui nas integrações retornadas aos
clientes. Aplicações Blazor e outros clientes não devem registrar
ZabbixGatewayOptions nem duplicar PublicAlertEndpoint em seus appsettings.
Banco de dados
Os scripts de referência ficam em src/EntityFramework/Schema.
Contratos
Os modelos públicos em src/Contracts possuem documentação XML em classes,
enums, constantes e propriedades. A documentação gerada é incluída no pacote
para aparecer no IntelliSense dos projetos consumidores.
Mensagens e localização
Toda comunicação operacional do pacote usa uma mensagem técnica em inglês e um
código estável no formato SGZ9999, definido em
ZabbixGatewayMessageCodes. Os consumidores devem localizar pelo código e usar
o texto inglês somente como fallback técnico.
Resultados bem-sucedidos expõem message_code. Falhas persistidas em execuções
e tentativas expõem error_code. Os endpoints ASP.NET Core retornam RFC 7807
com o código no campo code:
{
"type": "urn:sufficit:gateway:zabbix:error:SGZ2003",
"title": "The Zabbix gateway request failed.",
"status": 400,
"detail": "A Zabbix API token is required.",
"code": "SGZ2003",
"error_kind": "Validation",
"trace_id": "..."
}
Nunca use o texto de detail como chave de tradução. Os códigos existentes não
devem ser renumerados nem reutilizados para outro significado.
O script 202607241430-gatw-zabbix-error-codes.sql adiciona as colunas que
persistem os códigos de erro de execuções e tentativas.
| 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 is compatible. 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 is compatible. 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
- Sufficit.Base (>= 1.26.728.24)
- System.Text.Json (>= 9.0.18 && < 10.0.0)
-
net10.0
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.10 && < 11.0.0)
- Microsoft.EntityFrameworkCore (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.Http (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.Options (>= 10.0.10 && < 11.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10 && < 11.0.0)
- MySql.EntityFrameworkCore (>= 10.0.7 && < 11.0.0)
- Sufficit.Base (>= 1.26.728.24)
-
net7.0
- Microsoft.Bcl.AsyncInterfaces (>= 8.0.0 && < 9.0.0)
- Microsoft.EntityFrameworkCore (>= 7.0.20 && < 8.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 7.0.0 && < 8.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 7.0.0 && < 8.0.0)
- Microsoft.Extensions.Http (>= 7.0.0 && < 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 7.0.1 && < 8.0.0)
- Microsoft.Extensions.Options (>= 7.0.1 && < 8.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 7.0.0 && < 8.0.0)
- Pomelo.EntityFrameworkCore.MySql (>= 7.0.0 && < 8.0.0)
- Sufficit.Base (>= 1.26.728.24)
- System.Text.Json (>= 8.0.5 && < 9.0.0)
-
net9.0
- Microsoft.Bcl.AsyncInterfaces (>= 9.0.18 && < 10.0.0)
- Microsoft.EntityFrameworkCore (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.Http (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.Options (>= 9.0.18 && < 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.18 && < 10.0.0)
- Pomelo.EntityFrameworkCore.MySql (>= 9.0.0 && < 10.0.0)
- Sufficit.Base (>= 1.26.728.24)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Sufficit.Gateway.Zabbix:
| Package | Downloads |
|---|---|
|
Sufficit.Blazor
Package Description |
|
|
Sufficit.Client
EndPoints API Client |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.26.728.1654 | 143 | 7/28/2026 |
| 1.26.724.2244 | 329 | 7/24/2026 |
| 1.26.724.2237 | 82 | 7/24/2026 |
| 1.26.724.2223 | 101 | 7/24/2026 |
| 1.26.724.2213 | 107 | 7/24/2026 |
| 1.26.724.2128 | 88 | 7/24/2026 |
| 1.26.724.2009 | 188 | 7/24/2026 |