ตั้งค่าการแจ้งเตือนโดยใช้เว็บฮุค

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
ข้อมูล

เว็บฮุคคืออะไร

เว็บฮุคกำหนดเครื่องจัดการโค้ดเรียกกลับ HTTP ที่ทริกเกอร์โดยเหตุการณ์ คุณสร้างเว็บฮุคและกำหนดค่าให้จัดการการแจ้งเตือนกิจกรรมได้ นอกเหนือไปจากการใช้เทมเพลตการแจ้งเตือนการสร้างรายได้ตามที่อธิบายไว้ในตั้งค่าการแจ้งเตือนโดยใช้เทมเพลตการแจ้งเตือน

หากต้องการตั้งค่าการแจ้งเตือนโดยใช้เว็บฮุค ให้ทำตามขั้นตอนต่อไปนี้โดยใช้ UI ของ Edge Management หรือ Management and Monetization API

  1. เพิ่มเว็บฮุคที่กำหนดตัวแฮนเดิลการติดต่อกลับสำหรับเหตุการณ์การแจ้งเตือนโดยใช้ UI หรือ API
  2. ตั้งค่าเครื่องจัดการโค้ดเรียกกลับ
  3. ตั้งค่าการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ได้โดยใช้ UI หรือ API

การจัดการเว็บฮุค

เพิ่มและจัดการเว็บฮุคที่กำหนดตัวแฮนเดิลการติดต่อกลับสำหรับเหตุการณ์การแจ้งเตือนโดยใช้ UI หรือ API

การจัดการเว็บฮุคโดยใช้ UI

เพิ่มและจัดการเว็บฮุคที่กำหนดตัวแฮนเดิลการติดต่อกลับสำหรับกิจกรรมการแจ้งเตือนโดยใช้ UI ดังที่อธิบายไว้ในส่วนต่อไปนี้

การสำรวจหน้าเว็บฮุค

เข้าถึงหน้าเว็บฮุคตามที่อธิบายไว้ด้านล่าง

Edge

วิธีเข้าถึงหน้าเว็บฮุคโดยใช้ Edge UI

  1. ลงชื่อเข้าใช้ apigee.com/edge
  2. เลือกเผยแพร่ > การสร้างรายได้ > เว็บฮุคในแถบนำทางด้านซ้าย

หน้าเว็บฮุคจะปรากฏขึ้น

หน้าเว็บฮุคจะให้คุณทำสิ่งต่อไปนี้ได้ดังที่ไฮไลต์ในรูป

Classic Edge (Private Cloud)

วิธีเข้าถึงหน้าเว็บฮุคโดยใช้ UI แบบคลาสสิกของ Edge

  1. ลงชื่อเข้าใช้ http://ms-ip:9000 โดยที่ ms-ip คือที่อยู่ IP หรือชื่อ DNS ของโหนดเซิร์ฟเวอร์การจัดการ
  2. เลือกผู้ดูแลระบบ > เว็บฮุค

หน้าเว็บฮุคจะปรากฏขึ้น

หน้าเว็บฮุคช่วยให้คุณทำสิ่งต่อไปนี้ได้

การเพิ่มเว็บฮุคโดยใช้ UI

วิธีเพิ่มเว็บฮุคโดยใช้ UI

  1. เข้าถึงหน้าเว็บฮุค
  2. คลิก + เว็บฮุค
  3. ป้อนข้อมูลต่อไปนี้ (ต้องกรอกข้อมูลให้ครบทุกช่อง)
    ฟิลด์ คำอธิบาย
    ชื่อ ชื่อของเว็บฮุค
    URL URL ของเครื่องจัดการโค้ดเรียกกลับที่จะถูกเรียกใช้เมื่อมีการทริกเกอร์การแจ้งเตือนเหตุการณ์ โปรดดูการตั้งค่าเครื่องจัดการโค้ดเรียกกลับ
  4. คลิกบันทึก

ระบบจะเพิ่มเว็บฮุคลงในรายการและเปิดใช้โดยค่าเริ่มต้น

การแก้ไขเว็บฮุคใน UI

วิธีแก้ไขเว็บฮุคโดยใช้ UI

  1. เข้าถึงหน้าเว็บฮุค
  2. วางเคอร์เซอร์ไว้เหนือเว็บฮุคที่ต้องการแก้ไข แล้วคลิก ในเมนูการทำงาน
  3. แก้ไขช่องเว็บฮุคตามต้องการ
  4. คลิกอัปเดตเว็บฮุค

การเปิดหรือปิดใช้เว็บฮุคโดยใช้ UI

วิธีเปิดหรือปิดใช้เว็บฮุคโดยใช้ UI

  1. เข้าถึงหน้าเว็บฮุค
  2. วางเคอร์เซอร์เหนือเว็บฮุคและสลับสวิตช์สถานะเพื่อเปิดหรือปิดใช้งาน

การลบเว็บฮุคโดยใช้ UI

วิธีลบเว็บฮุคโดยใช้ UI

  1. เข้าถึงหน้าเว็บฮุค
  2. วางเคอร์เซอร์ไว้เหนือเว็บฮุคที่ต้องการลบ แล้วคลิก

ระบบลบและนำเว็บฮุคออกจากรายการแล้ว

การจัดการเว็บฮุคโดยใช้ API

เพิ่มและจัดการเว็บฮุคโดยใช้ API ตามที่อธิบายไว้ในส่วนต่อไปนี้

การดูเว็บฮุคทั้งหมดที่ใช้ API

ดูเว็บฮุคทั้งหมดโดยการส่งคำขอ GET ไปยัง /mint/organizations/{org_name}/webhooks เช่น

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks" \
  -H "Content-Type: application/json " \
  -u email:password

ตัวอย่างการตอบกลับที่ตอบกลับมีดังนี้

{
  "totalRecords": 2,
  "webhooks": [
    {
      "created": 1460162656342,
      "enabled": false,
      "id": "21844a37-d26d-476c-93ed-38f3a4b24691",
      "name": "webhook1",
      "postUrl": "http://mycompany.com/callbackhandler1",
      "updated": 1460162656342,
      "updatedBy": "joe@example.com"
    },
        {
      "created": 1460138724352,
      "createdBy": "joe@example.com",
      "enabled": true,
      "id": "a39ca777-1861-49cf-a397-c9e92ab3c09f",
      "name": "webhook2",
      "postUrl": "http://mycompany.com/callbackhandler2",
      "updated": 1460138724352,
      "updatedBy": "joe@example.com"
    }

  ]
}

การดูเว็บฮุคโดยใช้ API

ดูเว็บฮุคเดียวโดยการส่งคำขอ GET ไปยัง /mint/organizations/{org_name}/webhooks/{webhook_id}

เช่น

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \
  -H "Content-Type: application/json " \
  -u email:password

ตัวอย่างการตอบกลับมีดังนี้

{
   "created": 1460162656342,
   "enabled": false,
   "id": "21844a37-d26d-476c-93ed-38f3a4b24691",
   "name": "webhook1",
   "postUrl": "http://mycompany.com/callbackhandler1",
   "updated": 1460162656342,
   "updatedBy": "joe@example.com"
 }

การเพิ่มเว็บฮุคโดยใช้ API

เพิ่มเว็บฮุคโดยการส่งคำขอ POST ไปยัง /mint/organizations/{org_name}/webhooks คุณต้องส่งผ่านชื่อเว็บฮุคและ URL ของเครื่องจัดการเรียกกลับที่จะเรียกใช้เมื่อมีการทริกเกอร์การแจ้งเตือนเหตุการณ์

ตัวอย่างต่อไปนี้สร้างเว็บฮุคที่ชื่อ webhook3 และกำหนด callbackhandler3 ให้กับเว็บฮุค

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks"
  -H "Content-Type: application/json "
  -d '{
    "name": "webhook3",
    "postURL": "http://mycompany.com/callbackhandler3"
    }' \
    -u email:password

ตัวอย่างการตอบกลับมีดังนี้

{
  "created": 1460385534555,
  "createdBy": "joe@example.com",
  "enabled": false,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler3",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

การแก้ไขเว็บฮุคโดยใช้ API

แก้ไขเว็บฮุคโดยการส่งคำขอ POST ไปยัง /mint/organizations/{org_name}/webhooks/{webhook_id} ส่งต่อการอัปเดตในส่วนเนื้อหาของคำขอ

ตัวอย่างเช่น การอัปเดตต่อไปนี้อัปเดตเครื่องจัดการโค้ดเรียกกลับที่เชื่อมโยงกับ webhook1

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \
  -H "Content-Type: application/json " \
  -d '{
    "postURL": "http://mycompany.com/callbackhandler4"
  }' \
  -u email:password

ตัวอย่างการตอบกลับมีดังนี้

{
  "created": 1460385534555,
  "enabled": false,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler4",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

การเปิดหรือปิดใช้เว็บฮุคโดยใช้ API

เปิดหรือปิดใช้เว็บฮุคโดยการส่งคำขอ POST ไปยัง /mint/organizations/{org_name}/webhooks/{webhook_id} เหมือนกับที่คุณทำในการอัปเดตเว็บฮุค แล้วตั้งค่าแอตทริบิวต์ที่เปิดใช้ในเนื้อหาคำขอเป็น "จริง" หรือ "เท็จ" ตามลำดับ หากคุณปิดใช้เว็บฮุค ระบบจะไม่ทริกเกอร์เว็บฮุคเมื่อมีเหตุการณ์เกิดขึ้น

ตัวอย่างต่อไปนี้เปิดใช้ webhook3

curl -X POST  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \
  -H "Content-Type: application/json " \
  -d '{
    "enabled": "true"
  }' \
  -u email:password

ตัวอย่างการตอบกลับมีดังนี้

{
  "created": 1460385534555,
  "enabled": true,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler4",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

การลบเว็บฮุคโดยใช้ API

ลบเว็บฮุคโดยการส่งคำขอลบไปยัง /mint/organizations/{org_name}/webhooks/{webhook_id}

หากต้องการระบุว่าจะบังคับให้ลบเว็บฮุคหรือไม่ในระหว่างกระบวนการ ให้ตั้งค่าพารามิเตอร์การค้นหา forceDelete เป็น true หรือ false พารามิเตอร์การค้นหา forceDelete เปิดใช้อยู่ (true) โดยค่าเริ่มต้น

ตัวอย่างต่อไปนี้จะลบ webhook3

curl -X DELETE "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \
  -H "Content-Type: application/json " \
  -u email:password

การตั้งค่าเครื่องจัดการโค้ดเรียกกลับ

ตัวอย่างต่อไปนี้แสดงรูปแบบของคำขอ JSON ที่ส่งไปยังเครื่องจัดการโค้ดเรียกกลับที่กำหนดโดยเว็บฮุคเมื่อมีการทริกเกอร์การแจ้งเตือนเหตุการณ์ คุณต้องตรวจสอบว่าเครื่องจัดการโค้ดเรียกกลับประมวลผลคำขออย่างถูกต้อง

{
        "orgName": "{org_id}",
        "developerEmail": "{dev_email}",
        "developerFirstName": "{first_name}",
        "developerLastName": "{last_name}",
        "companyName": "{company_name}",
        "applicationName": "{app_name}",
        "packageName": "{api_package_name}",
        "packageId": "{api_package_id}",
        "ratePlanId": "{rateplan_id}",
        "ratePlanName": "{rateplan_name}",
        "ratePlanType": "{rateplan_type}",
        "developerRatePlanQuotaTarget": {quota_target},
        "quotaPercentUsed": {percentage_quota_used},
        "ratePlanStartDate": {rateplan_startdate}, 
        "ratePlanEndDate": {rateplan_enddate},
        "nextBillingCycleStartDate": {next_billing_cycle_startdate},
        "products": ["{api_product_name}","{api_product_name}"],
        "developerCustomAttributes": [],
        "triggerTime": {trigger_time},
        "triggerReason": "{trigger_reason}",
        "developerQuotaResetDate": "{devquota_resetdate}"
}

การตั้งค่าการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้

ตั้งค่าการแจ้งเตือนโดยใช้เว็บฮุคสำหรับแพ็กเกจราคาที่ปรับได้ด้วยการใช้ UI หรือ API

การตั้งค่าการแจ้งเตือนสำหรับแพ็กเกจราคาแบบปรับได้โดยใช้ UI

ตั้งค่าการแจ้งเตือนโดยใช้เว็บฮุคสำหรับแพ็กเกจราคาที่ปรับได้ด้วยการใช้ UI ตามที่อธิบายไว้ด้านล่าง

เข้าถึงกล่องโต้ตอบการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้

เข้าถึงกล่องโต้ตอบการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ ดังที่อธิบายไว้ด้านล่าง

Edge

วิธีเข้าถึงกล่องโต้ตอบการแจ้งเตือนโดยใช้ Edge UI

  1. สร้างและเผยแพร่แพ็กเกจอัตราการแจ้งเตือนแบบปรับได้ตามที่อธิบายไว้ในระบุรายละเอียดแผนการแจ้งเตือนแบบปรับได้
  2. เข้าถึงหน้าแพ็กเกจราคาโดยเลือกเผยแพร่ > การสร้างรายได้ > แพ็กเกจราคาในแถบนำทางด้านซ้าย
  3. วางเคอร์เซอร์เหนือแผนอัตราการแจ้งเตือนแบบปรับได้ที่เผยแพร่เพื่อแสดงการดำเนินการ
  4. คลิก +แจ้งเตือน

    กล่องโต้ตอบการแจ้งเตือนจะปรากฏขึ้น

    หมายเหตุ: ต้องเผยแพร่แพ็กเกจราคาเพื่อให้ระบบแสดงการดำเนินการ +แจ้งเตือน

Classic Edge (Private Cloud)

วิธีเข้าถึงหน้าการแจ้งเตือน

  1. สร้างแพ็กเกจอัตราการแจ้งเตือนแบบปรับได้ตามที่อธิบายไว้ในระบุรายละเอียดแผนการแจ้งเตือนแบบปรับได้
  2. เลือกเผยแพร่ > แพ็กเกจเพื่อดูแพ็กเกจราคา
  3. คลิก +แจ้งเตือนในคอลัมน์การดำเนินการสำหรับแพ็กเกจราคา

    กล่องโต้ตอบการแจ้งเตือนจะปรากฏขึ้น

การเพิ่มการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ด้วยการใช้ UI

วิธีเพิ่มการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ UI

  1. เข้าถึงกล่องโต้ตอบการแจ้งเตือน
  2. กำหนดเงื่อนไขการแจ้งเตือนในส่วนช่วงเวลาการแจ้งเตือนโดยระบุเปอร์เซ็นต์ของจำนวนธุรกรรมเป้าหมายในเวลาที่คุณต้องการให้ทริกเกอร์การแจ้งเตือน โดยเฉพาะอย่างยิ่ง
    • หากต้องการกำหนดเปอร์เซ็นต์ที่แน่นอน ให้ป้อนเปอร์เซ็นต์ในช่อง ที่/จาก % และเว้นช่อง To % ว่างไว้
    • หากต้องการตั้งค่าช่วงเปอร์เซ็นต์ ให้ป้อนเปอร์เซ็นต์เริ่มต้นและสิ้นสุดในช่อง At/From % และ To % ตามลำดับ และเพิ่มค่าในช่อง ขั้นตอนที่ % โดยค่าเริ่มต้น ระบบจะส่งการแจ้งเตือนทุกๆ 10% ภายในช่วงที่ระบุ

    ช่อง Notify At จะอัปเดตเพื่อแสดงแต่ละเปอร์เซ็นต์ของจำนวนธุรกรรมเป้าหมายที่จะเรียกให้เหตุการณ์แสดง

  3. หากต้องการกำหนดเงื่อนไขการแจ้งเตือนเพิ่มเติม ให้คลิก +เพิ่ม แล้วทำตามขั้นตอนที่ 4 ซ้ำ
  4. ตั้งค่าการดำเนินการแจ้งเตือนในส่วนเว็บฮุคโดยเลือกเว็บฮุคอย่างน้อย 1 รายการเพื่อจัดการการจัดการการติดต่อกลับเมื่อมีการทริกเกอร์การแจ้งเตือน
  5. คลิกสร้างการแจ้งเตือน

การแก้ไขการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้โดยใช้ UI

วิธีแก้ไขการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ UI

  1. เข้าถึงกล่องโต้ตอบการแจ้งเตือน
  2. คลิก +แจ้งเตือนในคอลัมน์การดำเนินการสำหรับแพ็กเกจราคา
  3. คลิกแก้ไข
  4. แก้ไขค่าตามที่จำเป็น
  5. คลิกบันทึกการแจ้งเตือน

การลบการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ด้วยการใช้ UI

วิธีลบเงื่อนไขการแจ้งเตือนและการดำเนินการ

  1. เข้าถึงกล่องโต้ตอบการแจ้งเตือน
  2. คลิก +แจ้งเตือนในคอลัมน์การดำเนินการสำหรับแพ็กเกจราคา
  3. คลิกลบการแจ้งเตือน

การตั้งค่าการแจ้งเตือนสำหรับแพ็กเกจราคาแบบปรับได้โดยใช้ API

หากต้องการตั้งค่าการแจ้งเตือนสำหรับแพ็กเกจราคาที่ปรับได้ได้โดยใช้ API ให้ใช้ขั้นตอนที่อธิบายไว้ในการจัดการเงื่อนไขและการดำเนินการการแจ้งเตือนด้วย API และใช้แอตทริบิวต์ที่อธิบายไว้ในส่วนนี้

หากต้องการตั้งค่าเงื่อนไขการแจ้งเตือน (notificationCondition) ให้ใช้ค่าแอตทริบิวต์ต่อไปนี้ ดูข้อมูลเพิ่มเติมได้ที่พร็อพเพอร์ตี้การกำหนดค่าสำหรับเงื่อนไขการแจ้งเตือน

แอตทริบิวต์ ค่า
RATEPLAN รหัสของแพ็กเกจอัตราการแจ้งเตือนแบบปรับได้
PUBLISHED TRUE เพื่อระบุว่าต้องเผยแพร่แพ็กเกจอัตราการแจ้งเตือนแบบปรับได้
UsageTarget เปอร์เซ็นต์ของจำนวนธุรกรรมเป้าหมายที่คุณต้องการทริกเกอร์การแจ้งเตือน

แอตทริบิวต์นี้ช่วยให้คุณแจ้งเตือนนักพัฒนาแอปเมื่อใกล้ถึงหรือถึงจำนวนธุรกรรมเป้าหมายสำหรับแพ็กเกจบัตรราคาการแจ้งเตือนแบบปรับได้ที่นักพัฒนาแอปซื้อไว้ เช่น หากนักพัฒนาแอปซื้อแผนอัตราการแจ้งเตือนแบบปรับได้และตั้งจำนวนธุรกรรมเป้าหมายของนักพัฒนาซอฟต์แวร์ไว้เท่ากับ 1,000 คุณก็จะแจ้งได้เมื่อมีธุรกรรมถึง 800 รายการ (80% ของจำนวนธุรกรรมเป้าหมาย) ธุรกรรม 1,000 รายการ (100%) หรือ 1,500 รายการ (150%)

  • หากต้องการกำหนดเปอร์เซ็นต์ที่แน่นอน ให้ป้อน %= n เช่น %= 80 จะส่งการแจ้งเตือนเมื่อเปอร์เซ็นต์จำนวนธุรกรรมเป้าหมายถึง 80%
  • หากต้องการกำหนดช่วงเปอร์เซ็นต์ ให้ป้อนเปอร์เซ็นต์เริ่มต้นและสิ้นสุด และค่าที่จะเพิ่มดังนี้ %= start to end by n เช่น ค่า %= 80 to 100 by 10 จะส่งการแจ้งเตือนเมื่อเปอร์เซ็นต์ของจำนวนธุรกรรมเป้าหมายถึง 80%, 90% และ 100%

หากต้องการตั้งค่าการดำเนินการแจ้งเตือน ให้กำหนดค่าต่อไปนี้ในส่วน actions ดูข้อมูลเพิ่มเติมได้ที่พร็อพเพอร์ตี้การกำหนดค่าสำหรับการดำเนินการแจ้งเตือน

แอตทริบิวต์ ค่า
actionAttribute WEBHOOK เพื่อทริกเกอร์เว็บฮุค
value รหัสของเว็บฮุคที่กำหนดไว้ในส่วนก่อนหน้าในหัวข้อการสร้างเว็บฮุคโดยใช้ API

ต่อไปนี้คือตัวอย่างวิธีสร้างเงื่อนไขการแจ้งเตือนที่ทริกเกอร์เว็บฮุคเมื่อเปอร์เซ็นต์ของจำนวนธุรกรรมเป้าหมายถึง 80%, 90%, 100%, 110% และ 120%

{
    "notificationCondition": [
      {
        "attribute": "RATEPLAN",
        "value": "123456"
      },
      {
        "attribute": "PUBLISHED",
        "value": "TRUE"
      },
      {
        "attribute": "UsageTarget",
        "value": "%= 80 to 120 by 10"
      }
    } 
    ],
   "actions": [{
          "actionAttribute": "WEBHOOK",
          "value": "b0d77596-142e-4606-ae2d-f55c3c6bfebe",
        }]
  }

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการดู การอัปเดต และการลบเงื่อนไขและการดำเนินการการแจ้งเตือน โปรดดูหัวข้อต่อไปนี้

โค้ดตอบกลับของเว็บฮุค

ต่อไปนี้เป็นสรุปโค้ดการตอบสนองของเว็บฮุคและวิธีที่ระบบตีความโค้ดเหล่านั้น

โค้ดตอบกลับ คำอธิบาย
2xx Success
5xx

คำขอล้มเหลว ระบบจะลองส่งคำขออีกครั้งสูงสุด 3 ครั้งในช่วงเวลา 5 นาที

หมายเหตุ: ระยะหมดเวลาการอ่านและการเชื่อมต่อสำหรับคำขอเว็บฮุคอยู่ที่ 3 วินาที ซึ่งอาจส่งผลให้คำขอล้มเหลว

Other response คำขอล้มเหลว ระบบจะไม่ลองดำเนินการตามคำขออีกครั้ง