esphome/components/esp32_presense/esp32_presense.h

38 lines
1.3 KiB
C
Raw Normal View History

2023-12-07 23:51:43 +03:00
#pragma once
#include "esphome/core/component.h"
#include "esphome/components/mqtt/custom_mqtt_device.h"
#include "BleFingerprintCollection.h"
// #include "esphome/components/nimble_distance_custom/nimble_distance_custom.h"
namespace esphome
{
2023-12-10 09:08:23 +03:00
namespace esp32_presense
2023-12-07 23:51:43 +03:00
{
2023-12-10 11:49:23 +03:00
class ESP32Presense :
public Component,
2023-12-07 23:51:43 +03:00
public mqtt::CustomMQTTDevice
// public nimble_distance_custom::NimbleDistanceCustomComponent
{
protected:
std::string room_;
BleFingerprint *ble_fingerprint = NULL;
bool sendTelemetry(
unsigned int totalSeen,
unsigned int totalFpSeen,
unsigned int totalFpQueried,
unsigned int totalFpReported,
unsigned int count
);
public:
2023-12-10 11:49:23 +03:00
void setup() override;
void loop() override;
2023-12-07 23:51:43 +03:00
void reportLoop();
// void on_result(nimble_distance_custom::NimbleDistanceCustomResult&) override;
void set_room(std::string room) { room_ = room; }
//void set_base_topic(std::string base_topic) { base_topic_ = base_topic; }
};
} // namespace esp32_nimble_tracker
} // namespace esphome