SDK · نسخه 1.0.0

SDK آی‌اواس ایران‌ناتیفیکیشن

اعلان پوش برای اپ‌های آیفون و آیپد، با Swift Package Manager

SDK رسمی IRNoti برای ثبت دستگاه و توکن پوش، دریافت اعلان، بخش‌بندی کاربران و گزارش تحویل و کلیک، همراه با Notification Service Extension برای اعلان تصویری.

امکانات

ثبت خودکار دستگاه

توکن FCM دریافت، ثبت و در صورت تغییر خودکار به‌روز می‌شود.

تاپیک، تگ و شناسه کاربر

مخاطبان را با Topic، Tag، External ID و Alias بخش‌بندی و هدف‌گیری کنید.

رویدادهای رفتاری

رویدادهای برنامه (مثل خرید) را با پارامتر ثبت کنید تا برای هدف‌گیری استفاده شوند.

گزارش تحویل و کلیک

تحویل، کلیک و دکمه‌ها با صف پایدار و تلاش مجدد خودکار گزارش می‌شوند.

لینک و دیپ‌لینک

باز کردن لینک وب یا دیپ‌لینک برنامه با کلیک روی اعلان یا دکمه‌های آن.

اعلان تصویری و دکمه‌دار

تصویر و حداکثر دو دکمهٔ عملیاتی برای هر اعلان.

Swift Package Manager

نصب با یک آدرس؛ شامل Privacy Manifest اپل.

افزونهٔ اعلان تصویری

محصول IrnotiExtension برای نمایش تصویر و گزارش تحویل از داخل Notification Service Extension.

پیش‌نیازها

  • ✓ Xcode 15 یا بالاتر و iOS 15 یا بالاتر
  • ✓ پروژه Firebase با اپ iOS، فایل GoogleService-Info.plist و کلید APNs آپلودشده در Firebase
  • ✓ سرویس «اعلان پوش» فعال در یک پروژهٔ IRNoti و کلید عمومی اپ

پروژه Firebase برنامه و پروژهٔ سرویس‌اکانتی که در IRNoti ثبت کرده‌اید باید یکی باشد. فقط کلید عمومی (pk_live_…) داخل برنامه قرار می‌گیرد.

شروع در سه قدم

  1. ۱

    سرویس پوش را در پروژه فعال کنید

    در پنل یک سازمان و پروژه بسازید، سرویس «اعلان پوش» را فعال کنید و با فایل سرویس‌اکانت Firebase یک اپ بسازید.

  2. ۲

    کلید عمومی را در برنامه بگذارید

    کلید عمومی اپ (pk_live_…) را از پنل کپی و SDK را در برنامه راه‌اندازی کنید. فقط همین کلید داخل برنامه قرار می‌گیرد.

  3. ۳

    اولین اعلان را بفرستید

    از پنل یا از سرور خودتان با کلید API پروژه ارسال کنید و روی دستگاه واقعی دریافت کنید.

نصب و راه‌اندازی

Swift Package Manager
https://github.com/irnoti/ios-sdk.git

// Up to Next Major Version از 1.0.0
// محصول Irnoti → هدف اصلی برنامه
// محصول IrnotiExtension → فقط Notification Service Extension
AppDelegate.swift
import Irnoti
import FirebaseCore
import FirebaseMessaging

func application(_ application: UIApplication,
                 didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    FirebaseApp.configure()
    Irnoti.shared.configure(appKey: "pk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
    return true
}

func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String?) {
    if let token = fcmToken { Irnoti.shared.setPushToken(token) }
}

متدهای اصلی

configure(appKey:apiBase:)راه‌اندازی SDK
setPushToken(_:)ثبت و به‌روزرسانی توکن FCM
setNotificationsEnabled(_:)اعلام وضعیت مجوز اعلان
identify(_:aliases:) / logout()اتصال دستگاه به کاربر شما
subscribe(_:) / unsubscribe(_:)عضویت در تاپیک و لغو آن
setTags(_:)تنظیم تگ‌ها (مقدار nil یعنی حذف)
track(_:props:)ثبت رویداد
didReceive(userInfo:) / didTap(response:)گزارش تحویل و کلیک

همهٔ متدها غیرهمزمان‌اند و پیش از ثبت دستگاه هم می‌توان آن‌ها را صدا زد. راهنمای کامل در README مخزن.

سوالات متداول

SDK را چطور نصب کنم؟

در Xcode از File › Add Package Dependencies آدرس https://github.com/irnoti/ios-sdk.git را وارد و یک نسخهٔ برچسب‌خورده انتخاب کنید.

به‌جای توکن FCM، توکن APNs بدهم؟

خیر. به setPushToken باید توکن FCM داده شود، نه توکن APNs.

تصویر اعلان نمایش داده نمی‌شود

Notification Service Extension را اضافه کنید و مطمئن شوید آدرس تصویر https است.

روی شبیه‌ساز اعلان نمی‌رسد

شبیه‌ساز اعلان راه دور دریافت نمی‌کند؛ با دستگاه واقعی تست کنید.

مرتبط