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 signalbird
5yüzey
12giriş noktası
109metot, hepsinde aynı ad
0bağımlılık

Beş yüzey

Hangi işi yapıyorsanız o kapıdan girin

Beş yüzeyin ANAHTARI TEK: alan adınızın anahtarı. Ayrım yüzeyde değil anahtarın türünde, gizli anahtar sunucunuzda durur ve her şeyi yapar, açık anahtar tarayıcıya iner ve yalnız ziyaretçinin kendi verisine dokunur.

Log ve olay

Telsiz

Uygulamanızdan bir kanala mesaj yazar. Bildirimin kime, hangi kanaldan ve hangi saatte gideceği panelde durur, kuralı değiştirmek için kod yayınlamanız gerekmez.

Anahtar
sb_secret_live_… / sb_public_live_…
Nerede çalışır
Sunucu ve tarayıcı
metot
7
E-posta · SMS · Push

Gönderim

İşlemsel ve ticari ileti gönderir; kişi, liste ve kampanya yönetir, mesaj durumlarını okur, webhook imzasını doğrular.

Anahtar
sb_secret_live_…
Nerede çalışır
Yalnız sunucu
metot
20
Proje · Gelen kutusu · Uygulama

Yönetim

Panelde tıklayarak yaptığınız her şey: Telsiz projesi ve kanalı açmak, olay akışını okumak, sohbet gelen kutusunu işlemek, uygulama ve cihaz yönetmek.

Anahtar
sb_secret_live_…
Nerede çalışır
Yalnız sunucu
metot
45
Son kullanıcı sohbeti + push

Uygulama

Sizin müşterinizin kullanıcısı için: canlı sohbet ve push cihaz kaydı. Kendi arayüzünüzü yazın ya da hazır widget'ı gömün.

Anahtar
sb_public_live_…
Nerede çalışır
Web, iOS, Android
metot
17
Signalbird'ü kendi ürününüzde satın

Partner

Sözleşmeli platformlar için: müşteri hesabını siz açarsınız, domainini eklersiniz, ödemeyi siz alır ve modülü siz açarsınız. Panel ekranını kendi sayfanıza gömersiniz, kopyası değil, aynısı. Süper yönetici DEĞİLDİR: anahtarınız yalnız sizin açtığınız hesapları görür.

Anahtar
sb_secret_live_…
Nerede çalışır
yalnız sunucu
metot
20
Kod yazmadan

Hazır widget

Canlı sohbeti sitenize tek bir script etiketiyle koyun. Rengi, yeri ve karşılama mesajı panelden ayarlanır.

Dosya
signalbird.io/sdk/v1/signalbird.js
Anahtar
sb_public_live_…

Yönetim yüzeyi bir admin arayüzü değildir. Anahtar tek bir alan adına ve onun takımına bağlıdır; kullanıcı, faturalama ve abonelik işlemleri SDK'da yoktur.

Tek anahtar

.env dosyanıza bir satır.

SIGNALBIRD_DOMAIN_KEY=sb_secret_live_…
sb_secret_live_…

Gizli anahtar

Sunucunuzda durur ve her şeyi yapar. Panelde bir kez görünür; kaybederseniz yenisini üretirsiniz. Adres yazmanız gerekmez, üretim kökü paketin içindedir.

sb_public_live_…

Açık anahtar

Tarayıcıya ve mobil uygulamaya gömülür. Yalnız ziyaretçinin kendi verisine dokunur ve yalnız izin verdiğiniz alan adlarından çalışır.

MAIL_MAILER=signalbird

Laravel kullanıyorsanız mevcut Mailable sınıflarınız hiç değişmeden Signalbird'den çıkar. config/logging.php içine bir kanal eklerseniz Log::error() satırlarınız da Telsiz'e düşer.

Kod örnekleri

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.

Node.js / TypeScript
import { signalbird } from 'signalbird'

// SIGNALBIRD_DOMAIN_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')

Node.js / TypeScript: İncele →

Beş dakikada

Kurulumdan ilk çağrıya

Alan adınızı ekleyin, anahtarını alın

Panel → Alan adları → alan adını ekleyin ve TXT ile doğrulayın → Anahtarlar → Yeni anahtar. Gizli anahtar bir kez görünür ve `.env`'e konur; açık anahtar tarayıcıya gömülür. Kaybederseniz yenisini üretirsiniz, anahtar sayısı sınırsızdır.

Paketi kurun

Tek paket her yüzeyi taşır. Bağımlılık getirmez, projenizin HTTP istemcisi sürümüne karışmaz.

Çağırın

Hata fırlatmaz: telsiz erişilemezse ödeme akışınız çökmez. Sonuç her zaman ok/status/code zarfıdır.

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.

Dil matrisi

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 / platformTelsizGönderimYönetimUygulamaKurulum
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/v2
.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:2.10.1")

Tasarım kararları

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.

Bir anahtar, bir alan adı

Anahtar alan adına aittir: penyu.io'nun anahtarı submitcms.com'un verisine erişemez. Kodun içine gömdüğünüz şey anahtar değil, kanalın adıdır, anahtarı yenilediğinizde kodunuz aynı kalır.

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, yalnız ziyaretçinin kendi verisi. Gizli anahtar Origin başlığı taşıyan bir istekte reddedilir.

Hata kodları

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.

INVALID_KEYAnahtar yok, yanlış ya da iptal edilmiş
WRONG_KEY_TYPEYanlış anahtar türü, gizli/açık ayrımı kurulum anında yakalanır
SECRET_KEY_IN_BROWSERGizli anahtar tarayıcıdan kullanıldı
ORIGIN_NOT_ALLOWEDBu alan adı anahtarda tanımlı değil
API_KEY_SCOPEBu uç gizli anahtar ister (açık anahtarla çağrıldı)
MODULE_DISABLEDPaketinizde bu modül yok
LIMIT_REACHEDAylık limitiniz doldu
VALIDATION_ERROR422, gövde doğrulamadan geçmedi
VISITOR_INVALIDZiyaretçi sırrı geçersiz; yerel kimlik silinir, yeni oturum açılır
NETWORK_ERRORAğa ulaşılamadı (status 0)
TIMEOUTZaman aşımı (status 0)