View Source ExRocketmq.Consumer.Processor behaviour (lib_oss v0.1.0)

The processor is called when messages are received from the broker.

Summary

Types

rocketmq provide 18 delay_level: 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h delay_level=1 means 1s, delay_level=2 means 5s and so on.

t()

Types

Link to this type

concurrent_consume_result()

View Source
@type concurrent_consume_result() ::
  :success
  | {:retry_later,
     %{
       required(ExRocketmq.Typespecs.msg_id()) =>
         ExRocketmq.Typespecs.delay_level()
     }}

rocketmq provide 18 delay_level: 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h delay_level=1 means 1s, delay_level=2 means 5s and so on.

@type consume_result() :: concurrent_consume_result() | orderly_consume_result()
Link to this type

orderly_consume_result()

View Source
@type orderly_consume_result() ::
  :success | {:suspend, non_neg_integer(), [ExRocketmq.Typespecs.msg_id()]}
@type t() :: struct()

Callbacks

Link to this callback

process(processort, topic, msgs)

View Source
@callback process(
  processort :: t(),
  topic :: ExRocketmq.Typespecs.topic(),
  msgs :: [ExRocketmq.Models.MessageExt.t()]
) :: consume_result() | {:error, term()}

Functions