Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin
Giới thiệu
Trong một số trường hợp, bạn có thể cần bộ đếm giao dịch dựa trên biến hoặc giá trị tuỳ chỉnh. Ví dụ như bạn có thể cần phải:
- Tính phí nhà phát triển một số tiền có thể thay đổi dựa trên giá trị được cung cấp trong thông báo của một API . Ví dụ: có thể bạn muốn tính phí nhà phát triển ứng dụng dựa trên số lượng byte được truyền trong yêu cầu API.
- Nhóm nhiều lệnh gọi API vào một giao dịch.
Khi sử dụng gói giá có thuộc tính tuỳ chỉnh, bạn có thể xác định giá trị trong thông báo của một API lệnh gọi đóng vai trò là bộ đếm và được dùng để tính số lượng giao dịch và phí.
Các gói giá sau đây có thuộc tính tuỳ chỉnh được hỗ trợ:
- Bảng giá có thuộc tính tuỳ chỉnh
- Thông báo có thể điều chỉnh bằng thuộc tính tuỳ chỉnh
Bạn có thể đặt tối đa 10 thuộc tính tuỳ chỉnh cho mỗi gói giá.
Tìm hiểu cách tính thuộc tính tuỳ chỉnh
Cách giá trị thuộc tính tuỳ chỉnh được tính vào số lượng giao dịch và khoản phí của gói giá phụ thuộc vào mô hình tính phí, như được tóm tắt trong bảng sau.
Kiểu sạc | Cách tính thuộc tính tuỳ chỉnh |
---|---|
Tốc độ cố định và băng tần thể tích |
Đối với Mức phí cố định, số thuộc tính tuỳ chỉnh trở thành số lượng giao dịch được nhân với tỷ lệ. Đối với Băng tần số lượng lớn, số lượng giao dịch trong một dải tăng theo số thuộc tính tuỳ chỉnh và nhà phát triển phải trả phí cho số thuộc tính đó số lượng giao dịch. Ví dụ: Nếu giá trị thuộc tính tuỳ chỉnh trong thông báo là 10, thì nhà phát triển được tính phí cho 10 giao dịch và 10 giao dịch được thêm vào số lượng băng tần hiện tại. Nếu nhà phát triển chỉ còn 6 giao dịch trong hiện tại thì 6 được nhân với tỷ lệ của dải đó. 4 thiết bị còn lại sẽ chuyển sang nhóm tiếp theo và được nhân với tỷ lệ của nhóm đó. Trong gói dải âm lượng, nếu dải âm lượng gần đây nhất có giới hạn (không phải là "không giới hạn") và giao dịch vượt quá hạn mức đó, có hai điều sẽ xảy ra:
|
Bundle |
Vì gói được tính phí theo nhóm chứ không phải theo giao dịch, nên: phép tính xảy ra:
Ví dụ: nếu số thuộc tính tuỳ chỉnh trong thông báo là 10, thì 10 sẽ được thêm vào số lượng giao dịch được sử dụng trong gói. Nếu nhà phát triển chỉ có 6 giao dịch còn lại trong gói hiện tại, sau đó gói đó sẽ được lấp đầy và số lượng gói sẽ tăng thêm 4. Giá cho gói tiếp theo đó, nếu có, là đã sạc. Nếu gói cuối cùng có giới hạn (không phải là "không giới hạn") và giao dịch vượt quá giới hạn đó hạn chế, có hai điều xảy ra:
|
Thông báo có thể điều chỉnh |
Đối với thông báo có thể điều chỉnh, phép tính sau sẽ diễn ra:
Ví dụ: nếu số thuộc tính tuỳ chỉnh trong thông báo là 10, thì 10 sẽ được thêm vào tổng số giao dịch. |
Nơi mà gói giá nhận được giá trị thuộc tính tùy chỉnh
Chính sách ghi giao dịch (trên gói sản phẩm API) cho biết vị trí kiếm tiền trong cho giá trị thuộc tính tùy chỉnh. Bạn xác định thuộc tính tùy chỉnh trong Thuộc tính tùy chỉnh của chính sách ghi lại giao dịch cho gói sản phẩm API.
Tiếp theo, bạn có thể chọn thuộc tính tuỳ chỉnh đó trong gói giá sau khi tạo một API gói sản phẩm chứa chính sách ghi lại giao dịch với đã xác định.
Sau đây là quy trình cấp cao:
- Xác định các thuộc tính tuỳ chỉnh khi thêm sản phẩm API.
- Tạo gói sản phẩm API chứa sản phẩm đó.
Trong chính sách ghi lại giao dịch cho gói sản phẩm API, hãy thêm các thuộc tính tuỳ chỉnh sẽ dùng để xác định gói giá. - Tạo gói giá của bảng giá loại hoặc thông báo có thể điều chỉnh cho gói sản phẩm API và chỉ định thông số xếp hạng tuỳ chỉnh.
Hình sau đây thể hiện mối quan hệ giữa thuộc tính tuỳ chỉnh được xác định trong chính sách ghi lại giao dịch và cấu hình gói giá. Chiến lược phát hành đĩa đơn thông báo có thể điều chỉnh và mối quan hệ về gói giá thuộc tính tuỳ chỉnh cũng tương tự nhau, mặc dù không áp dụng giá trị giới hạn số lượng.
Cách tạo giá trị thuộc tính trong thông báo
Chính sách ghi lại giao dịch có thể tìm giá trị thuộc tính tuỳ chỉnh ở một số nơi, chẳng hạn như tiêu đề phản hồi, nội dung phản hồi hoặc các biến luồng được xác định trước trong phản hồi. (Yêu cầu không thực hiện được, vì một giao dịch sẽ không chính thức cho đến khi bạn xử lý thành công response.) Sau đây là các ví dụ minh hoạ cách thêm tiêu đề phản hồi bằng giá trị số vào thông báo. Trong cả hai trường hợp, chúng ta sẽ sử dụng Chính sách gán tin nhắn trong kết hợp với các biến.
Thêm kích thước tải trọng của yêu cầu vào tiêu đề phản hồi
Trong mỗi lời mời nhắn tin, có một biến client.received.content.length
chứa số byte trong tải trọng yêu cầu. Bằng cách đính kèm chính sách Chỉ định tin nhắn vào
Phản hồi của Điểm cuối proxy, chúng ta có thể tạo tiêu đề phản hồi có tên là messageSize
chứa giá trị độ dài:
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1"> <DisplayName>Assign Message 1</DisplayName> <Set> <Headers> <Header name="messageSize">{client.received.content.length}</Header> </Headers> </Set> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <AssignTo createNew="false" transport="http" type="request"/> </AssignMessage>
Thêm giá trị thuộc tính tùy chỉnh của ứng dụng vào tiêu đề
Tương tự như vậy, chúng ta có thể tạo tiêu đề bằng giá trị của thuộc tính tuỳ chỉnh trên một ứng dụng.
Ví dụ: nếu bạn thêm một thuộc tính tuỳ chỉnh có tên là apprating
cho mỗi nhà phát triển
ứng dụng, như sau:
Khi bạn sử dụng chính sách Xác minh khoá API (bắt buộc để kiếm tiền), giá trị này là
được lưu trữ trong một biến có tên là verifyapikey.{policy_name}.apprating
. Sử dụng nút Chỉ định
Chính sách thông báo đính kèm với phản hồi của Điểm cuối proxy, bạn có thể tạo tiêu đề có tên là
apprating
chứa giá trị apprating
của ứng dụng:
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1"> <DisplayName>Assign Message 1</DisplayName> <Set> <Headers> <Header name="apprating">{verifyapikey.Verify-API-Key-1.apprating}</Header> </Headers> </Set> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <AssignTo createNew="false" transport="http" type="request"/> </AssignMessage>
Thiết lập gói giá
Khác với cách thiết lập thuộc tính tuỳ chỉnh như mô tả ở trên, gói giá được thiết lập theo cách tương tự như bạn vẫn thường làm (đối với những gói giá không có thuộc tính tuỳ chỉnh), nhưng phải tuân thủ các yêu cầu sau.
Định cấu hình gói giá bằng thuộc tính tuỳ chỉnh bằng giao diện người dùng
Định cấu hình gói bảng giá có thuộc tính tuỳ chỉnh bằng giao diện người dùng Edge hoặc giao diện người dùng Classic Edge, theo mô tả trong các phần sau.
Edge
Cách định cấu hình gói giá bằng các thuộc tính tuỳ chỉnh bằng giao diện người dùng Edge:
- Xác định các thuộc tính tuỳ chỉnh khi thêm sản phẩm API.
- Tạo gói sản phẩm API chứa sản phẩm đó. Xem phần Tạo gói sản phẩm API.
Trong chính sách ghi lại giao dịch cho gói sản phẩm API, hãy thêm các thuộc tính tuỳ chỉnh sẽ dùng để xác định gói giá. Để biết chi tiết, hãy xem phần giới thiệu trong chủ đề này, cũng như Tạo chính sách ghi lại giao dịch. - Tạo gói giá cho gói sản phẩm API và chỉ định thông số xếp hạng tuỳ chỉnh.
Để biết thêm thông tin, hãy xem bài viết Định cấu hình chi tiết gói giá bằng giao diện người dùng.
Classic Edge (Đám mây riêng tư)
Làm theo các bước sau để tạo Bảng giá bằng gói Thuộc tính tuỳ chỉnh bằng giao diện người dùng Classic Edge:
- Trong chính sách ghi giao dịch của một sản phẩm API, hãy thêm các thuộc tính tùy chỉnh sẽ dùng để xác định gói giá. Để biết chi tiết, hãy xem phần giới thiệu trong chủ đề này, cũng như cách Tạo giao dịch chính sách ghi lại. Thực hiện việc này cho từng sản phẩm API bạn muốn đưa vào gói API.
- Sau khi các sản phẩm API và chính sách ghi giao dịch được định cấu hình chính xác theo cách bạn nếu muốn, hãy tạo gói API chứa sản phẩm. Xem phần Tạo gói API.
- Tạo gói giá cho gói API, chọn loại gói giá là Bảng giá với Thuộc tính tuỳ chỉnh.
-
Nhấp vào đường liên kết Bảng giá. Thao tác này sẽ mở ra cửa sổ Thẻ giá.
- Chọn một thuộc tính tuỳ chỉnh trong trình đơn thả xuống Thuộc tính tuỳ chỉnh. Trình đơn liệt kê các tuỳ chỉnh
được tạo cho sản phẩm trong chính sách ghi lại giao dịch. Nhà phát triển bị tính phí
dựa trên giá trị của thuộc tính tuỳ chỉnh đã chọn trong mỗi giao dịch.
(Giá trị thuộc tính * giá = phí cho nhà phát triển) - Thiết lập một gói thu phí trong miễn phí (không bắt buộc) theo mô tả trong phần Chỉ định gói giá chi tiết.
- Thiết lập mô hình tính phí như mô tả trong phần Chỉ định gói giá chi tiết. Tuy nhiên, hãy lưu ý rằng đối với Thẻ giá có loại gói giá Thuộc tính tuỳ chỉnh, mô hình sạc sẽ dựa trên thuộc tính tuỳ chỉnh mà bạn chọn. Ví dụ: nếu bạn chọn Căn hộ Với giá là mô hình tính phí, nhà phát triển bị tính mức phí cố định dựa trên mức phí tuỳ chỉnh như số byte được truyền trong mỗi giao dịch (không phải là tốc độ cố định cho từng giao dịch). Xem phần Tính toán để biết thêm thông tin.
-
Nhấp vào Lưu
Bản nháp.
Chỉ xuất bản kế hoạch khi bạn chắc chắn đó là kế hoạch cuối cùng. Xem phần Xuất bản kế hoạch giá để biết thông tin về cách đặt Ngày xuất bản và xuất bản .
Để biết thêm thông tin, hãy xem Chỉ định thông tin chi tiết về gói giá bằng giao diện người dùng.
Thiết lập kế hoạch thông báo có thể điều chỉnh bằng các thuộc tính tuỳ chỉnh bằng giao diện người dùng
Định cấu hình gói thông báo có thể điều chỉnh bằng các thuộc tính tuỳ chỉnh, như mô tả dưới đây.Edge
Cách định cấu hình gói giá bằng các thuộc tính tuỳ chỉnh bằng giao diện người dùng Edge:
- Xác định các thuộc tính tuỳ chỉnh khi thêm sản phẩm API.
- Tạo gói sản phẩm API chứa sản phẩm đó. Xem phần Tạo gói sản phẩm API.
Trong chính sách ghi lại giao dịch cho gói sản phẩm API, hãy thêm các thuộc tính tuỳ chỉnh sẽ dùng để xác định gói giá. Để biết chi tiết, hãy xem phần giới thiệu trong chủ đề này, cũng như Tạo chính sách ghi lại giao dịch. - Tạo gói giá cho gói sản phẩm API và chỉ định thông số xếp hạng tuỳ chỉnh.
Để biết thêm thông tin, hãy xem bài viết Định cấu hình kế hoạch thông báo có thể điều chỉnh bằng cách sử dụng giao diện người dùng.
Classic Edge (Đám mây riêng tư)
Cách định cấu hình gói giá bằng các thuộc tính tuỳ chỉnh bằng giao diện người dùng Classic Edge:
- Trong chính sách ghi giao dịch của một sản phẩm API, hãy thêm các thuộc tính tuỳ chỉnh sẽ dùng để xác định gói giá. Để biết chi tiết, hãy xem phần giới thiệu trong chủ đề này, cũng như cách Tạo giao dịch chính sách ghi lại. Thực hiện việc này cho từng sản phẩm API bạn muốn đưa vào gói API.
- Sau khi các sản phẩm API và chính sách ghi giao dịch được định cấu hình chính xác theo cách bạn nếu muốn, hãy tạo gói API chứa sản phẩm. Xem phần Tạo gói API.
- Tạo gói giá cho gói API, chọn loại gói giá là Có thể điều chỉnh Thông báo có thuộc tính tuỳ chỉnh.
-
Nhấp vào đường liên kết Chi tiết. Thao tác này sẽ mở Thông báo có thể điều chỉnh cửa sổ.
- Chọn một thuộc tính tuỳ chỉnh trong trình đơn thả xuống Thuộc tính tuỳ chỉnh. Thực đơn liệt kê các thuộc tính tuỳ chỉnh được tạo cho sản phẩm trong chính sách ghi lại giao dịch. Chiến lược phát hành đĩa đơn tổng số giao dịch của nhà phát triển được tính toán dựa trên giá trị của trong mỗi giao dịch.
- Đặt Cơ sở tổng hợp thành khoảng thời gian mà âm lượng dữ liệu giao dịch được tổng hợp. Chọn một số từ 1 đến 24 tháng. Giá trị mặc định là 1 1 tháng.
- Nhấp vào Áp dụng và đóng.
-
Nhấp vào Lưu
Bản nháp.
Chỉ xuất bản kế hoạch khi bạn chắc chắn đó là kế hoạch cuối cùng. Xem phần Xuất bản kế hoạch giá để biết thông tin về cách đặt Ngày xuất bản và xuất bản .
Để biết thêm thông tin, hãy xem Chỉ định chi tiết gói thông báo có thể điều chỉnh bằng giao diện người dùng.
Chỉ định thông tin chi tiết cho một gói giá bằng thuộc tính tuỳ chỉnh bằng API
Thực hiện các bước điều kiện tiên quyết sau đây:
- Trong chính sách ghi giao dịch của một sản phẩm API, hãy thêm các thuộc tính tuỳ chỉnh sẽ dùng để xác định gói giá. Để biết chi tiết, hãy xem phần giới thiệu trong chủ đề này, cũng như cách Tạo giao dịch chính sách ghi lại. Thực hiện việc này cho từng sản phẩm API bạn muốn đưa vào gói API.
- Sau khi các sản phẩm API và chính sách ghi giao dịch được định cấu hình chính xác theo cách bạn nếu muốn, hãy tạo gói API chứa sản phẩm. Xem phần Tạo gói API.
Tiếp theo, bạn sẽ dùng API để tạo gói giá.
Khi tạo gói giá, bạn sẽ chỉ định thông tin chi tiết về một gói giá bằng các thuộc tính tuỳ chỉnh. Bạn
chỉ định các thông tin chi tiết trong thuộc tính ratePlanDetails
trong nội dung yêu cầu trong một
gọi đến /organizations/{org_name}/monetization-packages/{package_id}/rate-plans
. Trong
các chi tiết, bạn sẽ chỉ định giá trị thông số xếp hạng xác định tên của tùy chỉnh
. Bạn cũng có thể chỉ định một giá trị thông số xếp hạng tổng hợp thuộc tính tuỳ chỉnh
trong một khoảng thời gian chỉ định.
Xem Gói giá chế độ cài đặt cấu hình chi tiết để xem danh sách đầy đủ các lựa chọn chi tiết về gói giá.
Ví dụ: sau đây là cách tạo một Bảng giá có gói Thuộc tính tuỳ chỉnh dựa trên một
có tên messageSize
(xem các mục được in in đậm).
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "name": "Custom attribute-based rate card plan", "developer":null, "developerCategory":null, "currency": { "id" : "usd" }, "description": "Custom attribute-based rate card plan", "displayName" : "Custom attribute-based rate card plan", "frequencyDuration": "1", "frequencyDurationType": "MONTH", "earlyTerminationFee": "10", "monetizationPackage": { "id": "location" }, "organization": { "id": "{org_name}" }, "paymentDueDays": "30", "prorate": "false", "published": "false", "ratePlanDetails":[ { "currency":{ "id":"usd" }, "duration":1, "durationType":"MONTH", "meteringType":"VOLUME", "paymentDueDays":"30", "ratingParameter":"messageSize", "ratingParameterUnit":"MB", "organization":{ "id":"{org_name}" }, "ratePlanRates":[ { "rate":0.15, "startUnit":0, "type":"RATECARD", "endUnit":1000 }, { "rate":0.1, "startUnit":1000, "type":"RATECARD", "endUnit":null } ], "freemiumUnit":0, "freemiumDuration":0, "freemiumDurationType":"MONTH", "type":"RATECARD", "customPaymentTerm":false } ], "freemiumUnit":0, "freemiumDuration":0, "freemiumDurationType":"MONTH", "contractDuration":"1", "contractDurationType":"YEAR", "recurringStartUnit": 1, "recurringType": "CALENDAR", "recurringFee": "10", "setUpFee": "10", "startDate": "2013-09-15 00:00:00", "type": "STANDARD" }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \ -u email:password
Sau đây là một Thông báo có thể điều chỉnh bằng kế hoạch giá Thuộc tính tuỳ chỉnh dựa trên
thuộc tính tùy chỉnh có tên là messageSize
(xem mục được in in đậm).
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "name": "AdjustableNotification", "displayName": "Custom attribute-based adjustable notification plan", "description": "Custom attribute-based adjustable notification plan", "published": "true", "organization": { "id": "myorg" }, "startDate": "2016-04-15 00:00:00", "type": "STANDARD", "monetizationPackage": { "id": "p1", "name": "test" }, "currency": { "id" : "usd", "name" : "USD" }, "ratePlanDetails": [ { "type": "USAGE_TARGET", "meteringType": "DEV_SPECIFIC", "duration": 1, "durationType": "MONTH", "ratingParameter": "messageSize", "ratingParameterUnit": "MB", "organization": { "id": "myorg" }, "currency": { "id": "usd", "name": "USD" } } ] }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/p1/rate-plans" \ -u email:password