Module: Bakong::Khqr::Helpers::DeepLink
- Defined in:
- lib/bakong/khqr/helpers/deep_link.rb
Overview
Validates and calls the Bakong Open API deep-link generation endpoint.
Constant Summary collapse
- EXPECTED_PATH =
"/v1/generate_deeplink_by_qr"
Class Method Summary collapse
Class Method Details
.call(url, payload) ⇒ Object
25 26 27 28 29 30 31 32 |
# File 'lib/bakong/khqr/helpers/deep_link.rb', line 25 def call(url, payload) response = Http.post_json(url, payload) error = response[:errorCode] raise Error.from(ERROR_CODES[:INVALID_DEEP_LINK_SOURCE_INFO]) if error == 5 raise Error.from(ERROR_CODES[:INTERNAL_SERVER_ERROR]) if error == 4 response end |
.valid_link?(link) ⇒ Boolean
18 19 20 21 22 23 |
# File 'lib/bakong/khqr/helpers/deep_link.rb', line 18 def valid_link?(link) uri = URI.parse(link) uri.path == EXPECTED_PATH rescue URI::InvalidURIError false end |