block function will be applied when there is no call id retrieved. It should generate a string to be used as call id or
null if it is impossible to generate call id for some reason. Note that it should conform to call id verification otherwise it may be discarded or may lead to complete call rejection
Verify retrieved or generated call ids using the specified predicate. Should return
true for valid call ids,
false to ignore an illegal retrieved or generated call id or throw an RejectedCallIdException to reject an ApplicationCall. Only one verify condition could be specified. It is not recommended to disable verification (allow all call id values) as it could be abused so that it may become a security risk. By default there is always the default verifier against CALL_ID_DEFAULT_DICTIONARY so all illegal call ids will be discarded.
Generates fixed length call ids using the specified dictionary. Please note that this function generates pseudo-random identifiers via regular java.util.Random and should not be considered as cryptographically secure. Also note that you should use the same dictionary for CallIdVerifier otherwise a generated call id could be discarded or may lead to complete call rejection.