#define TAG "session_request" #include "lisa_log.h" #include "lisa_semaphore.h" #include "lisa_thread.h" #include "lsc.h" #include "lsc_session_request.h" #include "lsc_errno.h" #include "lisa_mem.h" #include #define PRODUCT_ID_STRING "ce1dda98-f2b8-46f9-a7b9-8aee214a459b" #define SECRET_ID_STRING "c684eb9e-ff8f-4264-ad03-0369b38ab793" #ifndef DEVICE_ID_STRING #error "Please define DEVICE_ID_STRING first" #endif char request_url[256]; lisa_semaphore_t *sem_connected; static void lsc_event_cb(lsc_event_e evt, void *data, uint32_t size, void *usr) { switch (evt) { case LSC_CONNECTED: lisa_semaphore_give(sem_connected); break; default: break; } } __attribute__((weak)) int net_down(void) { return 0; } __attribute__((weak)) int net_up(void) { return 0; } __attribute__((weak)) int net_init(void) { return 0; } int main(void) { net_init(); net_up(); int ret; sem_connected = lisa_semaphore_create(1); lsc_config_t cfg = { .device_id = DEVICE_ID_STRING, .product_id = PRODUCT_ID_STRING, .secret_id = SECRET_ID_STRING, }; ret = lsc_init(&cfg); if (ret) { LISA_NLOGW("lsc_init faild"); return 0; } ret = lsc_add_callback(LSC_CONNECTED | LSC_DISCONNECTED | LSC_CLOUD_AUTH_FAILD | LSC_GOT_TOKEN, lsc_event_cb, NULL); if (ret) { LISA_NLOGW("lsc_add_callback faild"); return 0; } ret = lsc_connect(); ret |= lisa_semaphore_take(sem_connected, 1000); if (ret) { LISA_NLOGW("lsc_connect faild"); return 0; } ret = session_request_init(); if (ret) { LISA_NLOGW("session_request_init faild"); return 0; } char text[] = "深圳天气"; memset((void *)request_url, 0, sizeof(request_url)); ret = session_request_xtts(text, request_url, 30000); if (ret) { LISA_NLOGW("session_request_xtts faild"); return 0; } LISA_NLOGI("get url:%s", request_url); return 0; }