README.md in atol-0.1 vs README.md in atol-0.1.1

- old
+ new

@@ -1,9 +1,9 @@ ![ruby-logo](https://www.ruby-lang.org/images/header-ruby-logo.png) ![atol-logo](http://www.atol.ru/site_styles/img/logo-red.png) -[![BuildStatus](https://travis-ci.org/GeorgeGorbanev/atol-rb.png)](https://travis-ci.org/GeorgeGorbanev/atol-rb) [![Maintainability](https://api.codeclimate.com/v1/badges/8c702db502a7a6abdcba/maintainability)](https://codeclimate.com/github/GeorgeGorbanev/atol-rb/maintainability) [![Coverage Status](https://coveralls.io/repos/github/GeorgeGorbanev/atol-rb/badge.svg?branch=master)](https://coveralls.io/github/GeorgeGorbanev/atol-rb?branch=master) +[![Gem Version](https://badge.fury.io/rb/atol.svg)](https://badge.fury.io/rb/atol) [![BuildStatus](https://travis-ci.org/GeorgeGorbanev/atol-rb.png)](https://travis-ci.org/GeorgeGorbanev/atol-rb) [![Maintainability](https://api.codeclimate.com/v1/badges/8c702db502a7a6abdcba/maintainability)](https://codeclimate.com/github/GeorgeGorbanev/atol-rb/maintainability) [![Coverage Status](https://coveralls.io/repos/github/GeorgeGorbanev/atol-rb/badge.svg?branch=master)](https://coveralls.io/github/GeorgeGorbanev/atol-rb?branch=master) # atol-rb Пакет содержит набор классов для работы с [KaaS-сервисом АТОЛ-онлайн](https://online.atol.ru/) по [описанному протоколу](https://online.atol.ru/files/%D0%90%D0%A2%D0%9E%D0%9B%20%D0%9E%D0%BD%D0%BB%D0%B0%D0%B8%CC%86%D0%BD._%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D0%B0.pdf). @@ -14,14 +14,14 @@ ## Использование ### Установка пакета -Необходимо добавить в Gemfile проекта строчку: +Необходимо добавить в Gemfile проекта строку: ```ruby -gem 'weekends' +gem 'atol' ``` И запустить команду: ``` $ bundle install @@ -71,11 +71,11 @@ # => 'example-token-string' ``` Токен можно будет использовать в течение 24 часов после первого запроса. -Сервис АТОЛ не предоставляет информации о сроке жизни токена, поэтому его механизм его кеширования полностью зависит от приложения. +Сервис АТОЛ не предоставляет информации о сроке жизни токена, поэтому механизм его кеширования полностью зависит от приложения. ### Регистрация документа #### Создание тела запроса @@ -206,6 +206,35 @@ token: token, body: body, req_logger: lambda { |req| puts req.body }, res_logger: lambda { |res| puts res.body } ).call +``` + +#### Коллбэк регистрации документа + +После отправки документа в обработку сервер АТОЛ отправит запрос с состоянием обработки документа на URL, указанный в запросе. + +`Atol::Request::PostDocument::Sell::Body` добавить в тело URL, если он будет указан в конфигурации. + +На примере Rails-приложения динамический параметр может быть добавлен при инициализации сервера: + +```ruby +# config/initializers/atol.rb + +Rails.application.config.after_initialize do + Atol.config.callback_url = Rails.application.routes.url_helpers.atol_callback_url +end + +``` + +#### Запрос статуса документа + +Если в течение 300 секунд не поступил запрос с состоянием документа, то необходимо запросить его через get-запрос. + +Для этого можно воспользоваться классом `Atol::Transaction::GetDocumentState`, достаточно передать ему токен и uuid документа: + +```ruby + +response = Atol::Transaction::GetDocumentState.new(token: token, uuid: uuid).call + ``` \ No newline at end of file