hash_algo() :: atom()
identity_function() :: {:property, atom()} | :message_id | {:payload_hash, hash_algo()} | :payload_hash | :payload | :callback