消息发布

代码方式

消息发布需要使用MQ mq = new MQ(用户id, 用户认证token);进行处理,设定消息发布者id及token,调用mq. sendMsg方法,传参为消息体(字符串)、主题id(数值型),返回值为int类型。

返回值说明:

1)若用户未订阅过该主题或用户未订阅过任何主题,sendMsg将返回2;

2)若用户类型为消费者/订阅者(utype=1)时,sendMsg将返回3;(消费者/订阅者无权发布消息);

3)当sendMsg返回1时,表示消息发布成功。

内存存储运行逻辑:

1)根据用户id获取用户消息队列(queue_uid),获取最先插入队列的消息id并获取该消息内容(msg_msgid);

2)获取消息成功后,更新用户消息队列(queue_uid),将该消息id从消息队列中移除。若移除后消息队列为空,将删除该消息队列;

3)返回消息体。

持久化(MySQL)存储运行逻辑:

1)根据用户id获取用户消息队列(bq_msg_user表),获取最先插入队列的消息id并获取该消息内容(bq_msg表);

2)获取消息成功后,更新用户消息队列(bq_msg_user表msgids字段),将该消息id从消息队列中移除;

3)返回消息体。

接口方式

调用低代码平台接口:api/MqController/sendMsg。

传参
actype 10(接口调用固定参数)
uid 用户id
token 认证token
msg 消息
tpcid 订阅主题id
接口地址
api/MqController/sendMsg
返回参数
code Code码(1:成功;2:该用户未订阅任何主题或订阅的主题未包含该主题;3:该用户为消费者,无权发布消息)
msg 消息
数据格式
{
    "code": 1,
    "msg": "发布成功"
}
本文档来自—microbee-http 丨 软件开发框架平台