Files
EdgeCommon/pkg/rpc/protos/service_message_task.proto

117 lines
3.1 KiB
Protocol Buffer
Raw Normal View History

2021-04-05 20:48:39 +08:00
syntax = "proto3";
option go_package = "./pb";
package pb;
2021-05-04 21:02:21 +08:00
import "models/model_message_task.proto";
2021-04-05 20:48:39 +08:00
import "models/rpc_messages.proto";
// 消息发送任务服务
service MessageTaskService {
// 创建消息任务
rpc createMessageTask (CreateMessageTaskRequest) returns (CreateMessageTaskResponse);
// 删除消息任务
rpc deleteMessageTask (DeleteMessageTaskRequest) returns (RPCSuccess);
// 读取消息任务状态
rpc findEnabledMessageTask (FindEnabledMessageTaskRequest) returns (FindEnabledMessageTaskResponse);
// 计算某个状态的消息任务数量
rpc countMessageTasksWithStatus(CountMessageTasksWithStatusRequest) returns (RPCCountResponse);
// 根据状态列出某页任务
rpc listMessageTasksWithStatus(ListMessageTasksWithStatusRequest) returns (ListMessageTasksWithStatusResponse);
2023-10-12 20:11:34 +08:00
// 发送某个消息任务
rpc sendMessageTask(SendMessageTaskRequest) returns (SendMessageTaskResponse);
2023-10-14 18:16:13 +08:00
// 修改消息任务状态
rpc updateMessageTaskStatus(UpdateMessageTaskStatusRequest) returns (RPCSuccess);
2021-04-05 20:48:39 +08:00
}
// 创建消息任务
message CreateMessageTaskRequest {
2023-10-12 20:11:34 +08:00
int64 messageRecipientId = 1; // 接收人ID
int64 messageMediaInstanceId = 2; // 媒介实例ID
string user = 3; // 用户标识
string subject = 4; // 标题
string body = 5; // 内容
bool isPrimary = 6; // 是否优先发送
2021-04-05 20:48:39 +08:00
}
message CreateMessageTaskResponse {
2023-10-12 20:11:34 +08:00
int64 messageTaskId = 1; // 消息任务ID
2021-04-05 20:48:39 +08:00
}
// 删除消息任务
message DeleteMessageTaskRequest {
2023-10-14 18:16:13 +08:00
int64 messageTaskId = 1; // 消息任务ID
2021-04-05 20:48:39 +08:00
}
// 读取消息任务状态
message FindEnabledMessageTaskRequest {
2023-10-14 18:16:13 +08:00
int64 messageTaskId = 1; // 消息任务ID
2021-04-05 20:48:39 +08:00
}
message FindEnabledMessageTaskResponse {
2023-10-14 18:16:13 +08:00
MessageTask messageTask = 1; // 消息任务信息
2021-04-05 20:48:39 +08:00
}
// 计算某个状态的消息任务数量
message CountMessageTasksWithStatusRequest {
2023-10-14 18:16:13 +08:00
Status status = 1; // 任务状态
enum Status {
MessageTaskStatusNone = 0;
MessageTaskStatusSending = 1;
MessageTaskStatusSuccess = 2;
MessageTaskStatusFailed = 3;
}
}
// 根据状态列出某页任务
message ListMessageTasksWithStatusRequest {
2023-10-14 18:16:13 +08:00
Status status = 1; // 任务状态
int64 offset = 2;
int64 size = 3;
enum Status {
MessageTaskStatusNone = 0;
MessageTaskStatusSending = 1;
MessageTaskStatusSuccess = 2;
MessageTaskStatusFailed = 3;
}
}
message ListMessageTasksWithStatusResponse {
repeated MessageTask messageTasks = 1;
2023-10-12 20:11:34 +08:00
}
// 发送某个消息任务
// 与创建消息任务放入到后台任务队列不同此API是直接发送
message SendMessageTaskRequest {
int64 messageMediaInstanceId = 1; // 媒介实例ID
string user = 2; // 用户标识
string subject = 3; // 标题
string body = 4; // 内容
}
message SendMessageTaskResponse {
bool isOk = 1; // 是否成功
string error = 2; // 失败时的提示信息
string response = 3; // 发送成功后响应内容
2023-10-14 18:16:13 +08:00
}
// 修改消息任务状态
message UpdateMessageTaskStatusRequest {
int64 messageTaskId = 1; // 消息任务ID
Status status = 2; // 新的状态
enum Status {
MessageTaskStatusNone = 0;
MessageTaskStatusSending = 1;
MessageTaskStatusSuccess = 2;
MessageTaskStatusFailed = 3;
}
}