Skip to content

DefaultMessageConverter

This docs was updated at: 2026-02-23

com.paragon.messaging.conversion.DefaultMessageConverter  ยท  Class

Implements MessageConverter


Default implementation of MessageConverter.

Provides straightforward conversion between WhatsApp message types and the framework's UserMessage/AssistantMessage types for AI context.

Conversion Behavior

  • Text messages: Body text extracted directly
  • Media messages: Caption if present, otherwise type placeholder (e.g., "[Image]", "[Video: my_file.mp4]")
  • Interactive messages: Button or list selection text
  • Location messages: Coordinates description
  • System/Order messages: Type placeholders

Usage Example

MessageConverter converter = DefaultMessageConverter.create();
// Single message conversion
InboundMessage inbound = ...;
UserMessage user = converter.toUserMessage(inbound);
// Batch conversion (combines into single message)
List batch = ...;
UserMessage combined = converter.toUserMessage(batch);
// With custom message separator
MessageConverter custom = DefaultMessageConverter.builder()
    .batchSeparator(" | ")
    .build();

See Also

  • MessageConverter

Since: 2.1

Methods

create

public static DefaultMessageConverter create()

Creates a new DefaultMessageConverter with default settings.

Uses newline as the batch separator when combining multiple messages.

Returns

a new converter instance


builder

public static Builder builder()

Creates a builder for customizing the converter.

Returns

a new builder


batchSeparator

public Builder batchSeparator(@NonNull String separator)

Sets the separator used when combining multiple messages into one.

Default is newline ("\n").

Parameters

Name Description
separator the batch separator

Returns

this builder


build

public DefaultMessageConverter build()

Builds the configured DefaultMessageConverter.

Returns

the converter instance