mirror of
https://github.com/memohai/Memoh.git
synced 2026-04-27 07:16:19 +09:00
feat: schedule task
This commit is contained in:
@@ -131,7 +131,7 @@ func (r *Resolver) Chat(ctx context.Context, req ChatRequest) (ChatResponse, err
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (r *Resolver) TriggerSchedule(ctx context.Context, userID string, schedule SchedulePayload) error {
|
||||
func (r *Resolver) TriggerSchedule(ctx context.Context, userID string, schedule SchedulePayload, token string) error {
|
||||
if strings.TrimSpace(userID) == "" {
|
||||
return fmt.Errorf("user id is required")
|
||||
}
|
||||
@@ -180,7 +180,7 @@ func (r *Resolver) TriggerSchedule(ctx context.Context, userID string, schedule
|
||||
Schedule: schedule,
|
||||
}
|
||||
|
||||
resp, err := r.postSchedule(ctx, payload, "")
|
||||
resp, err := r.postSchedule(ctx, payload, token)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -482,12 +482,7 @@ func (r *Resolver) storeHistory(ctx context.Context, userID, query string, respo
|
||||
if strings.TrimSpace(query) == "" && len(responseMessages) == 0 {
|
||||
return nil
|
||||
}
|
||||
userMessage := GatewayMessage{
|
||||
"role": "user",
|
||||
"content": query,
|
||||
}
|
||||
messages := append([]GatewayMessage{userMessage}, responseMessages...)
|
||||
payload, err := json.Marshal(messages)
|
||||
payload, err := json.Marshal(responseMessages)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ type GatewayMessage map[string]interface{}
|
||||
|
||||
type ChatRequest struct {
|
||||
UserID string `json:"-"`
|
||||
Token string `json:"-"`
|
||||
Query string `json:"query"`
|
||||
Model string `json:"model,omitempty"`
|
||||
Provider string `json:"provider,omitempty"`
|
||||
@@ -30,3 +31,12 @@ type ChatResponse struct {
|
||||
}
|
||||
|
||||
type StreamChunk = json.RawMessage
|
||||
|
||||
type SchedulePayload struct {
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Description string `json:"description"`
|
||||
Pattern string `json:"pattern"`
|
||||
MaxCalls *int `json:"maxCalls,omitempty"`
|
||||
Command string `json:"command"`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user