budhosp-moph-notify

Package Information

Released: 6/27/2025
Downloads: 16 weekly / 198 monthly
Latest Version: 1.0.3
Author: klongchu

Documentation

@klongchu/n8n-nodes-budhosp-moph-notify

n8n
npm
License

Node สำหรับ n8n ที่ใช้ในการส่งข้อความแจ้งเตือนผ่านระบบ BUDHOSP Moph Notify API

🌟 ความสามารถ

  • 🚨 ส่งข้อความแจ้งเตือนผ่าน BUDHOSP Moph Notify API
  • 🔐 รองรับการ Authentication ด้วย Bearer Token
  • � รองรับการส่งข้อมูลด้วย Client Key และ Secret Key
  • ⚡ ตรวจสอบความถูกต้องของข้อมูลก่อนส่ง
  • 🛡️ รองรับ CSRF Token เพื่อความปลอดภัย

📦 การติดตั้ง

ติดตั้งผ่าน npm

npm install @klongchu/n8n-nodes-budhosp-moph-notify

ติดตั้งใน n8n Cloud/Desktop

  1. เข้าไปที่ Settings > Community Nodes
  2. ใส่ @klongchu/n8n-nodes-budhosp-moph-notify ในช่อง Package to install
  3. คลิก Install
  4. รีสตาร์ท n8n

ติดตั้งจาก Source Code

# Clone repository
git clone https://github.com/klongchu/n8n-nodes-budhosp-moph-notify.git
cd n8n-nodes-budhosp-moph-notify

# Install dependencies
npm install

# Build
npm run build

# Link for local development
npm link

🚀 การใช้งาน

1. การตั้งค่า Credentials

  1. ไปที่ Credentials > Create New
  2. เลือก BUDHOSP Moph API
  3. กรอกข้อมูลต่อไปนี้:
    • Bearer Token: Token ที่ได้รับจากระบบ BUDHOSP
    • API Base URL: https://api-gateway.budhosp.com (default)
    • CSRF Token: Token สำหรับความปลอดภัย (ถ้าจำเป็น)
  4. Test และ Save credentials

2. การใช้งาน Node

  1. เพิ่ม BUDHOSP Moph Notify node ใน workflow
  2. เลือก Operation: Send Notify
  3. เลือก Credentials ที่สร้างไว้
  4. กรอกข้อมูล:
    • Client Key: Client Key สำหรับการยืนยันตัวตน
    • Secret Key: Secret Key สำหรับการยืนยันตัวตน
    • ข้อความแจ้งเตือน: ข้อความที่ต้องการส่ง
    • Alt Text (Title): หัวข้อหรือ Alt Text ของการแจ้งเตือน
  5. Execute node

📖 API Reference

Endpoint

POST https://api-gateway.budhosp.com/api/v1/moph/notify

Headers

Authorization: Bearer {token}
Content-Type: application/json
Accept: application/json
X-CSRF-TOKEN: {csrf_token}

Request Body

{
  "clientKey": "18032ec88e49e86f8a947b7e",
  "secretKey": "5BKA45QMDRE6WIVUMPIQXQXA2IQ",
  "message": "ข้อความที่จะส่งไป",
  "altText": "title"
}

Response

{
  "success": true,
  "response": {
    // API response data
  },
  "timestamp": "2025-06-26T14:30:00.000Z"
}

💡 ตัวอย่างการใช้งาน

ตัวอย่าง Workflow

{
  "name": "BUDHOSP Notify Workflow",
  "nodes": [
    {
      "parameters": {
        "operation": "sendNotify",
        "clientKey": "18032ec88e49e86f8a947b7e",
        "secretKey": "5BKA45QMDRE6WIVUMPIQXQXA2IQ",
        "message": "มีการแจ้งเตือนสำคัญจากระบบ BUDHOSP",
        "altText": "BUDHOSP Alert"
      },
      "name": "BUDHOSP Moph Notify",
      "type": "n8n-nodes-budhosp-moph-notify.budhospMophNotify",
      "typeVersion": 1,
      "position": [800, 300],
      "credentials": {
        "budhospMophApi": {
          "id": "1",
          "name": "BUDHOSP API"
        }
      }
    }
  ]
}

การใช้งานร่วมกับ Node อื่น

// ตัวอย่างการดึงข้อมูลจาก Database แล้วส่ง Notify
// 1. HTTP Request Node - ดึงข้อมูลผู้ป่วย
// 2. Function Node - ประมวลผลข้อมูล  
// 3. BUDHOSP Moph Notify Node - ส่งแจ้งเตือน

// ใน Function Node
const patients = $input.all();

return patients.map(patient => ({
  json: {
    clientKey: "18032ec88e49e86f8a947b7e",
    secretKey: "5BKA45QMDRE6WIVUMPIQXQXA2IQ",
    message: `แจ้งเตือน: ผู้ป่วย ${patient.json.name} มีนัดตรวจวันนี้`,
    altText: "นัดตรวจ"
  }
}));

⚠️ การตรวจสอบข้อมูล

Node จะตรวจสอบข้อมูลอัตโนมัติ:

  • Client Key: ต้องไม่เป็นค่าว่าง
  • Secret Key: ต้องไม่เป็นค่าว่าง
  • Message: ต้องไม่เป็นค่าว่าง
  • Alt Text: ต้องไม่เป็นค่าว่าง
  • Credentials: ต้องระบุ Bearer Token

🛠️ การพัฒนา

ข้อกำหนดระบบ

  • Node.js >= 20.15
  • n8n >= 1.99.1

การ Build

# Install dependencies
npm install

# Development mode
npm run dev

# Build for production
npm run build

# Run linting
npm run lint

# Fix linting issues
npm run lintfix

# Format code
npm run format

การทดสอบ

# Build และ test
npm run build

# ตรวจสอบ package
npm pack

🐛 การแก้ไขปัญหา

ปัญหาที่พบบ่อย

  1. Authentication Error

    • ตรวจสอบ Bearer Token ให้ถูกต้อง
    • ตรวจสอบว่า Token ยังไม่หมดอายุ
  2. Invalid Key Error

    • ตรวจสอบให้แน่ใจว่า Client Key และ Secret Key ถูกต้อง
    • ตรวจสอบว่า Key ยังไม่หมดอายุ
  3. Connection Error

    • ตรวจสอบ Base URL ให้ถูกต้อง
    • ตรวจสอบการเชื่อมต่อ Internet

การ Debug

เปิด Debug mode ใน n8n:

export N8N_LOG_LEVEL=debug

📄 License

MIT License - ดู LICENSE.md สำหรับรายละเอียด

📞 การติดต่อ

🔗 ลิงก์ที่เกี่ยวข้อง

Discussion