mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-02-18 10:53:17 +00:00
Added new calls
This commit is contained in:
parent
e66033c1c6
commit
7e6b6d5463
@ -20,10 +20,24 @@ class Development final : public Service {
|
||||
kernel::SystemEventSubscription networkDisconnectEventSubscription = 0;
|
||||
std::string deviceResponse;
|
||||
|
||||
httpd_uri_t getDeviceEndpoint = {
|
||||
.uri = "/device",
|
||||
httpd_uri_t handleGetInfoEndpoint = {
|
||||
.uri = "/info",
|
||||
.method = HTTP_GET,
|
||||
.handler = getDevice,
|
||||
.handler = handleGetInfo,
|
||||
.user_ctx = this
|
||||
};
|
||||
|
||||
httpd_uri_t appRunEndpoint = {
|
||||
.uri = "/app/run",
|
||||
.method = HTTP_POST,
|
||||
.handler = handleAppRun,
|
||||
.user_ctx = this
|
||||
};
|
||||
|
||||
httpd_uri_t appInstallEndpoint = {
|
||||
.uri = "/app/install",
|
||||
.method = HTTP_POST,
|
||||
.handler = handleAppInstall,
|
||||
.user_ctx = this
|
||||
};
|
||||
|
||||
@ -33,7 +47,9 @@ class Development final : public Service {
|
||||
void startServer();
|
||||
void stopServer();
|
||||
|
||||
static esp_err_t getDevice(httpd_req_t* request);
|
||||
static esp_err_t handleGetInfo(httpd_req_t* request);
|
||||
static esp_err_t handleAppRun(httpd_req_t* request);
|
||||
static esp_err_t handleAppInstall(httpd_req_t* request);
|
||||
|
||||
public:
|
||||
|
||||
|
||||
@ -16,7 +16,6 @@ extern const ServiceManifest manifest;
|
||||
|
||||
constexpr const char* TAG = "DevService";
|
||||
|
||||
|
||||
static char* rest_read_buffer(httpd_req_t* request) {
|
||||
static char buffer[1024];
|
||||
int contentLength = request->content_len;
|
||||
@ -84,8 +83,6 @@ bool Development::isEnabled() const {
|
||||
|
||||
// region Enable/disable
|
||||
|
||||
// region Handlers
|
||||
|
||||
void Development::startServer() {
|
||||
auto lock = mutex.asScopedLock();
|
||||
lock.lock();
|
||||
@ -99,7 +96,9 @@ void Development::startServer() {
|
||||
|
||||
std::stringstream stream;
|
||||
stream << "{";
|
||||
stream << "\"cpuFamily\" : \"" << CONFIG_IDF_TARGET << "\"";
|
||||
stream << "\"cpuFamily\":\"" << CONFIG_IDF_TARGET << "\", ";
|
||||
stream << "\"osVersion\":\"" << TT_VERSION << "\", ";
|
||||
stream << "\"protocolVersion\":\"1.0.0\"";
|
||||
stream << "}";
|
||||
deviceResponse = stream.str();
|
||||
|
||||
@ -109,7 +108,9 @@ void Development::startServer() {
|
||||
config.uri_match_fn = httpd_uri_match_wildcard;
|
||||
|
||||
if (httpd_start(&server, &config) == ESP_OK) {
|
||||
httpd_register_uri_handler(server, &getDeviceEndpoint);
|
||||
httpd_register_uri_handler(server, &handleGetInfoEndpoint);
|
||||
httpd_register_uri_handler(server, &appRunEndpoint);
|
||||
httpd_register_uri_handler(server, &appInstallEndpoint);
|
||||
TT_LOG_I(TAG, "Started on port %d", config.server_port);
|
||||
} else {
|
||||
TT_LOG_E(TAG, "Failed to start");
|
||||
@ -156,11 +157,9 @@ void Development::onNetworkDisconnected() {
|
||||
});
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
// region endpoints
|
||||
|
||||
esp_err_t Development::getDevice(httpd_req_t* request) {
|
||||
esp_err_t Development::handleGetInfo(httpd_req_t* request) {
|
||||
if (httpd_resp_set_type(request, "application/json") != ESP_OK) {
|
||||
TT_LOG_W(TAG, "Failed to send header");
|
||||
return ESP_FAIL;
|
||||
@ -173,10 +172,24 @@ esp_err_t Development::getDevice(httpd_req_t* request) {
|
||||
return ESP_FAIL;
|
||||
}
|
||||
|
||||
TT_LOG_I(TAG, "[200] /device from");
|
||||
TT_LOG_I(TAG, "[200] /device");
|
||||
return ESP_OK;
|
||||
}
|
||||
|
||||
esp_err_t Development::handleAppRun(httpd_req_t* request) {
|
||||
httpd_resp_send(request, nullptr, 0);
|
||||
TT_LOG_I(TAG, "[200] /app/run");
|
||||
return ESP_OK;
|
||||
}
|
||||
|
||||
esp_err_t Development::handleAppInstall(httpd_req_t* request) {
|
||||
httpd_resp_send(request, nullptr, 0);
|
||||
TT_LOG_I(TAG, "[200] /app/install");
|
||||
return ESP_OK;
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
std::shared_ptr<Development> findService() {
|
||||
return std::static_pointer_cast<Development>(
|
||||
findServiceById(manifest.id)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user