1
0
mirror of https://gitlab.com/comunic/comunicapiv3 synced 2025-06-20 16:35:17 +00:00

Can get older conversation messages

This commit is contained in:
2020-06-22 14:16:52 +02:00
parent dc323936d6
commit f8934d4e0a
3 changed files with 40 additions and 1 deletions

View File

@ -12,9 +12,9 @@ use crate::api_data::res_find_private_conversations::ResFindPrivateConversations
use crate::controllers::routes::RequestResult;
use crate::data::http_request_handler::HttpRequestHandler;
use crate::data::new_conversation::NewConversation;
use crate::data::new_conversation_message::NewConversationMessage;
use crate::helpers::{conversations_helper, user_helper};
use crate::utils::string_utils::remove_html_nodes;
use crate::data::new_conversation_message::NewConversationMessage;
/// Create a new conversation
pub fn create(r: &mut HttpRequestHandler) -> RequestResult {
@ -232,6 +232,24 @@ pub fn refresh_single(r: &mut HttpRequestHandler) -> RequestResult {
r.set_response(ConversationMessageAPI::for_list(&messages))
}
/// Get older messages of a conversation
pub fn get_older_messages(r: &mut HttpRequestHandler) -> RequestResult {
let conv_id = r.post_conv_id("conversationID")?;
let max_id = r.post_u64("oldest_message_id")? - 1;
// Determine limit
let limit = r.post_u64("limit")?;
let limit = match limit {
0 => 1,
1..=60 => limit,
_ => 60
};
let messages = conversations_helper::get_older_messages(conv_id, max_id, limit)?;
r.set_response(ConversationMessageAPI::for_list(&messages))
}
/// Send a new message
pub fn send_message(r: &mut HttpRequestHandler) -> RequestResult {
let conv_id = r.post_conv_id("conversationID")?;

View File

@ -104,6 +104,8 @@ pub fn get_routes() -> Vec<Route> {
Route::post("/conversations/refresh_single", Box::new(conversations_controller::refresh_single)),
Route::post("/conversations/get_older_messages", Box::new(conversations_controller::get_older_messages)),
Route::post("/conversations/sendMessage", Box::new(conversations_controller::send_message)),