Class: Walletone::Notification

Inherits:
Fields
  • Object
show all
Defined in:
lib/walletone/notification.rb

Constant Summary collapse

FIELDS =
i(
WMI_MERCHANT_ID
WMI_PAYMENT_AMOUNT
WMI_COMMISSION_AMOUNT
WMI_CURRENCY_ID
WMI_TO_USER_ID
WMI_PAYMENT_NO
WMI_ORDER_ID
WMI_DESCRIPTION
WMI_SUCCESS_URL WMI_FAIL_URL
WMI_EXPIRED_DATE
WMI_CREATE_DATE WMI_UPDATE_DATE
WMI_ORDER_STATE
WMI_SIGNATURE
)

Instance Method Summary collapse

Methods inherited from Fields

#[], #[]=, #as_list, define_fields, #fetch

Constructor Details

#initialize(params) ⇒ Notification

Returns a new instance of Notification.



26
27
28
# File 'lib/walletone/notification.rb', line 26

def initialize params
  super( params ).freeze
end

Instance Method Details

#accepted?Boolean

Принята оплата или не прошла?

Returns:

  • (Boolean)


39
40
41
# File 'lib/walletone/notification.rb', line 39

def accepted?
  self['WMI_ORDER_STATE'].to_s.upcase == 'ACCEPTED'
end

#valid?(secret_key, hash_type = Signer::DEFAULT_HASH_TYPE) ⇒ Boolean

Обязательно проверяем валидость уведомления, вдруг его прислал злоумышленник.

Returns:

  • (Boolean)


33
34
35
# File 'lib/walletone/notification.rb', line 33

def valid?(secret_key, hash_type = Signer::DEFAULT_HASH_TYPE)
  self.WMI_SIGNATURE == signer.signature( secret_key, hash_type )
end