Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
d716dfc
locally working
rahulpscraftech360 Aug 11, 2025
2171de3
Remove node_modules from git tracking
rahulpscraftech360 Aug 11, 2025
64d13ae
whipser and groq added from mainserver as asr
rahulpscraftech360 Aug 11, 2025
a105b74
threshold (default 0.5) → above this is definitely speech.
rahulpscraftech360 Aug 11, 2025
e3ef80c
Translated New
abrahamcft360 Aug 12, 2025
d3000aa
updated code from mainserver
rahulpscraftech360 Aug 12, 2025
3315b7d
fixed udp
rahulpscraftech360 Aug 12, 2025
272937d
jhfb
yamunarathod Aug 12, 2025
e928f74
completely working
yamunarathod Aug 12, 2025
70b3976
Merge pull request #2 from Craftech360-projects/translated-new
rahulpscraftech360 Aug 13, 2025
5db5e26
ten VAD added
rahulpscraftech360 Aug 13, 2025
6b197ed
updated tenvad
rahulpscraftech360 Aug 13, 2025
6ae434a
song chagne
rahulpscraftech360 Aug 13, 2025
041e2aa
prompt amanger
rahulpscraftech360 Aug 13, 2025
056f99d
chinese changed to english
rahulpscraftech360 Aug 13, 2025
9972489
song chnged
rahulpscraftech360 Aug 13, 2025
708c968
updated documentation for promp
rahulpscraftech360 Aug 13, 2025
7f12e55
updated lunar calender calll log to englis
rahulpscraftech360 Aug 13, 2025
8858ff4
updated mcp-endpoint-integration documentation
rahulpscraftech360 Aug 13, 2025
6b1d5d5
Merge branch 'stable2' into TENvad
rahulpscraftech360 Aug 13, 2025
f71c3bf
Merge pull request #3 from Craftech360-projects/TENvad
rahulpscraftech360 Aug 13, 2025
2a2b122
tranlated to english server and mqtt folders
Karthikeyareddy183 Aug 13, 2025
a68b8ff
Merge pull request #4 from Craftech360-projects/translated-to-english
rahulpscraftech360 Aug 14, 2025
04594a7
Merge branch 'stable2' into railwaysql
rahulpscraftech360 Aug 14, 2025
066057d
Merge pull request #5 from Craftech360-projects/railwaysql
rahulpscraftech360 Aug 14, 2025
65be4a1
silicon flow is added
rahulpscraftech360 Aug 14, 2025
46814df
siliocn flow with fallback elevenlab
rahulpscraftech360 Aug 14, 2025
d0125bb
all-functions-converted-to-indian-calender-weather-location-date-time…
Karthikeyareddy183 Aug 14, 2025
372ddc2
Merge pull request #6 from Craftech360-projects/working-on-location
smpattar1 Aug 14, 2025
d4f5553
Merge branch 'stable2' into siliconflow
rahulpscraftech360 Aug 14, 2025
4d14977
Merge pull request #7 from Craftech360-projects/siliconflow
rahulpscraftech360 Aug 14, 2025
3b52a72
intent fix, news fix
rahulpscraftech360 Aug 15, 2025
eb5b2e4
fixed git iginore
rahulpscraftech360 Aug 16, 2025
547efab
Increased Minimum Audio Chunks, and No more missing the beginning of…
rahulpscraftech360 Aug 16, 2025
55c89b5
vad updated, tenvad linux setup code updated
rahulpscraftech360 Aug 16, 2025
79474fb
Merge pull request #8 from Craftech360-projects/sherpa_asr_multiple_m…
rahulpscraftech360 Aug 16, 2025
0fe4c2d
fixed sending noice
rahulpscraftech360 Aug 18, 2025
3371c45
fix: Improve ASR accuracy and eliminate phantom transcripts
rahulpscraftech360 Aug 18, 2025
1d0aaa5
fixed tenvad
rahulpscraftech360 Aug 18, 2025
74d27bc
working tenvad
rahulpscraftech360 Aug 18, 2025
46d8834
added filter for asr
rahulpscraftech360 Aug 18, 2025
2b3ef1d
added new silerio vad logic with speech confidence
rahulpscraftech360 Aug 19, 2025
080957b
clean test files
rahulpscraftech360 Aug 19, 2025
84d9200
clean test files
rahulpscraftech360 Aug 19, 2025
89171d4
deepgram ASR added
rahulpscraftech360 Aug 19, 2025
95e3c70
reduced logs count to minimal
rahulpscraftech360 Aug 21, 2025
e381cf3
updated audio listening when streaming the audio to client
rahulpscraftech360 Aug 21, 2025
74e8fb0
working local
rahulpscraftech360 Aug 21, 2025
eb4b6bf
server connecting with db properly
rahulpscraftech360 Aug 21, 2025
c5aff88
changed provider pare , add model and dialogue box to englih
rahulpscraftech360 Aug 21, 2025
97ec0a8
changed provider pare , add model and dialogue box to englih
rahulpscraftech360 Aug 21, 2025
903f8aa
workign on claude
rahulpscraftech360 Aug 22, 2025
25b2426
fixed agent template
rahulpscraftech360 Aug 22, 2025
e670465
tables are translated
rahulpscraftech360 Aug 22, 2025
fb5e9fe
started on frmware and ota
rahulpscraftech360 Aug 23, 2025
8ff30a0
device activation working
rahulpscraftech360 Aug 23, 2025
4cfe44b
added connected device section
rahulpscraftech360 Aug 23, 2025
cf4531f
manager-mobile running
abrahamcft360 Aug 23, 2025
5a7e63e
Merge remote-tracking branch 'origin/dashboard2' into dashboard2
abrahamcft360 Aug 23, 2025
8b44a9a
wake words aupdated
rahulpscraftech360 Aug 23, 2025
cde3348
updated database chinese
rahulpscraftech360 Aug 23, 2025
06a9378
Completed AI Agent Creation in Flutter APP
abrahamcft360 Aug 23, 2025
abb7a43
mem0 working
rahulpscraftech360 Aug 25, 2025
2b956a9
working
rahulpscraftech360 Aug 25, 2025
7ccdbe3
\
rahulpscraftech360 Aug 26, 2025
24d1688
mamnger api updatef=d for mqtt agteway
rahulpscraftech360 Aug 26, 2025
7640f98
go to mqtt old
rahulpscraftech360 Aug 26, 2025
bb279a7
fixed mqtt
rahulpscraftech360 Aug 26, 2025
8bcd7c8
Toy bounded from flutter app to agent but not fetched in app
abrahamcft360 Aug 27, 2025
7db87ef
Toy binding and unbinding is working fine
abrahamcft360 Aug 27, 2025
1a6b7e7
aws transcribe fiels added
rahulpscraftech360 Aug 29, 2025
fa3de0e
updated packages list
rahulpscraftech360 Aug 29, 2025
148ff48
updated ota to /toy
rahulpscraftech360 Aug 29, 2025
ddad795
updated urls and txt files
rahulpscraftech360 Aug 29, 2025
61546be
debug addded for timer
rahulpscraftech360 Aug 29, 2025
859a202
added story
rahulpscraftech360 Aug 29, 2025
d091cab
Need to fetch songs and stories in app
abrahamcft360 Aug 29, 2025
624b202
Merge branch 'Production1' into flutter-con
rahulpscraftech360 Aug 29, 2025
22ba4b4
Merge pull request #11 from Craftech360-projects/flutter-con
rahulpscraftech360 Aug 29, 2025
8f303e5
'working with mobile"
rahulpscraftech360 Aug 29, 2025
9d352e4
fixed CDN and VAD Timeout
Aug 30, 2025
0efa4c8
added folders of metadata
Aug 30, 2025
00d91a1
fixed timer
rahulpscraftech360 Aug 30, 2025
1bbc044
10 sec timer removed
rahulpscraftech360 Aug 30, 2025
043e05e
fix/float error
rahulpscraftech360 Aug 30, 2025
c1cf912
updated story plugin add to default template
rahulpscraftech360 Aug 30, 2025
d1e312c
added gemini and openai tts to dashboard
Sep 3, 2025
cc2fe5a
fixed sloka and bhagavad git
rahulpscraftech360 Sep 4, 2025
3daa4e4
Add Bhagavad Gita and Slokas music metadata
Sep 4, 2025
0cb3cf0
Merge branch 'dev' of https://github.com/Craftech360-projects/xiaozhi…
Sep 4, 2025
d7fcbdf
fixed agent creation failde due to duplicate plugin
rahulpscraftech360 Sep 4, 2025
0d7ee98
translated to english
Sep 4, 2025
e1e9091
fixed timezone bug and openai expectation
Sep 5, 2025
0e791e9
fixed memoAI bug
Sep 5, 2025
43f111a
Fix duplicate key error in agent plugin mapping creation
rahulpscraftech360 Sep 6, 2025
fc526d1
fix for the duplicate key error. The changes prevent duplicate plugin…
rahulpscraftech360 Sep 6, 2025
54f65d8
Semantic search implemented
Sep 8, 2025
4683c9a
Semantic search implemented (#12)
Karthikeyareddy183 Sep 8, 2025
bd82db0
Merge branch 'Production1' into dev
rahulpscraftech360 Sep 9, 2025
d22297e
added dev and prod DB in env file
rahulpscraftech360 Sep 9, 2025
9f88df4
Save changes to play_music.py before pulling
rahulpscraftech360 Sep 9, 2025
4856ed5
Merge branch 'dev' of github.com:Craftech360-projects/xiaozhi-esp32-s…
rahulpscraftech360 Sep 9, 2025
760d2b5
fixed mapping pluign isse
rahulpscraftech360 Sep 9, 2025
e5fc868
pushed semantic search to prod
rahulpscraftech360 Sep 9, 2025
1c1812f
User agents are displaying in admin panel
choudharikiranv15 Sep 11, 2025
255a403
vad is not sending audio
Sep 12, 2025
6f69219
timezone is changed of chathistory in dashboard
Sep 12, 2025
6e45303
configred local db abd reddis for manger api
rahulpscraftech360 Sep 12, 2025
f7a632d
Fix VAD audio processing - ensure speech confidence detection works p…
rahulpscraftech360 Sep 12, 2025
be60384
celanup
rahulpscraftech360 Sep 13, 2025
1408873
Merge pull request #14 from Craftech360-projects/admin_panel_agents
rahulpscraftech360 Sep 13, 2025
adbd8d4
Merge branch 'dev' into timezone_in_chathistory
rahulpscraftech360 Sep 13, 2025
1f7c640
Merge pull request #15 from Craftech360-projects/timezone_in_chathistory
rahulpscraftech360 Sep 13, 2025
645d13c
Merge branch 'dev' into vadfix3
rahulpscraftech360 Sep 13, 2025
6982696
Merge pull request #16 from Craftech360-projects/vadfix3
rahulpscraftech360 Sep 13, 2025
9d44cf0
fixed dashboard
rahulpscraftech360 Sep 13, 2025
eb4a5cf
updated user management table name
rahulpscraftech360 Sep 13, 2025
b0f8f73
updated gitignore
rahulpscraftech360 Sep 13, 2025
bbe6730
working agents fetching
rahulpscraftech360 Sep 13, 2025
8db186d
fixed dashboard issue,fetehced agent names of users
rahulpscraftech360 Sep 13, 2025
12e785f
Livekit Integration
Abilashs003 Sep 15, 2025
b105230
feat: Add LiveKit server integration with sanitized configuration
rahulpscraftech360 Sep 16, 2025
1981087
Merge branch 'dev' into livekit-structured
rahulpscraftech360 Sep 16, 2025
6b14b45
Merge pull request #17 from Craftech360-projects/livekit-structured
rahulpscraftech360 Sep 16, 2025
94958ee
metadata fixed indexing
Sep 16, 2025
03c86eb
feat: Add LiveKit agent configuration with API placeholders
rahulpscraftech360 Sep 20, 2025
6c43ff8
feat: Add LiveKit-specific model configurations for manager-api
rahulpscraftech360 Sep 20, 2025
3b32f6b
chore: Add livekit-qdrant-RAG-agent to .gitignore
rahulpscraftech360 Sep 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
24 changes: 20 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,12 @@ dmypy.json
.pyre/

# music directory
music/
# music/

node_modules

main/mqtt-gateway/node_modules
main/xiaozhi-server/venv

# pytype static type analyzer
.pytype/
Expand All @@ -153,9 +158,13 @@ main/manager-web/node_modules
.private_config.yaml
.env.development

# model files
main/xiaozhi-server/models/SenseVoiceSmall/model.pt
main/xiaozhi-server/models/sherpa-onnx*
# model files - exclude entire models directory since they auto-download
main/xiaozhi-server/models/
models/sherpa-onnx-zipformer-gigaspeech-2023-12-12/

# Exception for ten-vad-onnx - include this model with its libraries
!main/xiaozhi-server/models/ten-vad-onnx/
!main/xiaozhi-server/models/ten-vad-onnx/**
/main/xiaozhi-server/audio_ref/
/audio_ref/
/asr-models/iic/SenseVoiceSmall/
Expand All @@ -174,3 +183,10 @@ main/xiaozhi-server/mysql
uploadfile
*.json
.vscode

# Spring Boot configuration files (contain sensitive data)
main/manager-api/src/main/resources/application.yml
main/manager-api/src/main/resources/application-dev.yml

# LiveKit Qdrant RAG Agent
main/livekit-qdrant-RAG-agent/
221 changes: 221 additions & 0 deletions MANAGER_API_DOCUMENTATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,221 @@
# Manager API Documentation Guide

## Swagger/OpenAPI Documentation

The Manager API includes built-in Swagger/OpenAPI documentation using SpringDoc OpenAPI v2.8.8.

### Accessing Swagger UI

Once the Manager API is running, you can access the interactive API documentation at:

```
http://localhost:8080/swagger-ui/index.html
```

Replace `localhost:8080` with your actual server address and port.

### API Groups

The API is organized into the following groups:

1. **Device APIs** (`/device/**`)
- Device registration
- Device management
- Device binding/unbinding
- Device status reporting

2. **Agent APIs** (`/agent/**`)
- Agent management
- Agent configuration
- Agent templates
- Chat history
- Memory management
- Voice print management
- MCP access points

3. **Model APIs** (`/models/**`)
- Model configuration
- Model providers
- Voice models
- LLM models
- TTS/ASR/VAD models

4. **OTA APIs** (`/ota/**`)
- Over-the-air updates
- Firmware management
- Update status

5. **Timbre APIs** (`/ttsVoice/**`)
- TTS voice management
- Voice configuration

6. **Admin APIs** (`/admin/**`)
- User management
- System administration
- Server management

7. **User APIs** (`/user/**`)
- User authentication
- User profile
- Password management

8. **Config APIs** (`/config/**`)
- System configuration
- Agent model configuration

### OpenAPI JSON Specification

You can access the raw OpenAPI specification at:

```
http://localhost:8080/v3/api-docs
```

For specific API groups:
```
http://localhost:8080/v3/api-docs/device
http://localhost:8080/v3/api-docs/agent
http://localhost:8080/v3/api-docs/models
http://localhost:8080/v3/api-docs/ota
http://localhost:8080/v3/api-docs/timbre
http://localhost:8080/v3/api-docs/admin
http://localhost:8080/v3/api-docs/user
http://localhost:8080/v3/api-docs/config
```

## Key API Endpoints

### Authentication
- `POST /login` - User login
- `POST /logout` - User logout
- `POST /user/register` - User registration

### Agent Management
- `GET /agent/list` - Get user's agents
- `GET /agent/{id}` - Get agent details
- `POST /agent` - Create new agent
- `PUT /agent/{id}` - Update agent
- `DELETE /agent/{id}` - Delete agent
- `PUT /agent/saveMemory/{macAddress}` - Update agent memory

### Device Management
- `POST /device/register` - Register device
- `POST /device/bind` - Bind device to user
- `POST /device/unbind` - Unbind device
- `GET /device/list` - Get user's devices
- `POST /device/report` - Device status report

### Model Configuration
- `GET /models/provider` - Get model providers
- `POST /models/provider` - Add model provider
- `PUT /models/provider/{id}` - Update model provider
- `DELETE /models/provider/{id}` - Delete model provider
- `GET /models/config` - Get model configurations
- `GET /models/voice/{modelId}` - Get voice options for TTS model

### Configuration
- `GET /config/agentModels` - Get agent model configuration
- `POST /config/agentModels` - Update agent model configuration

## API Authentication

Most API endpoints require authentication. The API uses Shiro for security:

1. **Login** to get a session token:
```bash
POST /login
Content-Type: application/json

{
"username": "your-username",
"password": "your-password"
}
```

2. **Use the token** in subsequent requests (stored in cookies/session)

3. **Permissions** are role-based:
- `sys:role:normal` - Normal user permissions
- `sys:role:superAdmin` - Administrator permissions

## Example API Calls

### Create Memory Provider
```bash
POST /models/provider
Content-Type: application/json

{
"modelType": "Memory",
"providerCode": "mem0ai",
"name": "Mem0 Memory Provider",
"fields": [
{
"key": "api_key",
"label": "API Key",
"type": "password",
"value": "your-mem0-api-key"
}
],
"sort": 1
}
```

### Update Agent Memory
```bash
PUT /agent/saveMemory/{macAddress}
Content-Type: application/json

{
"summaryMemory": "Memory configuration instructions"
}
```

### Get Agent Configuration
```bash
GET /agent/{agentId}
```

## Data Models

The API uses DTOs (Data Transfer Objects) for request/response:

- **AgentDTO** - Agent information
- **AgentMemoryDTO** - Agent memory update
- **DeviceDTO** - Device information
- **ModelConfigDTO** - Model configuration
- **ModelProviderDTO** - Model provider configuration

All DTOs include Swagger annotations for documentation.

## Error Handling

The API returns standardized error responses:

```json
{
"code": 0, // 0 for success, non-zero for errors
"msg": "Success or error message",
"data": {} // Response data
}
```

Common error codes:
- `401` - Unauthorized
- `403` - Forbidden
- `404` - Not found
- `500` - Internal server error

## Development Tips

1. **Use Swagger UI** for testing APIs directly in the browser
2. **Check annotations** in controller classes for detailed API documentation
3. **Review DTOs** for request/response structures
4. **Monitor logs** for debugging API issues

## Additional Resources

- Controller classes in: `src/main/java/xiaozhi/modules/*/controller/`
- DTO classes in: `src/main/java/xiaozhi/modules/*/dto/`
- Entity classes in: `src/main/java/xiaozhi/modules/*/entity/`
- Service implementations in: `src/main/java/xiaozhi/modules/*/service/`
Loading