কনটেন্টে যান

HTTP বলতে পারে এমন সবকিছুর জন্য iOS উইজেট API

PushWard হলো Apple-এর iOS উইজেটের জন্য একটি API: উইজেট একবার ডিক্লেয়ার করুন, তারপর সাধারণ HTTP রিকোয়েস্ট দিয়েই iPhone-এর হোম স্ক্রিন, লক স্ক্রিন ও স্ট্যান্ডবাই চালান। প্রতিটি আপডেট একটি পুশ-চালিত WidgetKit রিফ্রেশ ট্রিগার করে — পোলিং নেই, WidgetKit কোড নেই, Xcode নেই, আপনার দিক থেকে App Store রিভিউও নেই।

iOS হোম স্ক্রিন উইজেট কী?

উইজেট হলো Apple-এর এক নজরে দেখার সারফেস: iPhone-এর হোম স্ক্রিন, লক স্ক্রিন ও স্ট্যান্ডবাইতে সবসময় দৃশ্যমান ছোট টাইল, যা অ্যাপ না খুলেই তথ্য দেখায়। এগুলো তৈরি হয় WidgetKit দিয়ে, যা Apple-এর অন-ডিভাইস ফ্রেমওয়ার্ক, আর সাধারণত প্রতিটি উইজেট এমন একটি অ্যাপের, যা আপনাকে নিজে বানাতে, সাইন করতে ও শিপ করতে হতো। PushWard-এর উইজেট আলাদা: PushWard অ্যাপ সেগুলো রেন্ডার করে, আর তাদের কনটেন্ট আসে আপনার API কল থেকে — সেন্সরের রিডিং, সার্ভারের হেলথ চেক, ডিপ্লয় কাউন্টার, JSON হিসেবে পাঠানো যায় এমন যেকোনো কিছু।

API যেভাবে কাজ করে

POST দিয়ে উইজেট রেজিস্টার করুন, তারপর PATCH দিয়ে আপডেট করুন — পুরো চক্র এটুকুই। প্রতিটি আপডেট Apple Push Notification service-এর মাধ্যমে একটি হালকা পুশ পাঠায়, যা WidgetKit-কে উইজেটের টাইমলাইন আবার লোড করতে বলে; তাই উইজেট কখনো পোলিং না করেই নতুন মান দেখা যায়। প্রতি-উইজেট ঐচ্ছিক পুশ থ্রটল হঠাৎ ঝাঁকে আসা সোর্সগুলোকে একত্র করে।

HTTP দিয়ে উইজেট রেজিস্টার ও আপডেট করুন
# 1. Register a widget
curl -X POST https://api.pushward.app/widgets \
  -H "Authorization: Bearer hlk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "slug": "cpu-load", "name": "CPU Load", "content": {
    "template": "progress", "value": 0.42,
    "label": "load avg", "icon": "cpu", "accent_color": "cyan"
  } }'

# 2. Update it - WidgetKit refreshes the widget
curl -X PATCH https://api.pushward.app/widgets/cpu-load \
  -H "Authorization: Bearer hlk_YOUR_KEY" \
  -H "Content-Type: application/merge-patch+json" \
  -d '{ "content": { "value": 0.78, "accent_color": "orange" } }'

দশটি উইজেট টেমপ্লেট

ডেটার সঙ্গে মানানসই লেআউট বেছে নিন: একটি মান, প্রগ্রেস বার, স্ট্যাটাস লাইট, গজ, স্ট্যাট লিস্ট, ট্রেন্ড স্পার্কলাইন, কাউন্টডাউন, ব্যাটারি স্তর, শিডিউল, বা দুই প্রান্তের মধ্যে ফ্লো। প্রতিটি টেমপ্লেট PushWard অ্যাপ নেটিভভাবে রেন্ডার করে, তাই কোনো ডিজাইন কাজ ছাড়াই আপনার ডেটা পরিপাটি লেআউটে জায়গা পায়।

উইজেট টেমপ্লেটগুলো দেখুন →

কাজ করে এমন ইন্টারঅ্যাকটিভ উইজেট

একটি উইজেটে তিনটি পর্যন্ত ট্যাপ অ্যাকশন থাকতে পারে: হোম স্ক্রিন না ছেড়েই নিঃশব্দ ওয়েবহুক চালানো, ডিপ লিংকে অন্য অ্যাপে যাওয়া, বা কোনো URL খোলা। সার্ভার রিস্টার্ট করুন, শর্টকাট ট্রিগার করুন বা অ্যালার্ট স্বীকার করুন, সরাসরি উইজেট থেকেই — PushWard অ্যাপ কখনো খুলতে হয় না।

আপনার স্ট্যাকের সঙ্গে কাজ করে

আপনি আগে থেকেই যে টুল চালান, সেগুলো দিয়েই উইজেটে ডেটা দিন: Grafana অ্যালার্টে স্ট্যাটাস লাইট বদলানো, Home Assistant অটোমেশনে তাপমাত্রা আপডেট, GitHub Actions জবে ডিপ্লয় কাউন্টার বাড়ানো, cron স্ক্রিপ্টে ব্যাকআপের বয়স পোস্ট করা। HTTP রিকোয়েস্ট পাঠাতে পারলেই সেটির নিজের একটি উইজেট থাকতে পারে।

সব ইন্টিগ্রেশন দেখুন →

উইজেট ও লাইভ অ্যাক্টিভিটি একসঙ্গে

উইজেট ও লাইভ অ্যাক্টিভিটি পরস্পরের পরিপূরক: উইজেট হলো স্থায়ী, নীরব স্ট্যাটাস, যা সরিয়ে না দেওয়া পর্যন্ত হোম স্ক্রিনে থাকে; আর লাইভ অ্যাক্টিভিটি হলো শুরু-শেষওয়ালা একটি কাজ, যা চলার সময় লক স্ক্রিন ও Dynamic Island-এ পিন হয়ে থাকে। PushWard একই REST API আর একই ইন্টিগ্রেশন কী দিয়ে দুটোই চালায়।

লাইভ অ্যাক্টিভিটি API সম্পর্কে জানুন →

প্রায়শই জিজ্ঞাসিত প্রশ্ন

এটা কি Apple-এর অফিশিয়াল WidgetKit API?

না। WidgetKit হলো Apple-এর অন-ডিভাইস ফ্রেমওয়ার্ক, আর সেটি সরাসরি ব্যবহারের মানে উইজেট এক্সটেনশনসহ নিজের iOS অ্যাপ বানিয়ে শিপ করা। PushWard একটি স্বাধীন iOS উইজেট API: WidgetKit এক্সটেনশনটি PushWard অ্যাপের সঙ্গেই আসে, আর আপনার HTTP রিকোয়েস্ট ঠিক করে সেটি কী দেখাবে।

উইজেট কত দ্রুত আপডেট হয়?

প্রতিটি PATCH একটি হালকা পুশ ট্রিগার করে, যা WidgetKit-কে উইজেট আবার লোড করতে বলে; তাই আপডেট সাধারণত কয়েক সেকেন্ডেই পৌঁছে যায়। প্রতি-উইজেট পুশ থ্রটল (1 সেকেন্ড থেকে 1 ঘণ্টা) ঝাঁকে আসা সোর্সগুলোকে একত্র করে, যাতে রিফ্রেশ iOS-এর দেওয়া বাজেটের মধ্যে থাকে।

উইজেট কি লক স্ক্রিন আর স্ট্যান্ডবাইতে কাজ করে?

হ্যাঁ। PushWard উইজেট iPhone-এর হোম স্ক্রিন, লক স্ক্রিন ও স্ট্যান্ডবাইতে যোগ করা যায়। লক স্ক্রিনের কমপ্যাক্ট অ্যাক্সেসরি স্লটে সংক্ষিপ্ত লেআউট দেখা যায়, আর একটিতে ট্যাপ করলে তার কনফিগার করা ট্যাপ অ্যাকশন খোলে।

প্রাপকদের কি কোনো অ্যাপ ইনস্টল করা লাগবে?

হ্যাঁ — বিনামূল্যের PushWard iOS অ্যাপ (iOS 26 বা তার পরের) উইজেট রেন্ডার করে এবং সেগুলো iOS উইজেট পিকারে রেজিস্টার করে। আপনাকে কিছুই বানাতে বা App Store-এ জমা দিতে হবে না।

iOS উইজেট API ব্যবহার করে দেখুন

playground-এ একটি উইজেট পেলোড বানান আর সিমুলেটেড iPhone-এ সেটি রেন্ডার হতে দেখুন, অথবা গেটিং-স্টার্টেড গাইড পড়ে কয়েক মিনিটে curl দিয়ে আপনার প্রথম উইজেট রেজিস্টার করুন।