Быстрый старт
1. Получите API-ключ
Получите JWT-токен в личном кабинете. Ключ передаётся в заголовке:
http
Authorization: Bearer ВАШ_JWTПодробнее: Аутентификация.
2. Установите пакет
bash
npm install optimatica-metersbash
npm install optimatica-meters-vue optimatica-metersbash
npm install optimatica-meters-react optimatica-metersbash
npm install optimatica-meters-react-native optimatica-meters react-native-image-picker3. Настройте клиент
ts
import { configureZhkhSdk } from 'optimatica-meters'
configureZhkhSdk({
apiKey: 'eyJhbGci...', // JWT; опционально — можно передать в каждый вызов
})Эндпоинт API зашит в SDK на этапе сборки. По умолчанию используется production, переопределяется переменной окружения OPTIMATICA_API_URL при сборке пакета.
4. Отправьте фото
TypeScript (программно)
ts
import { analyzeMeterPhoto } from 'optimatica-meters'
const result = await analyzeMeterPhoto(file, {
apiKey: 'eyJhbGci...',
})
if (result.success) {
console.log(result.meter.type)
console.log(result.meter.serialNumber)
console.log(result.meter.currentReading)
} else {
console.error(result.error)
}Vue
vue
<script setup lang="ts">
import { MeterPhotoAnalyzer } from 'optimatica-meters-vue'
import 'optimatica-meters-vue/style.css'
</script>
<template>
<MeterPhotoAnalyzer api-key="eyJhbGci..." />
</template>React
tsx
import { MeterPhotoAnalyzer } from 'optimatica-meters-react'
import 'optimatica-meters-react/style.css'
export function App() {
return <MeterPhotoAnalyzer apiKey="eyJhbGci..." />
}React Native
tsx
import { MeterPhotoAnalyzer } from 'optimatica-meters-react-native'
export function Screen() {
return (
<MeterPhotoAnalyzer
apiKey="eyJhbGci..."
onSuccess={(r) => console.log(r.meter)}
/>
)
}5. Обработайте ответ
Успешный ответ:
json
{
"success": true,
"meter": {
"type": "water_cold",
"serialNumber": "12345678",
"currentReading": 123.456,
"tariffCount": null,
"waterTypeUnknown": false
}
}Если счётчик не распознан — success: false и поле error. См. API reference.