# Magic Notifications

**Uygulama içi ve push, tek facade ile.**

Magic framework için uygulama içi database bildirimleri ve OneSignal push; polling, realtime teslimat, kullanıcı tercihleri ve bir CLI ile birlikte.

## İki kanal. Tek facade.

Magic uygulamasında bildirimler `Notify` üzerinden geçer: uygulama içi bir database kanalı ve OneSignal push. Bir backend gerekir; dokümanlarda bir Laravel kurulum rehberi var.

### Uygulama içi database kanalı

`Notify.notifications()` kullanıcının bildirimlerini stream olarak verir, `Notify.markAsRead(id)` birini okundu işaretler; ikisi de `NotificationManager` üzerinden çalışır.

[Daha fazla Uygulama içi database kanalı hakkında](https://anilcancakir.com/magic/docs/notifications/basics/channels.md)

### OneSignal push

iOS, Android ve web'de push; sistem izni istenmeden önce bir soft prompt gösterilir. `PushReachability` değeri `unavailable`, `blocked`, `off` ya da `on` olur; diğer platformlarda push yoktur.

[Daha fazla OneSignal push hakkında](https://anilcancakir.com/magic/docs/notifications/basics/drivers.md)

### Sizin yönettiğiniz polling

`Notify.startPolling()`, `stopPolling()`, `pausePolling()` ve `resumePolling()` kullanılır. Başlatmak uygulamaya aittir; aralık `notifications.database.polling_interval` değeridir.

[Daha fazla Sizin yönettiğiniz polling hakkında](https://anilcancakir.com/magic/docs/notifications/architecture/notification-manager.md)

### Realtime teslimat

`Notify.startRealtime()` bildirimleri magic_socket üzerinden bir socket ile, `notification.created` event'iyle iletir.

[Daha fazla Realtime teslimat hakkında](https://anilcancakir.com/magic/docs/notifications/architecture/notification-manager.md)

### Kullanıcı tercihleri

`NotificationPreferencesView` hazır bir tercihler ekranıdır; kullanıcı başına tercihler için bir controller ve bir model ile gelir.

[Daha fazla Kullanıcı tercihleri hakkında](https://anilcancakir.com/magic/docs/notifications/basics/preferences.md)

### Installer ve doctor

`notifications:install` ve bir doctor içeren dowel CLI; ayrıca yapay zeka araçları için iki salt okunur MCP aracı: `notifications_doctor` ve `notifications_channels`.

[Daha fazla Installer ve doctor hakkında](https://anilcancakir.com/magic/docs/notifications/basics/cli.md)

## Saniyeler içinde ekleyin

```bash
flutter pub add magic_notifications
```

Ya da `pubspec.yaml` dosyasına ekleyin:

```yaml
dependencies:
  magic_notifications: ^1.0.1
```

Ya da yapay zeka ajanınıza şu istemi verin:

```text
https://anilcancakir.com/magic/docs/notifications/llms.txt adresini oku ve Magic Notifications paketini bu projeye kur.
```

## Dokümanlar

### Getting Started

- [Installation](https://anilcancakir.com/magic/docs/notifications/getting-started/installation.md)
- [Configuration](https://anilcancakir.com/magic/docs/notifications/getting-started/configuration.md)

### The Basics

- [Channels](https://anilcancakir.com/magic/docs/notifications/basics/channels.md)
- [Drivers](https://anilcancakir.com/magic/docs/notifications/basics/drivers.md)
- [Preferences](https://anilcancakir.com/magic/docs/notifications/basics/preferences.md)
- [Laravel Backend Setup](https://anilcancakir.com/magic/docs/notifications/basics/laravel-backend-setup.md)
- [Shipping push in a release build](https://anilcancakir.com/magic/docs/notifications/basics/shipping-push.md)
- [CLI Reference](https://anilcancakir.com/magic/docs/notifications/basics/cli.md)
- [Notification Dropdown](https://anilcancakir.com/magic/docs/notifications/basics/notification-dropdown.md)

### Architecture

- [Notification Manager](https://anilcancakir.com/magic/docs/notifications/architecture/notification-manager.md)
- [Service Provider](https://anilcancakir.com/magic/docs/notifications/architecture/service-provider.md)
