160 lines
5.7 KiB
Markdown
160 lines
5.7 KiB
Markdown
# 🔧 Интеграция с LNbits - Руководство по тестированию
|
||
|
||
## 📋 Обзор
|
||
|
||
Интеграция с [LNbits](https://demo.lnbits.com) позволяет создавать Lightning Network инвойсы и верифицировать платежи в реальном времени.
|
||
|
||
## 🚀 Быстрый старт
|
||
|
||
### 1. Запуск тестов
|
||
```bash
|
||
# Откройте в браузере
|
||
test-lnbits-integration.html
|
||
```
|
||
|
||
### 2. Автоматическое тестирование
|
||
Нажмите кнопку **"🚀 Запустить все тесты"** для полной проверки интеграции.
|
||
|
||
## 🧪 Доступные тесты
|
||
|
||
### ✅ 1. Проверка API
|
||
- Тестирует доступность LNbits API
|
||
- Проверяет статус сервера
|
||
- Валидирует API ключ
|
||
|
||
### ✅ 2. Создание инвойса
|
||
- Создает Lightning инвойс на 500 sats
|
||
- Проверяет корректность ответа
|
||
- Валидирует структуру данных
|
||
|
||
### ✅ 3. Проверка статуса
|
||
- Проверяет статус созданного инвойса
|
||
- Отображает детали платежа
|
||
- Показывает время создания
|
||
|
||
### ✅ 4. Верификация платежа
|
||
- Тестирует криптографические функции
|
||
- Проверяет SHA-256 хеширование
|
||
- Валидирует preimage/hash пары
|
||
|
||
### ✅ 5. Тест реального платежа
|
||
- Проверяет готовность к реальным платежам
|
||
- Показывает инструкции по оплате
|
||
- Демонстрирует полный цикл
|
||
|
||
## 💡 Как протестировать реальный платеж
|
||
|
||
### Шаг 1: Создайте инвойс
|
||
1. Нажмите **"2. Создание инвойса"**
|
||
2. Скопируйте Payment Request из логов
|
||
3. Или отсканируйте QR код (если доступен)
|
||
|
||
### Шаг 2: Оплатите инвойс
|
||
Используйте любой Lightning кошелек:
|
||
- **Alby** (браузерное расширение)
|
||
- **Zeus** (мобильный кошелек)
|
||
- **Phoenix** (мобильный кошелек)
|
||
- **Wallet of Satoshi** (мобильный кошелек)
|
||
|
||
### Шаг 3: Проверьте статус
|
||
1. Нажмите **"3. Проверка статуса"**
|
||
2. Убедитесь, что `paid: true`
|
||
3. Скопируйте preimage из кошелька
|
||
|
||
### Шаг 4: Верифицируйте платеж
|
||
1. Нажмите **"5. Тест реального платежа"**
|
||
2. Введите preimage в поле
|
||
3. Проверьте результат верификации
|
||
|
||
## 🔧 Конфигурация
|
||
|
||
### API настройки
|
||
```javascript
|
||
{
|
||
apiUrl: 'https://demo.lnbits.com',
|
||
apiKey: '623515641d2e4ebcb1d5992d6d78419c',
|
||
walletId: 'bcd00f561c7b46b4a7b118f069e68997',
|
||
isDemo: true,
|
||
demoTimeout: 30000
|
||
}
|
||
```
|
||
|
||
### Типы сессий
|
||
```javascript
|
||
{
|
||
free: { sats: 0, hours: 1/60, usd: 0.00 },
|
||
basic: { sats: 500, hours: 1, usd: 0.20 },
|
||
premium: { sats: 1000, hours: 4, usd: 0.40 },
|
||
extended: { sats: 2000, hours: 24, usd: 0.80 }
|
||
}
|
||
```
|
||
|
||
## 📊 Ожидаемые результаты
|
||
|
||
### Успешный тест
|
||
```
|
||
✅ API доступен
|
||
✅ Инвойс создан успешно
|
||
✅ Статус получен
|
||
✅ Криптографическая верификация работает
|
||
✅ Платеж готов к тестированию
|
||
```
|
||
|
||
### Возможные ошибки
|
||
- **API недоступен**: Проверьте интернет соединение
|
||
- **Ошибка создания инвойса**: Проверьте API ключ
|
||
- **Ошибка верификации**: Проверьте preimage формат
|
||
|
||
## 🔍 Отладка
|
||
|
||
### Логи в консоли
|
||
Откройте Developer Tools (F12) для детальных логов:
|
||
```javascript
|
||
console.log('🔍 Тестирование доступности API...');
|
||
console.log('✅ API доступен');
|
||
console.log('📊 Статус:', data);
|
||
```
|
||
|
||
### Проверка сети
|
||
В Network tab проверьте:
|
||
- Статус HTTP запросов
|
||
- Заголовки авторизации
|
||
- Тело ответов
|
||
|
||
## 🚨 Известные проблемы
|
||
|
||
### 1. CORS ошибки
|
||
**Проблема**: Браузер блокирует запросы к LNbits
|
||
**Решение**: Используйте локальный сервер или прокси
|
||
|
||
### 2. API лимиты
|
||
**Проблема**: Слишком много запросов
|
||
**Решение**: Добавьте задержки между тестами
|
||
|
||
### 3. Неверный preimage
|
||
**Проблема**: Ошибка верификации
|
||
**Решение**: Убедитесь, что preimage 64 символа hex
|
||
|
||
## 📞 Поддержка
|
||
|
||
### Полезные ссылки
|
||
- [LNbits Documentation](https://docs.lnbits.com/)
|
||
- [Lightning Network](https://lightning.network/)
|
||
- [BOLT11 Specification](https://github.com/lightning/bolts/blob/master/11-payment-encoding.md)
|
||
|
||
### Контакты
|
||
- **GitHub**: [LockBit.chat](https://github.com/lockbitchat/lockbit-chat)
|
||
- **Документация**: [README.md](../README.md)
|
||
|
||
## 🎯 Следующие шаги
|
||
|
||
1. **Протестируйте все функции**
|
||
2. **Настройте продакшн API ключи**
|
||
3. **Интегрируйте в основное приложение**
|
||
4. **Добавьте мониторинг платежей**
|
||
5. **Настройте уведомления**
|
||
|
||
---
|
||
|
||
**🎉 Интеграция готова к использованию!**
|