แพ็กเกจอย่างเป็นทางการ · ชิ้นส่วนเรียลไทม์

กล่องการแจ้งเตือนสำหรับแอปของคุณ

กระดิ่งพร้อมตัวเลขที่ยังไม่อ่าน และรายการแจ้งเตือนที่ทำเครื่องหมายว่าอ่านแล้ว ยังไม่อ่าน หรือเก็บถาวรได้ อัปเดตแบบเรียลไทม์ในทุกแท็บและแอปที่เปิดอยู่ เซิร์ฟเวอร์ส่งคำขอเพียงครั้งเดียว Hibira จะเก็บการแจ้งเตือน ส่งถึงแบบเรียลไทม์ และส่งพุชถึงผู้ใช้ที่ออฟไลน์

  • มีคอมโพเนนต์สำหรับ React, Vue และ React Native และวิดเจ็ต Flutter ในแพ็กเกจ hibira_inbox รองรับเจ็ดภาษา ทั้งธีมสว่างและมืด
  • เบราว์เซอร์หรือแอปอ่านและทำเครื่องหมายการแจ้งเตือนของตัวเองได้โดยตรงด้วยโทเค็นผู้ใช้อายุสั้นที่เซิร์ฟเวอร์ของคุณลงนาม จึงไม่ต้องเขียน endpoint ตัวกลาง
  • ผู้ใช้ที่ไม่ได้เชื่อมต่ออยู่จะได้รับการแจ้งเตือนแบบพุชผ่าน Hibira Push ใส่ key แล้วลองใหม่ได้อย่างปลอดภัย การแจ้งเตือนเดียวกันจะไม่ถูกเก็บซ้ำ

ลงชื่อเข้าใช้เพื่อดูโค้ดตัวอย่างเหล่านี้พร้อมโฮสต์คลัสเตอร์ของคุณเอง ลงชื่อเข้าใช้

  1. ติดตั้ง

    npm install @hibira-io/inbox pusher-js
  2. ส่งจากเซิร์ฟเวอร์

    import { createInbox } from '@hibira-io/inbox';
    
    const inbox = createInbox({
      appId: process.env.HIBIRA_APP_ID,
      key: process.env.HIBIRA_KEY,
      secret: process.env.HIBIRA_SECRET,
    });
    
    await inbox.send({
      users: ['ann', 'bob'],
      title: 'Order #1042 shipped',
      url: '/orders/1042',
      key: 'order-1042-shipped',
    });
    
    // GET /api/inbox-token, behind your login
    app.get('/api/inbox-token', requireLogin, (req, res) => {
      res.json({ token: inbox.userToken(req.user.id) });
    });
  3. ใช้งาน

    import { NotificationBell, useInboxClient } from '@hibira-io/inbox/react';
    import '@hibira-io/inbox/styles.css';
    
    export function Header({ user }) {
      const client = useInboxClient({ appId: APP_ID, tokenUrl: '/api/inbox-token', pusher, userKey: user.id });
      return <header>{client && <NotificationBell client={client} />}</header>;
    }
  4. Flutter

    // flutter pub add hibira_inbox
    import 'package:hibira_inbox/hibira_inbox.dart';
    
    final inbox = HibiraInbox(
      appId: hibiraAppId,
      token: () => api.inboxToken(), // from GET /api/inbox-token
      client: hibira, // a signed-in HibiraClient, for live updates
    );
    
    AppBar(actions: [NotificationBell(inbox: inbox)]);

ก่อนเริ่ม

  • ซีเคร็ตของแอปจะแสดงเพียงครั้งเดียว ตอนสร้างแอปหรือตอนหมุนเวียนซีเคร็ต เก็บไว้บนเซิร์ฟเวอร์เท่านั้น ห้ามใส่ในเบราว์เซอร์หรือไฟล์บิลด์ของเกม
  • หากต้องการอัปเดตแบบเรียลไทม์ ให้ผู้ใช้ลงชื่อเข้าใช้ที่ฝั่งไคลเอนต์ (pusher.signin() พร้อม endpoint ยืนยันตัวตนผู้ใช้) ถ้าไม่ลงชื่อเข้าใช้ กล่องการแจ้งเตือนจะรีเฟรชทุกนาที
  • การแจ้งเตือนถูกเก็บไว้ 7 วันในแพ็กเกจ Free, 30 วันใน Hobby และ Starter และ 90 วันตั้งแต่ Pro ขึ้นไป ผู้ใช้แต่ละคนเก็บรายการล่าสุด 1,000 รายการ ผู้รับแต่ละคนนับเป็นหนึ่งข้อความ

ใช้ app key จากแดชบอร์ดของคุณ ส่วน secret ให้เก็บไว้บนเซิร์ฟเวอร์เท่านั้น ช่อง อีเวนต์ และ endpoint การยืนยันสิทธิ์ทำงานเหมือนกับที่ใช้กับ Pusher ทุกประการ สร้างบัญชีฟรีของคุณ →