@eveai/eve-sdk-for-node 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md.bak +510 -0
- package/README.md.orig +510 -0
- package/dist/client.js +1 -1
- package/dist/client.js.map +1 -1
- package/dist/client.mjs +1 -1
- package/dist/client.mjs.map +1 -1
- package/dist/index.d.mts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -0
- package/dist/index.mjs.map +1 -1
- package/dist/services/eveai-chat.d.mts +118 -0
- package/dist/services/eveai-chat.d.ts +118 -0
- package/dist/services/eveai-chat.js +115 -0
- package/dist/services/eveai-chat.js.map +1 -0
- package/dist/services/eveai-chat.mjs +114 -0
- package/dist/services/eveai-chat.mjs.map +1 -0
- package/dist/services/eveai-payment.d.mts +145 -0
- package/dist/services/eveai-payment.d.ts +145 -0
- package/dist/services/eveai-payment.js +132 -0
- package/dist/services/eveai-payment.js.map +1 -0
- package/dist/services/eveai-payment.mjs +131 -0
- package/dist/services/eveai-payment.mjs.map +1 -0
- package/dist/services/eveai-provider-discovery.d.mts +126 -0
- package/dist/services/eveai-provider-discovery.d.ts +126 -0
- package/dist/services/eveai-provider-discovery.js +96 -0
- package/dist/services/eveai-provider-discovery.js.map +1 -0
- package/dist/services/eveai-provider-discovery.mjs +95 -0
- package/dist/services/eveai-provider-discovery.mjs.map +1 -0
- package/dist/services/eveai-task.d.mts +137 -0
- package/dist/services/eveai-task.d.ts +137 -0
- package/dist/services/eveai-task.js +143 -0
- package/dist/services/eveai-task.js.map +1 -0
- package/dist/services/eveai-task.mjs +142 -0
- package/dist/services/eveai-task.mjs.map +1 -0
- package/package.json +16 -2
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Client } from '../client.mjs';
|
|
2
|
+
import '../models.mjs';
|
|
3
|
+
import '../enums/database-type.mjs';
|
|
4
|
+
import '../enums/attribute-status.mjs';
|
|
5
|
+
import '../enums/column-status.mjs';
|
|
6
|
+
import '../enums/index-status.mjs';
|
|
7
|
+
import '../enums/deployment-status.mjs';
|
|
8
|
+
import '../enums/execution-trigger.mjs';
|
|
9
|
+
import '../enums/execution-status.mjs';
|
|
10
|
+
import '../enums/health-antivirus-status.mjs';
|
|
11
|
+
import '../enums/health-check-status.mjs';
|
|
12
|
+
import '../enums/message-status.mjs';
|
|
13
|
+
import '../query.mjs';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Eve.AI Task Service
|
|
17
|
+
*
|
|
18
|
+
* Comprehensive task management and AI analysis for the Eve.AI marketplace
|
|
19
|
+
*/
|
|
20
|
+
declare class EveAITask {
|
|
21
|
+
client: Client;
|
|
22
|
+
constructor(client: Client);
|
|
23
|
+
/**
|
|
24
|
+
* Create Task
|
|
25
|
+
*
|
|
26
|
+
* Create a new task with AI analysis
|
|
27
|
+
*/
|
|
28
|
+
createTask(title: string, description: string, category: string, location: TaskLocation, urgency?: string, estimatedPrice?: number, imagePaths?: string[], audioPath?: string): Promise<TaskResponse>;
|
|
29
|
+
/**
|
|
30
|
+
* Get Task
|
|
31
|
+
*
|
|
32
|
+
* Get task details by ID
|
|
33
|
+
*/
|
|
34
|
+
getTask(taskId: string): Promise<TaskResponse>;
|
|
35
|
+
/**
|
|
36
|
+
* List Tasks
|
|
37
|
+
*
|
|
38
|
+
* List tasks with filters
|
|
39
|
+
*/
|
|
40
|
+
listTasks(status?: string, category?: string, page?: number, pageSize?: number): Promise<TaskListResponse>;
|
|
41
|
+
/**
|
|
42
|
+
* Accept Task
|
|
43
|
+
*
|
|
44
|
+
* Provider accepts a task
|
|
45
|
+
*/
|
|
46
|
+
acceptTask(taskId: string): Promise<TaskResponse>;
|
|
47
|
+
/**
|
|
48
|
+
* Complete Task
|
|
49
|
+
*
|
|
50
|
+
* Mark task as completed
|
|
51
|
+
*/
|
|
52
|
+
completeTask(taskId: string): Promise<TaskResponse>;
|
|
53
|
+
/**
|
|
54
|
+
* Cancel Task
|
|
55
|
+
*
|
|
56
|
+
* Cancel a task
|
|
57
|
+
*/
|
|
58
|
+
cancelTask(taskId: string, reason?: string): Promise<TaskResponse>;
|
|
59
|
+
/**
|
|
60
|
+
* Get Nearby Tasks
|
|
61
|
+
*
|
|
62
|
+
* Get tasks near a location
|
|
63
|
+
*/
|
|
64
|
+
getNearbyTasks(latitude: number, longitude: number, radiusMiles?: number, category?: string): Promise<TaskListResponse>;
|
|
65
|
+
/**
|
|
66
|
+
* Analyze Text
|
|
67
|
+
*
|
|
68
|
+
* AI analysis of text description
|
|
69
|
+
*/
|
|
70
|
+
analyzeText(text: string): Promise<AIAnalysisResponse>;
|
|
71
|
+
/**
|
|
72
|
+
* Analyze Voice
|
|
73
|
+
*
|
|
74
|
+
* AI analysis of voice recording (Whisper + GPT-4)
|
|
75
|
+
*/
|
|
76
|
+
analyzeVoice(audioData: Buffer, audioFormat?: string): Promise<AIAnalysisResponse>;
|
|
77
|
+
/**
|
|
78
|
+
* Analyze Image
|
|
79
|
+
*
|
|
80
|
+
* AI analysis of images (GPT-4 Vision)
|
|
81
|
+
*/
|
|
82
|
+
analyzeImage(imageData: Buffer, imageFormat?: string): Promise<AIAnalysisResponse>;
|
|
83
|
+
}
|
|
84
|
+
interface TaskLocation {
|
|
85
|
+
latitude: number;
|
|
86
|
+
longitude: number;
|
|
87
|
+
address: string;
|
|
88
|
+
}
|
|
89
|
+
interface TaskResponse {
|
|
90
|
+
status_code: number;
|
|
91
|
+
status_msg?: string;
|
|
92
|
+
task?: Task;
|
|
93
|
+
}
|
|
94
|
+
interface TaskListResponse {
|
|
95
|
+
status_code: number;
|
|
96
|
+
tasks: Task[];
|
|
97
|
+
total: number;
|
|
98
|
+
}
|
|
99
|
+
interface AIAnalysisResponse {
|
|
100
|
+
status_code: number;
|
|
101
|
+
analysis: AIAnalysis;
|
|
102
|
+
}
|
|
103
|
+
interface Task {
|
|
104
|
+
id: string;
|
|
105
|
+
user_id: number;
|
|
106
|
+
provider_id?: number;
|
|
107
|
+
title: string;
|
|
108
|
+
description: string;
|
|
109
|
+
category: string;
|
|
110
|
+
urgency: string;
|
|
111
|
+
status: string;
|
|
112
|
+
estimated_price: number;
|
|
113
|
+
final_price?: number;
|
|
114
|
+
tip?: number;
|
|
115
|
+
location: TaskLocation;
|
|
116
|
+
image_urls?: string[];
|
|
117
|
+
audio_url?: string;
|
|
118
|
+
created_at: string;
|
|
119
|
+
updated_at: string;
|
|
120
|
+
}
|
|
121
|
+
interface AIAnalysis {
|
|
122
|
+
transcription?: string;
|
|
123
|
+
detected_objects?: string[];
|
|
124
|
+
scene_description?: string;
|
|
125
|
+
suggested_category?: string;
|
|
126
|
+
estimated_price?: number;
|
|
127
|
+
suggestions?: TaskSuggestion[];
|
|
128
|
+
}
|
|
129
|
+
interface TaskSuggestion {
|
|
130
|
+
title: string;
|
|
131
|
+
description: string;
|
|
132
|
+
category: string;
|
|
133
|
+
estimated_price: number;
|
|
134
|
+
urgency: string;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export { AIAnalysis, AIAnalysisResponse, EveAITask, Task, TaskListResponse, TaskLocation, TaskResponse, TaskSuggestion };
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Client } from '../client.js';
|
|
2
|
+
import '../models.js';
|
|
3
|
+
import '../enums/database-type.js';
|
|
4
|
+
import '../enums/attribute-status.js';
|
|
5
|
+
import '../enums/column-status.js';
|
|
6
|
+
import '../enums/index-status.js';
|
|
7
|
+
import '../enums/deployment-status.js';
|
|
8
|
+
import '../enums/execution-trigger.js';
|
|
9
|
+
import '../enums/execution-status.js';
|
|
10
|
+
import '../enums/health-antivirus-status.js';
|
|
11
|
+
import '../enums/health-check-status.js';
|
|
12
|
+
import '../enums/message-status.js';
|
|
13
|
+
import '../query.js';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Eve.AI Task Service
|
|
17
|
+
*
|
|
18
|
+
* Comprehensive task management and AI analysis for the Eve.AI marketplace
|
|
19
|
+
*/
|
|
20
|
+
declare class EveAITask {
|
|
21
|
+
client: Client;
|
|
22
|
+
constructor(client: Client);
|
|
23
|
+
/**
|
|
24
|
+
* Create Task
|
|
25
|
+
*
|
|
26
|
+
* Create a new task with AI analysis
|
|
27
|
+
*/
|
|
28
|
+
createTask(title: string, description: string, category: string, location: TaskLocation, urgency?: string, estimatedPrice?: number, imagePaths?: string[], audioPath?: string): Promise<TaskResponse>;
|
|
29
|
+
/**
|
|
30
|
+
* Get Task
|
|
31
|
+
*
|
|
32
|
+
* Get task details by ID
|
|
33
|
+
*/
|
|
34
|
+
getTask(taskId: string): Promise<TaskResponse>;
|
|
35
|
+
/**
|
|
36
|
+
* List Tasks
|
|
37
|
+
*
|
|
38
|
+
* List tasks with filters
|
|
39
|
+
*/
|
|
40
|
+
listTasks(status?: string, category?: string, page?: number, pageSize?: number): Promise<TaskListResponse>;
|
|
41
|
+
/**
|
|
42
|
+
* Accept Task
|
|
43
|
+
*
|
|
44
|
+
* Provider accepts a task
|
|
45
|
+
*/
|
|
46
|
+
acceptTask(taskId: string): Promise<TaskResponse>;
|
|
47
|
+
/**
|
|
48
|
+
* Complete Task
|
|
49
|
+
*
|
|
50
|
+
* Mark task as completed
|
|
51
|
+
*/
|
|
52
|
+
completeTask(taskId: string): Promise<TaskResponse>;
|
|
53
|
+
/**
|
|
54
|
+
* Cancel Task
|
|
55
|
+
*
|
|
56
|
+
* Cancel a task
|
|
57
|
+
*/
|
|
58
|
+
cancelTask(taskId: string, reason?: string): Promise<TaskResponse>;
|
|
59
|
+
/**
|
|
60
|
+
* Get Nearby Tasks
|
|
61
|
+
*
|
|
62
|
+
* Get tasks near a location
|
|
63
|
+
*/
|
|
64
|
+
getNearbyTasks(latitude: number, longitude: number, radiusMiles?: number, category?: string): Promise<TaskListResponse>;
|
|
65
|
+
/**
|
|
66
|
+
* Analyze Text
|
|
67
|
+
*
|
|
68
|
+
* AI analysis of text description
|
|
69
|
+
*/
|
|
70
|
+
analyzeText(text: string): Promise<AIAnalysisResponse>;
|
|
71
|
+
/**
|
|
72
|
+
* Analyze Voice
|
|
73
|
+
*
|
|
74
|
+
* AI analysis of voice recording (Whisper + GPT-4)
|
|
75
|
+
*/
|
|
76
|
+
analyzeVoice(audioData: Buffer, audioFormat?: string): Promise<AIAnalysisResponse>;
|
|
77
|
+
/**
|
|
78
|
+
* Analyze Image
|
|
79
|
+
*
|
|
80
|
+
* AI analysis of images (GPT-4 Vision)
|
|
81
|
+
*/
|
|
82
|
+
analyzeImage(imageData: Buffer, imageFormat?: string): Promise<AIAnalysisResponse>;
|
|
83
|
+
}
|
|
84
|
+
interface TaskLocation {
|
|
85
|
+
latitude: number;
|
|
86
|
+
longitude: number;
|
|
87
|
+
address: string;
|
|
88
|
+
}
|
|
89
|
+
interface TaskResponse {
|
|
90
|
+
status_code: number;
|
|
91
|
+
status_msg?: string;
|
|
92
|
+
task?: Task;
|
|
93
|
+
}
|
|
94
|
+
interface TaskListResponse {
|
|
95
|
+
status_code: number;
|
|
96
|
+
tasks: Task[];
|
|
97
|
+
total: number;
|
|
98
|
+
}
|
|
99
|
+
interface AIAnalysisResponse {
|
|
100
|
+
status_code: number;
|
|
101
|
+
analysis: AIAnalysis;
|
|
102
|
+
}
|
|
103
|
+
interface Task {
|
|
104
|
+
id: string;
|
|
105
|
+
user_id: number;
|
|
106
|
+
provider_id?: number;
|
|
107
|
+
title: string;
|
|
108
|
+
description: string;
|
|
109
|
+
category: string;
|
|
110
|
+
urgency: string;
|
|
111
|
+
status: string;
|
|
112
|
+
estimated_price: number;
|
|
113
|
+
final_price?: number;
|
|
114
|
+
tip?: number;
|
|
115
|
+
location: TaskLocation;
|
|
116
|
+
image_urls?: string[];
|
|
117
|
+
audio_url?: string;
|
|
118
|
+
created_at: string;
|
|
119
|
+
updated_at: string;
|
|
120
|
+
}
|
|
121
|
+
interface AIAnalysis {
|
|
122
|
+
transcription?: string;
|
|
123
|
+
detected_objects?: string[];
|
|
124
|
+
scene_description?: string;
|
|
125
|
+
suggested_category?: string;
|
|
126
|
+
estimated_price?: number;
|
|
127
|
+
suggestions?: TaskSuggestion[];
|
|
128
|
+
}
|
|
129
|
+
interface TaskSuggestion {
|
|
130
|
+
title: string;
|
|
131
|
+
description: string;
|
|
132
|
+
category: string;
|
|
133
|
+
estimated_price: number;
|
|
134
|
+
urgency: string;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export { AIAnalysis, AIAnalysisResponse, EveAITask, Task, TaskListResponse, TaskLocation, TaskResponse, TaskSuggestion };
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
class EveAITask {
|
|
4
|
+
constructor(client) {
|
|
5
|
+
this.client = client;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Create Task
|
|
9
|
+
*
|
|
10
|
+
* Create a new task with AI analysis
|
|
11
|
+
*/
|
|
12
|
+
async createTask(title, description, category, location, urgency = "medium", estimatedPrice, imagePaths, audioPath) {
|
|
13
|
+
const path = "/task/create";
|
|
14
|
+
const payload = {
|
|
15
|
+
title,
|
|
16
|
+
description,
|
|
17
|
+
category,
|
|
18
|
+
location,
|
|
19
|
+
urgency,
|
|
20
|
+
estimated_price: estimatedPrice,
|
|
21
|
+
image_paths: imagePaths,
|
|
22
|
+
audio_path: audioPath
|
|
23
|
+
};
|
|
24
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
25
|
+
return await this.client.call("post", uri, {
|
|
26
|
+
"content-type": "application/json"
|
|
27
|
+
}, payload);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Get Task
|
|
31
|
+
*
|
|
32
|
+
* Get task details by ID
|
|
33
|
+
*/
|
|
34
|
+
async getTask(taskId) {
|
|
35
|
+
const path = `/task/${taskId}`;
|
|
36
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
37
|
+
return await this.client.call("get", uri);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* List Tasks
|
|
41
|
+
*
|
|
42
|
+
* List tasks with filters
|
|
43
|
+
*/
|
|
44
|
+
async listTasks(status, category, page = 1, pageSize = 20) {
|
|
45
|
+
const path = "/task/list";
|
|
46
|
+
const payload = { page, page_size: pageSize };
|
|
47
|
+
if (status)
|
|
48
|
+
payload.status = status;
|
|
49
|
+
if (category)
|
|
50
|
+
payload.category = category;
|
|
51
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
52
|
+
return await this.client.call("get", uri, {}, payload);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Accept Task
|
|
56
|
+
*
|
|
57
|
+
* Provider accepts a task
|
|
58
|
+
*/
|
|
59
|
+
async acceptTask(taskId) {
|
|
60
|
+
const path = `/task/${taskId}/accept`;
|
|
61
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
62
|
+
return await this.client.call("post", uri);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Complete Task
|
|
66
|
+
*
|
|
67
|
+
* Mark task as completed
|
|
68
|
+
*/
|
|
69
|
+
async completeTask(taskId) {
|
|
70
|
+
const path = `/task/${taskId}/complete`;
|
|
71
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
72
|
+
return await this.client.call("post", uri);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Cancel Task
|
|
76
|
+
*
|
|
77
|
+
* Cancel a task
|
|
78
|
+
*/
|
|
79
|
+
async cancelTask(taskId, reason) {
|
|
80
|
+
const path = `/task/${taskId}/cancel`;
|
|
81
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
82
|
+
return await this.client.call("post", uri, {
|
|
83
|
+
"content-type": "application/json"
|
|
84
|
+
}, { reason });
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Get Nearby Tasks
|
|
88
|
+
*
|
|
89
|
+
* Get tasks near a location
|
|
90
|
+
*/
|
|
91
|
+
async getNearbyTasks(latitude, longitude, radiusMiles = 25, category) {
|
|
92
|
+
const path = "/task/nearby";
|
|
93
|
+
const payload = {
|
|
94
|
+
latitude,
|
|
95
|
+
longitude,
|
|
96
|
+
radius_miles: radiusMiles
|
|
97
|
+
};
|
|
98
|
+
if (category)
|
|
99
|
+
payload.category = category;
|
|
100
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
101
|
+
return await this.client.call("get", uri, {}, payload);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Analyze Text
|
|
105
|
+
*
|
|
106
|
+
* AI analysis of text description
|
|
107
|
+
*/
|
|
108
|
+
async analyzeText(text) {
|
|
109
|
+
const path = "/task/ai/analyze-text";
|
|
110
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
111
|
+
return await this.client.call("post", uri, {
|
|
112
|
+
"content-type": "application/json"
|
|
113
|
+
}, { text });
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Analyze Voice
|
|
117
|
+
*
|
|
118
|
+
* AI analysis of voice recording (Whisper + GPT-4)
|
|
119
|
+
*/
|
|
120
|
+
async analyzeVoice(audioData, audioFormat = "mp3") {
|
|
121
|
+
const path = "/task/ai/analyze-voice";
|
|
122
|
+
const formData = new FormData();
|
|
123
|
+
formData.append("audio", new Blob([audioData]), `audio.${audioFormat}`);
|
|
124
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
125
|
+
return await this.client.call("post", uri, {}, formData);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Analyze Image
|
|
129
|
+
*
|
|
130
|
+
* AI analysis of images (GPT-4 Vision)
|
|
131
|
+
*/
|
|
132
|
+
async analyzeImage(imageData, imageFormat = "jpg") {
|
|
133
|
+
const path = "/task/ai/analyze-image";
|
|
134
|
+
const formData = new FormData();
|
|
135
|
+
formData.append("image", new Blob([imageData]), `image.${imageFormat}`);
|
|
136
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
137
|
+
return await this.client.call("post", uri, {}, formData);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
exports.EveAITask = EveAITask;
|
|
142
|
+
//# sourceMappingURL=out.js.map
|
|
143
|
+
//# sourceMappingURL=eveai-task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/eveai-task.ts"],"names":[],"mappings":"AAQO,MAAM,UAAU;AAAA,EAGnB,YAAY,QAAgB;AACxB,SAAK,SAAS;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WACF,OACA,aACA,UACA,UACA,UAAkB,UAClB,gBACA,YACA,WACqB;AACrB,UAAM,OAAO;AACb,UAAM,UAAe;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,iBAAiB;AAAA,MACjB,aAAa;AAAA,MACb,YAAY;AAAA,IAChB;AAEA,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG,OAAO;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,QAAQ,QAAuC;AACjD,UAAM,OAAO,SAAS,MAAM;AAC5B,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,GAAG;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,UACF,QACA,UACA,OAAe,GACf,WAAmB,IACM;AACzB,UAAM,OAAO;AACb,UAAM,UAAe,EAAE,MAAM,WAAW,SAAS;AACjD,QAAI;AAAQ,cAAQ,SAAS;AAC7B,QAAI;AAAU,cAAQ,WAAW;AAEjC,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,CAAC,GAAG,OAAO;AAAA,EACzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WAAW,QAAuC;AACpD,UAAM,OAAO,SAAS,MAAM;AAC5B,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,GAAG;AAAA,EAC7C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,aAAa,QAAuC;AACtD,UAAM,OAAO,SAAS,MAAM;AAC5B,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,GAAG;AAAA,EAC7C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WAAW,QAAgB,QAAwC;AACrE,UAAM,OAAO,SAAS,MAAM;AAC5B,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG,EAAE,OAAO,CAAC;AAAA,EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,eACF,UACA,WACA,cAAsB,IACtB,UACyB;AACzB,UAAM,OAAO;AACb,UAAM,UAAe;AAAA,MACjB;AAAA,MACA;AAAA,MACA,cAAc;AAAA,IAClB;AACA,QAAI;AAAU,cAAQ,WAAW;AAEjC,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,CAAC,GAAG,OAAO;AAAA,EACzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,YAAY,MAA2C;AACzD,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG,EAAE,KAAK,CAAC;AAAA,EACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,aAAa,WAAmB,cAAsB,OAAoC;AAC5F,UAAM,OAAO;AACb,UAAM,WAAW,IAAI,SAAS;AAC9B,aAAS,OAAO,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,WAAW,EAAE;AAEtE,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK,CAAC,GAAG,QAAQ;AAAA,EAC3D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,aAAa,WAAmB,cAAsB,OAAoC;AAC5F,UAAM,OAAO;AACb,UAAM,WAAW,IAAI,SAAS;AAC9B,aAAS,OAAO,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,WAAW,EAAE;AAEtE,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK,CAAC,GAAG,QAAQ;AAAA,EAC3D;AACJ","sourcesContent":["import { Client } from '../client';\nimport type { Models } from '../models';\n\n/**\n * Eve.AI Task Service\n * \n * Comprehensive task management and AI analysis for the Eve.AI marketplace\n */\nexport class EveAITask {\n client: Client;\n\n constructor(client: Client) {\n this.client = client;\n }\n\n /**\n * Create Task\n * \n * Create a new task with AI analysis\n */\n async createTask(\n title: string,\n description: string,\n category: string,\n location: TaskLocation,\n urgency: string = 'medium',\n estimatedPrice?: number,\n imagePaths?: string[],\n audioPath?: string\n ): Promise<TaskResponse> {\n const path = '/task/create';\n const payload: any = {\n title,\n description,\n category,\n location,\n urgency,\n estimated_price: estimatedPrice,\n image_paths: imagePaths,\n audio_path: audioPath\n };\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, payload);\n }\n\n /**\n * Get Task\n * \n * Get task details by ID\n */\n async getTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri);\n }\n\n /**\n * List Tasks\n * \n * List tasks with filters\n */\n async listTasks(\n status?: string,\n category?: string,\n page: number = 1,\n pageSize: number = 20\n ): Promise<TaskListResponse> {\n const path = '/task/list';\n const payload: any = { page, page_size: pageSize };\n if (status) payload.status = status;\n if (category) payload.category = category;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n\n /**\n * Accept Task\n * \n * Provider accepts a task\n */\n async acceptTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/accept`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri);\n }\n\n /**\n * Complete Task\n * \n * Mark task as completed\n */\n async completeTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/complete`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri);\n }\n\n /**\n * Cancel Task\n * \n * Cancel a task\n */\n async cancelTask(taskId: string, reason?: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/cancel`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, { reason });\n }\n\n /**\n * Get Nearby Tasks\n * \n * Get tasks near a location\n */\n async getNearbyTasks(\n latitude: number,\n longitude: number,\n radiusMiles: number = 25,\n category?: string\n ): Promise<TaskListResponse> {\n const path = '/task/nearby';\n const payload: any = {\n latitude,\n longitude,\n radius_miles: radiusMiles\n };\n if (category) payload.category = category;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n\n /**\n * Analyze Text\n * \n * AI analysis of text description\n */\n async analyzeText(text: string): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-text';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, { text });\n }\n\n /**\n * Analyze Voice\n * \n * AI analysis of voice recording (Whisper + GPT-4)\n */\n async analyzeVoice(audioData: Buffer, audioFormat: string = 'mp3'): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-voice';\n const formData = new FormData();\n formData.append('audio', new Blob([audioData]), `audio.${audioFormat}`);\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {}, formData);\n }\n\n /**\n * Analyze Image\n * \n * AI analysis of images (GPT-4 Vision)\n */\n async analyzeImage(imageData: Buffer, imageFormat: string = 'jpg'): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-image';\n const formData = new FormData();\n formData.append('image', new Blob([imageData]), `image.${imageFormat}`);\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {}, formData);\n }\n}\n\n// Types\nexport interface TaskLocation {\n latitude: number;\n longitude: number;\n address: string;\n}\n\nexport interface TaskResponse {\n status_code: number;\n status_msg?: string;\n task?: Task;\n}\n\nexport interface TaskListResponse {\n status_code: number;\n tasks: Task[];\n total: number;\n}\n\nexport interface AIAnalysisResponse {\n status_code: number;\n analysis: AIAnalysis;\n}\n\nexport interface Task {\n id: string;\n user_id: number;\n provider_id?: number;\n title: string;\n description: string;\n category: string;\n urgency: string;\n status: string;\n estimated_price: number;\n final_price?: number;\n tip?: number;\n location: TaskLocation;\n image_urls?: string[];\n audio_url?: string;\n created_at: string;\n updated_at: string;\n}\n\nexport interface AIAnalysis {\n transcription?: string;\n detected_objects?: string[];\n scene_description?: string;\n suggested_category?: string;\n estimated_price?: number;\n suggestions?: TaskSuggestion[];\n}\n\nexport interface TaskSuggestion {\n title: string;\n description: string;\n category: string;\n estimated_price: number;\n urgency: string;\n}\n"]}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
// src/services/eveai-task.ts
|
|
2
|
+
var EveAITask = class {
|
|
3
|
+
constructor(client) {
|
|
4
|
+
this.client = client;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Create Task
|
|
8
|
+
*
|
|
9
|
+
* Create a new task with AI analysis
|
|
10
|
+
*/
|
|
11
|
+
async createTask(title, description, category, location, urgency = "medium", estimatedPrice, imagePaths, audioPath) {
|
|
12
|
+
const path = "/task/create";
|
|
13
|
+
const payload = {
|
|
14
|
+
title,
|
|
15
|
+
description,
|
|
16
|
+
category,
|
|
17
|
+
location,
|
|
18
|
+
urgency,
|
|
19
|
+
estimated_price: estimatedPrice,
|
|
20
|
+
image_paths: imagePaths,
|
|
21
|
+
audio_path: audioPath
|
|
22
|
+
};
|
|
23
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
24
|
+
return await this.client.call("post", uri, {
|
|
25
|
+
"content-type": "application/json"
|
|
26
|
+
}, payload);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Get Task
|
|
30
|
+
*
|
|
31
|
+
* Get task details by ID
|
|
32
|
+
*/
|
|
33
|
+
async getTask(taskId) {
|
|
34
|
+
const path = `/task/${taskId}`;
|
|
35
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
36
|
+
return await this.client.call("get", uri);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* List Tasks
|
|
40
|
+
*
|
|
41
|
+
* List tasks with filters
|
|
42
|
+
*/
|
|
43
|
+
async listTasks(status, category, page = 1, pageSize = 20) {
|
|
44
|
+
const path = "/task/list";
|
|
45
|
+
const payload = { page, page_size: pageSize };
|
|
46
|
+
if (status)
|
|
47
|
+
payload.status = status;
|
|
48
|
+
if (category)
|
|
49
|
+
payload.category = category;
|
|
50
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
51
|
+
return await this.client.call("get", uri, {}, payload);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Accept Task
|
|
55
|
+
*
|
|
56
|
+
* Provider accepts a task
|
|
57
|
+
*/
|
|
58
|
+
async acceptTask(taskId) {
|
|
59
|
+
const path = `/task/${taskId}/accept`;
|
|
60
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
61
|
+
return await this.client.call("post", uri);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Complete Task
|
|
65
|
+
*
|
|
66
|
+
* Mark task as completed
|
|
67
|
+
*/
|
|
68
|
+
async completeTask(taskId) {
|
|
69
|
+
const path = `/task/${taskId}/complete`;
|
|
70
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
71
|
+
return await this.client.call("post", uri);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Cancel Task
|
|
75
|
+
*
|
|
76
|
+
* Cancel a task
|
|
77
|
+
*/
|
|
78
|
+
async cancelTask(taskId, reason) {
|
|
79
|
+
const path = `/task/${taskId}/cancel`;
|
|
80
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
81
|
+
return await this.client.call("post", uri, {
|
|
82
|
+
"content-type": "application/json"
|
|
83
|
+
}, { reason });
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Get Nearby Tasks
|
|
87
|
+
*
|
|
88
|
+
* Get tasks near a location
|
|
89
|
+
*/
|
|
90
|
+
async getNearbyTasks(latitude, longitude, radiusMiles = 25, category) {
|
|
91
|
+
const path = "/task/nearby";
|
|
92
|
+
const payload = {
|
|
93
|
+
latitude,
|
|
94
|
+
longitude,
|
|
95
|
+
radius_miles: radiusMiles
|
|
96
|
+
};
|
|
97
|
+
if (category)
|
|
98
|
+
payload.category = category;
|
|
99
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
100
|
+
return await this.client.call("get", uri, {}, payload);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Analyze Text
|
|
104
|
+
*
|
|
105
|
+
* AI analysis of text description
|
|
106
|
+
*/
|
|
107
|
+
async analyzeText(text) {
|
|
108
|
+
const path = "/task/ai/analyze-text";
|
|
109
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
110
|
+
return await this.client.call("post", uri, {
|
|
111
|
+
"content-type": "application/json"
|
|
112
|
+
}, { text });
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Analyze Voice
|
|
116
|
+
*
|
|
117
|
+
* AI analysis of voice recording (Whisper + GPT-4)
|
|
118
|
+
*/
|
|
119
|
+
async analyzeVoice(audioData, audioFormat = "mp3") {
|
|
120
|
+
const path = "/task/ai/analyze-voice";
|
|
121
|
+
const formData = new FormData();
|
|
122
|
+
formData.append("audio", new Blob([audioData]), `audio.${audioFormat}`);
|
|
123
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
124
|
+
return await this.client.call("post", uri, {}, formData);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Analyze Image
|
|
128
|
+
*
|
|
129
|
+
* AI analysis of images (GPT-4 Vision)
|
|
130
|
+
*/
|
|
131
|
+
async analyzeImage(imageData, imageFormat = "jpg") {
|
|
132
|
+
const path = "/task/ai/analyze-image";
|
|
133
|
+
const formData = new FormData();
|
|
134
|
+
formData.append("image", new Blob([imageData]), `image.${imageFormat}`);
|
|
135
|
+
const uri = new URL(this.client.config.endpoint + path);
|
|
136
|
+
return await this.client.call("post", uri, {}, formData);
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
export { EveAITask };
|
|
141
|
+
//# sourceMappingURL=out.js.map
|
|
142
|
+
//# sourceMappingURL=eveai-task.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/eveai-task.ts"],"names":[],"mappings":"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","sourcesContent":["import { Client } from '../client';\nimport type { Models } from '../models';\n\n/**\n * Eve.AI Task Service\n * \n * Comprehensive task management and AI analysis for the Eve.AI marketplace\n */\nexport class EveAITask {\n client: Client;\n\n constructor(client: Client) {\n this.client = client;\n }\n\n /**\n * Create Task\n * \n * Create a new task with AI analysis\n */\n async createTask(\n title: string,\n description: string,\n category: string,\n location: TaskLocation,\n urgency: string = 'medium',\n estimatedPrice?: number,\n imagePaths?: string[],\n audioPath?: string\n ): Promise<TaskResponse> {\n const path = '/task/create';\n const payload: any = {\n title,\n description,\n category,\n location,\n urgency,\n estimated_price: estimatedPrice,\n image_paths: imagePaths,\n audio_path: audioPath\n };\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, payload);\n }\n\n /**\n * Get Task\n * \n * Get task details by ID\n */\n async getTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri);\n }\n\n /**\n * List Tasks\n * \n * List tasks with filters\n */\n async listTasks(\n status?: string,\n category?: string,\n page: number = 1,\n pageSize: number = 20\n ): Promise<TaskListResponse> {\n const path = '/task/list';\n const payload: any = { page, page_size: pageSize };\n if (status) payload.status = status;\n if (category) payload.category = category;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n\n /**\n * Accept Task\n * \n * Provider accepts a task\n */\n async acceptTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/accept`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri);\n }\n\n /**\n * Complete Task\n * \n * Mark task as completed\n */\n async completeTask(taskId: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/complete`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri);\n }\n\n /**\n * Cancel Task\n * \n * Cancel a task\n */\n async cancelTask(taskId: string, reason?: string): Promise<TaskResponse> {\n const path = `/task/${taskId}/cancel`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, { reason });\n }\n\n /**\n * Get Nearby Tasks\n * \n * Get tasks near a location\n */\n async getNearbyTasks(\n latitude: number,\n longitude: number,\n radiusMiles: number = 25,\n category?: string\n ): Promise<TaskListResponse> {\n const path = '/task/nearby';\n const payload: any = {\n latitude,\n longitude,\n radius_miles: radiusMiles\n };\n if (category) payload.category = category;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n\n /**\n * Analyze Text\n * \n * AI analysis of text description\n */\n async analyzeText(text: string): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-text';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, { text });\n }\n\n /**\n * Analyze Voice\n * \n * AI analysis of voice recording (Whisper + GPT-4)\n */\n async analyzeVoice(audioData: Buffer, audioFormat: string = 'mp3'): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-voice';\n const formData = new FormData();\n formData.append('audio', new Blob([audioData]), `audio.${audioFormat}`);\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {}, formData);\n }\n\n /**\n * Analyze Image\n * \n * AI analysis of images (GPT-4 Vision)\n */\n async analyzeImage(imageData: Buffer, imageFormat: string = 'jpg'): Promise<AIAnalysisResponse> {\n const path = '/task/ai/analyze-image';\n const formData = new FormData();\n formData.append('image', new Blob([imageData]), `image.${imageFormat}`);\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {}, formData);\n }\n}\n\n// Types\nexport interface TaskLocation {\n latitude: number;\n longitude: number;\n address: string;\n}\n\nexport interface TaskResponse {\n status_code: number;\n status_msg?: string;\n task?: Task;\n}\n\nexport interface TaskListResponse {\n status_code: number;\n tasks: Task[];\n total: number;\n}\n\nexport interface AIAnalysisResponse {\n status_code: number;\n analysis: AIAnalysis;\n}\n\nexport interface Task {\n id: string;\n user_id: number;\n provider_id?: number;\n title: string;\n description: string;\n category: string;\n urgency: string;\n status: string;\n estimated_price: number;\n final_price?: number;\n tip?: number;\n location: TaskLocation;\n image_urls?: string[];\n audio_url?: string;\n created_at: string;\n updated_at: string;\n}\n\nexport interface AIAnalysis {\n transcription?: string;\n detected_objects?: string[];\n scene_description?: string;\n suggested_category?: string;\n estimated_price?: number;\n suggestions?: TaskSuggestion[];\n}\n\nexport interface TaskSuggestion {\n title: string;\n description: string;\n category: string;\n estimated_price: number;\n urgency: string;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@eveai/eve-sdk-for-node",
|
|
3
3
|
"homepage": "https://github.com/EveAGI/eve-sdk-for-node",
|
|
4
4
|
"description": "Eve.AI Node.js SDK - Artificial General Intelligence Platform SDK for Node.js applications",
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.3",
|
|
6
6
|
"license": "BSD-3-Clause",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"type": "commonjs",
|
|
@@ -42,6 +42,20 @@
|
|
|
42
42
|
},
|
|
43
43
|
"keywords": [
|
|
44
44
|
"eve",
|
|
45
|
+
"eveai",
|
|
46
|
+
"eve.ai",
|
|
47
|
+
"marketplace",
|
|
48
|
+
"ai",
|
|
49
|
+
"gpt-4",
|
|
50
|
+
"whisper",
|
|
51
|
+
"provider-discovery",
|
|
52
|
+
"task-management",
|
|
53
|
+
"payments",
|
|
54
|
+
"stripe",
|
|
55
|
+
"chat",
|
|
56
|
+
"real-time",
|
|
57
|
+
"gugotik",
|
|
58
|
+
"tiktok",
|
|
45
59
|
"video",
|
|
46
60
|
"social",
|
|
47
61
|
"microservices",
|
|
@@ -51,9 +65,9 @@
|
|
|
51
65
|
],
|
|
52
66
|
"devDependencies": {
|
|
53
67
|
"@types/node": "20.11.25",
|
|
68
|
+
"tsup": "7.2.0",
|
|
54
69
|
"esbuild-plugin-file-path-extensions": "^2.0.0",
|
|
55
70
|
"tslib": "2.6.2",
|
|
56
|
-
"tsup": "7.2.0",
|
|
57
71
|
"typescript": "5.4.2"
|
|
58
72
|
},
|
|
59
73
|
"dependencies": {
|