Panelde ne yapıyorsanız,
kodla da yapabilirsiniz
Tek paket, beş yüzey, on iki giriş noktası. Log yazın, e-posta/SMS/push gönderin, Telsiz projenizi ve sohbet gelen kutunuzu yönetin, mobil uygulamanıza canlı sohbet koyun — hepsi aynı sözleşmeyle.
npm install signalbirdcomposer require pariette/signalbirdpip install signalbirdHangi işi yapıyorsanız o kapıdan girin
Her yüzeyin ayrı anahtarı vardır. Bu bir zorluk değil, kasıtlı bir duvar: log yazan anahtar e-posta gönderemez, sitenize gömdüğünüz anahtar kişi listenizi okuyamaz.
Yönetim yüzeyi bir admin arayüzü değildir. Anahtar tek bir takıma bağlıdır ve yalnız o takımın kayıtlarına dokunur; kullanıcı, faturalama ve abonelik işlemleri SDK'da yoktur.
Dilinizi seçin, kopyalayın
Buradaki her çağrı pakette gerçekten var. Metot adları diller arasında birebir aynıdır; yalnız yazım geleneği değişir.
import { signalbird } from 'signalbird'
// SIGNALBIRD_KEY ortam değişkeninden okunur
// Kritik kanal — kime gideceği, sessiz saatte ne olacağı,
// kaç kez uyaracağı PANELDE durur. Kod yalnız olayı bildirir.
await signalbird().critical('critical', 'ödeme servisi yanıt vermiyor', {
service: 'iyzico',
attempt: 3,
})
// Rutin kayıt — panelde görünür, bildirim göndermez
await signalbird().info('info', 'ahmet@x.com yeni hesap oluşturdu')
// Yakalanmamış hatalar tek satırla bağlanır
signalbird().captureUncaught('critical')Telsiz · 12 / 12
Kurulumdan ilk çağrıya
- 01
Anahtarınızı açın
Telsiz için panelden proje açın (Telsiz → Projeler); gizli anahtar bir kez görünür. Gönderim ve Yönetim için Konsol → API Anahtarları'ndan kapsam seçerek anahtar üretin.
- 02
Paketi kurun
Tek paket her yüzeyi taşır. Bağımlılık getirmez — projenizin HTTP istemcisi sürümüne karışmaz.
- 03
Çağırın
Hata fırlatmaz: telsiz erişilemezse ödeme akışınız çökmez. Sonuç her zaman ok/status/code zarfıdır.
- 04
Kuralı panelden yönetin
Kanal ayarları, çalışma saatleri, bildirim alıcıları ve sohbet görünümü panelde durur. Kodunuz yalnız olayı bildirir.
# 1 — paketi kurun
npm install signalbird
# 2 — anahtarı verin
export SIGNALBIRD_KEY=sbr_live_… # Telsiz (panel → Telsiz → Projeler)
export SIGNALBIRD_API_KEY=sb_… # Gönderim + Yönetim (Konsol → API Anahtarları)import { signalbird, management } from 'signalbird'
// Log yaz
await signalbird().critical('critical', 'ödeme servisi yanıt vermiyor')
// Kendi projenizi yönetin
await management().createRadioProject({ name: 'ödeme-servisi' })Hangi dilde ne var
Aynı etiketten çıkar, aynı sürümü taşır. Ayrı SDK reposu ya da dil başına sürüm yoktur.
| Dil / platform | Telsiz | Gönderim | Yönetim | Uygulama | Partner | Kurulum |
|---|---|---|---|---|---|---|
| Node.js / TypeScript | npm install signalbird | |||||
| Tarayıcı (düz JS) | — | — | — | npm install signalbird | ||
| React / Next.js | — | npm install signalbird | ||||
| Vue 3 | — | — | — | npm install signalbird | ||
| Angular | — | — | — | npm install signalbird | ||
| React Native / Expo | — | — | — | npm install signalbird | ||
| PHP / Laravel | — | composer require pariette/signalbird | ||||
| Python | — | — | pip install signalbird | |||
| Go | — | — | go get github.com/Pariette-Inc/signalbird.sdk | |||
| .NET / ASP.NET Core | — | — | dotnet add package Signalbird.Sdk | |||
| Swift (iOS) | — | — | — | https://github.com/Pariette-Inc/signalbird.sdk | ||
| Kotlin (Android) | — | — | — | implementation("io.signalbird:signalbird-sdk:1.4.1") |
Neden böyle yazıldı
Sıfır bağımlılık
Node'da fetch, PHP'de cURL, Python'da urllib, Go'da standart kütüphane, .NET'te HttpClient. Bir SDK'nın HTTP istemcisi sürümü dayatması, sürüm çakışmalarının en sık sebebidir.
Diller arası parite
Bir dile eklenip diğerine eklenmeyen metot derlemeyi kırar. Beş yüzeyin metot kümesi her dilde birebir aynıdır.
Sessiz hata
Log göndermek ya da sohbet balonu çizmek uygulamanızın asıl işi değildir. Signalbird erişilemezse ödeme akışınız çalışmaya devam eder.
Otomatik retry yok
Aynı iletiyi iki kez göndermek hiç göndermemekten pahalıdır; kritik alarmı iki kez çaldırmak da öyle. Yeniden deneme kararı sizindir.
Anahtar türü kurulumda denetlenir
Yanlış aileden anahtar verirseniz ilk istekte değil, istemciyi kurarken hata alırsınız. Sessizce 401 yiyip haftalar sonra fark etmektense.
Açık ve gizli anahtar ayrı
Tarayıcıya ve mobil uygulamaya yalnız açık anahtar iner; güvenliği gizlilikten değil kısıttan gelir — izinli köken, izinli kanal, yalnız kendi verisi.
Sessiz hata, açık kod
Varsayılan davranış istisna fırlatmamaktır. Sonuç zarfında ok:false ve makine okunur bir code döner; geliştirme sırasında throwOnError ile açabilirsiniz.
| Kod | Anlamı |
|---|---|
INVALID_KEY | Anahtar yok, yanlış ya da proje pasif |
WRONG_KEY_TYPE | Yanlış aileden anahtar — kurulum anında yakalanır |
SECRET_KEY_IN_BROWSER | Gizli anahtar tarayıcıdan kullanıldı |
ORIGIN_NOT_ALLOWED | Bu alan adı anahtarda tanımlı değil |
API_KEY_SCOPE | Anahtarda gereken kapsam yok (ör. radio:write) |
MODULE_DISABLED | Paketinizde bu modül yok |
LIMIT_REACHED | Aylık limitiniz doldu |
VALIDATION_ERROR | 422 — gövde doğrulamadan geçmedi |
VISITOR_INVALID | Ziyaretçi sırrı geçersiz; yerel kimlik silinir, yeni oturum açılır |
NETWORK_ERROR | Ağa ulaşılamadı (status 0) |
TIMEOUT | Zaman aşımı (status 0) |
Ayrıntılı dokümantasyon
Her dilin kendi sayfası: tam metot listesi, alan adları, hata kodları ve gerçek örnekler.
Kodunuz sessiz kalmasın
beş dakikada bağlayın
Anahtarınızı oluşturun, paketi kurun, ilk çağrıyı yapın. Kural değişikliği için bir daha yayın almanız gerekmeyecek.