Учетная запись PayPal Pro содержит мощный программный интерфейс (API), позволяющий контроллеру UniFi работать непосредственно с этим API. В статье также в общих чертах дается сравнение с интеграцией при стандартном PayPal. Преимуществами Paypal Pro является простая настройка и простое обслуживание. Paypal Pro поддерживается конфигурациями контроллера беспроводной точки доступа UniFi. Перечисленные удобства имеют однако, свою цену - ведь за них надо платить ежемесячную абонентскую плату Paypal, и это нам не по душе. О бесплатном решении см. наше справочное руководство по интеграции стандартных учетных записей PayPal с беспроводным порталом UniFi.
Данный пример развертывания* демонстрирует, как интегрировать беспроводной портал UniFi с учетными записями Paypal Pro. При этом способе пользователи могут платить за доступ к беспроводному порталу, используя услуги PayPal. Пример, приведенный в данной статье, был разработан в Paypal Sandbox , тестовой среде, предоставляемой Paypal разработчикам. Она обеспечивает такой же UI / API - интерфейс, что и обычный web-сайт PayPal. Если Вы обнаружите различия, сообщите об этом в PayPal.
UniFi Integration with Paypal Pro
|
Интеграция UniFi с Paypal Pro
|
Switch
|
Коммутатор
|
UniFi controller
|
Контроллер UniFi
|
Paypal API
|
Программный интерфейс Paypal
|
Сервис PayPal Pro, интегрированный с порталом беспроводного доступа UniFi.
Шаги процедуры
Часть I. Подготовка учетной записи Paypal
- Перейдите на web-сайт Paypal Sandbox https://developer.paypal.com/.
- "Test Accounts" > "New test account" > "Preconfigured" (Тестовые учетные записи - Новая тестовая учетная запись - Предварительно сконфигурированная).
- "Account Type" > "Website Payments Pro" (Тип учетной записи > Website Payments Pro ).
- Подумайте, желаете ли Вы заменить автоматически созданный пароль ("Password").
- "Create Account" (Создать учетную запись).
- Теперь Вы можете посмотреть учетную запись, заданную на странице Test Accounts (Тестовые записи), выберите это и щелкните "Enter Sanbox Test Site" (Войти на сайт тестирования Sanbox ).
- Откроется новое окно, зарегистрируйтесь ("Login" ) с тем паролем, который Вы установили.
- Перейдите на вкладку "My Account" > "Profile" (Моя учетная запись - Профиль).
- В разделе "Account Information" (Информация об учетной записи) выберите "Request API credentials" (Запросить в API идентификационные данные).
- Выберите "Option 1 - Paypal API" > "Setting up API permissions and credentials" (Вариант 1 - Программный интерфейс Paypal - Настройка прав доступа и идентификационных данных программного интерфейса).
- Затем в разделе "Option 2 - Request API credentials to create your own API username and password." (Вариант 2 - запросить идентификационные данные программного интерфейса, чтобы создать для него Ваше собственное имя пользователя и пароль), выберите "View API Signatures".(Просмотр подписей API).
- Сделайте копию "API Username", "API Password" и "Signature" (Подпись), - это все, что Вам потребуется, чтобы войти в Paypal Pro.
Пример подписи PayPal API.
Часть II. Подготовка контроллера
- Создайте гостевую сеть WLAN (выберите опцию "Guest Policy" (Правила для гостей) на странице Wireless Configurations (Конфигурации беспроводной сети) этой WLAN).
- "Settings" > "Guest Control" (Настройки - Управление гостем).
- В панели "Guest Policies" (Правила для гостей) выберите "Enable Guest Portal" (Включить гостевой портал).
- "Authentication" > "Hotspot" (Аутентификация - Беспроводной доступ).
- Выберите опцию "Enable Portal Customization" (Включить настройку портала по специальным требованиям).
- В панели "Hotspot" (Беспроводной доступ) выберите опцию "Payment" (Платеж), затем выберите опцию "Enable payment-based authorization (PayPal Website Payment Pro required)" (Включить авторизацию на основе платежей (требуется сайт PayPal Website Payment Pro).
- В поля Paypal Username (Имя пользователя), Password (Пароль) и Signature (Подпись), скопируйте и вставьте те значения, которые Вы получили на web-сайте Paypal.
- Вследствие того, что для целей тестирования я использовал Paypal Sandbox, я выбрал опцию "Use PayPal Sandbox" (Использовать среду тестирования PayPal Sandbox). Для работы в контроллере и интеграции с Paypal, эту опцию выбирать не следует.
Часть III. Подготовка (тарифных) планов беспроводного доступа
- Данный пример иллюстрирует минимальные изменения, позволяющие задать Ваш (тарифный) план беспроводного доступа, в котором учтены Ваши специальные требования.
- В конфигурации UniFi по умолчанию доступны следующие планы (1) 8-часовой доступ за $5.99 (2) Доступ на один день за $8.99. Допустим Вы желаете внести следующие изменения в (1) 4-часовой доступ за $1.99 (2) 8-часовой доступ за $2.99 и (3) Доступ на один день за $5.99.
- У нас включена настройка портала, в соответствии с нашими специальными требованиями, настройки сохранены в каталоге [UniFi root directory]\data\portal . Здесь находится не менее 2 файлов, которые необходимо изменить, чтобы достичь этого: index.html и bundle\messages.properties.
- index.html имеет пользовательский интерфейс. Откройте его и отыщите секцию "Please select the package of your choice"(Пожалуйста, выберите пакет, который Вам нужен).
- В данной секции мы добавим другой план для 4-часового доступа и изменим другие планы в соответствии с требуемыми численными данными. Так как в пакете 1 используется 8-часовой план, в пакете 2 используется план доступа на один день, а в пакете 3 используется бесплатный доступ на ограниченный срок, мы будем использовать пакет 4 для плана 4-часового доступа.
<div class="options-box"> <pre><input type="radio" value="4" name="package" id="package-4" checked="checked" /><label for="package-4">4-Hour Pass - $1.99</label> <input type="radio" value="1" name="package" id="package-1" /><label for="package-1">8-Hour Pass - $2.99</label> <input type="radio" value="2" name="package" id="package-2" /><label for="package-2">Day Pass $5.99</label> </div>
- Содержимое пакета определяет файл bundle\messages.properties. Откройте его, в файле есть достаточно комментариев, объясняющих, как этот файл работает.
- Измените сумму оплаты для пакета 1 (8-часового) на $2.99 и пакета 2 (1-дневного) на $5.99.
- Добавьте новый пакет для 4-часового плана.
## package 4 package.4.amount=1.99 package.4.hours=4 package.4.name=Essential 4HR package.4.charged_as=Hotspot 4-Hour Wifi
- На этом вся настройка завершена.
Часть IV. Тестирование работы
- Вы можете протестировать, как все это работает, если создадите в Paypal Sandbox учетную запись другого покупателя.
- После привязки к гостевой WLAN, см. имеется ли контроллер, который переадресует Вас на страницу портала, настроенную в соответствии со специальными требованиями, на которой Вы можете оплатить план беспроводного доступа (используя учетную запись покупателя sandbox).
- Посмотрите, приняла ли Ваша учетная запись (бизнес-класса) платеж.
- Посмотрите, разрешает ли контроллер гостям доступ к этой учетной записи после оплаты.
- Убедитесь в том, что менеджер беспроводного доступа определил, что время, выделенное этому гостю, правильное.
Беспроводные клиенты, использующие учетные записи на базе PayPal (так они отображаются в окне менеджера беспроводного доступа UniFi).
Примечания
* - Мы НЕ будем поддерживать сценарии для этого примера. Пример не должен использоваться в сети предприятия (для производства продукции). Предполагается, что читатель статьи знаком с языками HTML/PHP и услугами Paypal. Это только ПРИМЕР, не пытайтесь просто применить его, сначала подумайте над тем, как изменить каждую его строку в соответствии с Вашими бизнес-условиями.
- UniFi - часто задаваемые вопросы (FAQ)
- Файл README.txt в каталоге [UniFi root]\data\portal\.
- Файл readme.txt в zip-архиве проекта портала.
- Руководство пользователя Paypal Sandbox
- Руководство по мгновенному уведомлению о платежах Paypal
Для работы гостевого портала требуется работающий контроллер, безотносительно к тому, на какой системе работает портал - на той же, что и контроллер или на внешнем сайте.