async fn message(&self, ctx: Context, message: Message) {
    let chan_name = get_channel_name(&message.channel_id, &ctx).await;
    info!(
      "[{}]({}) > {} says: {}",
      message.timestamp, chan_name, message.author.name, message.content
    );

    database_update((&message).into(), false);
    archive_activity(&ctx, &message).await;
    if message.is_own(&ctx).await || message.content.is_empty() {
      return;
    };
    process_message(ctx, message).await;
  }
/// Set a handler for the `message` event - so that whenever a new message
/// is received - the closure (or function) passed will be called.
///
/// Event handlers are dispatched through a threadpool, and so multiple
/// events can be dispatched simultaneously.
Set a handler for the `message` event - so that whenever a new message
is received - the closure (or function) passed will be called.

Event handlers are dispatched through a threadpool, and so multiple
events can be dispatched simultaneously.
Set a handler for the ` message ` event - so that whenever a new message is received - the closure ( or function ) passed will be called . Event handlers are dispatched through a threadpool and so multiple events can be dispatched simultaneously .
async fn message(&self, ctx: Context, message: Message) {
    let chan_name = get_channel_name(&message.channel_id, &ctx).await;
    info!(
      "[{}]({}) > {} says: {}",
      message.timestamp, chan_name, message.author.name, message.content
    );
    database_update((&message).into(), false);
    archive_activity(&ctx, &message).await;
    if message.is_own(&ctx).await || message.content.is_empty() {
      return;
    };
    process_message(ctx, message).await;
  }
async fn message ( & self , ctx : Context , message : Message ) { let chan_name = get_channel_name ( & message . channel_id , & ctx ) . await ; info ! ( " " message timestamp chan_name message author name message content ) ; database_update ( ( & message ) . into ( ) , false ) ; archive_activity ( & ctx , & message ) . await ; if message . is_own ( & ctx ) . await || message . content . is_empty ( ) { return ; } ; process_message ( ctx , message ) . await ; }
Set a handler for the `message` event - so that whenever a new message
is received - the closure (or function) passed will be called.
Set a handler for the ` message ` event - so that whenever a new message is received - the closure ( or function ) passed will be called .
&self
ctx
Context
message
Message
&self
ctx
Context
message
Message