Knowledge base

Message job

entries in this theme: 73
Driving a modern MTA from a mailer that only speaks SMTPcriticalWritten by the HubmechanismTwenty-two headers turn an ordinary SMTP submission into a fully specified job, and the engine removes them before the message goes out.The message as the last wordcriticalWritten by the HubmechanismTen of the twenty-four properties override something the node has already decided — so the job is the fourth and final configuration layer.Why the result object decides what analytics can saycriticalmechanismThe result is the job plus the attempt history — which means our analytics are limited by what we put into the job, not only by what the engine reports.Where it stopped versus why it failedcriticalmechanismMailerQ classifies by stage, PowerMTA by cause, and Hub's analytics speak the second — so the states must be mapped before a MailerQ node can appear in the same charts.(custom properties)criticalWritten by the Hubmessage propertyProperties MailerQ does not recognise are carried through untouched and returned in the result.envelopecriticalWritten by the Hubmessage propertyThe return address used in MAIL FROM — where bounces and delivery notifications arrive, and what receivers check against SPF.ipscriticalWritten by the Hubmessage propertyA list of sending addresses this message is allowed to use, overriding the node's own arrangement.mimecriticalWritten by the Hubmessage propertyThe full message as a MIME string — or, as an object, a specification for Mimify to build one from.recipientcriticalWritten by the Hubmessage propertyThe address the message is delivered to — the only strictly required property.tagscriticalWritten by the Hubmessage propertyFree-form labels that follow a message into statistics, logs, results and every interception mechanism.dkimimportantmessage propertySigning keys carried by the message itself — domain, selector, key and all the signing parameters — instead of being taken from the cluster database.maxattemptsimportantWritten by the Hubmessage propertyHow many attempts this message may consume, overriding the node's limit of a hundred.maxdelivertimeimportantWritten by the Hubmessage propertyThe moment after which this message is abandoned, set from the node's default at acceptance and overridable per message.poolimportantWritten by the Hubmessage propertyThe name of an address pool the message should be sent from.queuesimportantWritten by the Hubmessage propertyResult queue names for this message alone, overriding the node's success and failure.datamessage propertyValues substituted into {$name} placeholders in the subject, the addresses and the body — and the switch that turns substitution on at all.keepmimeWritten by the Hubmessage propertyWhether the full message is included in the result object published after delivery.nextattemptWritten by the Hubmessage propertyDelays the first attempt until a given time.prioritymessage propertyPriority within the sending queue — ignored unless the queue was declared with priority support.retriesWritten by the Hubmessage propertyIntervals between attempts for this message, replacing the node's list.securityWritten by the Hubmessage propertyHow hard to insist on encryption for this message: optional, opportunistic, required or verified.dsnmessage propertyWhich events produce a notification for this message, how much of it is returned, and the identifiers to quote.forcemessage propertyProceed with delivery even when conversion or validation produced errors.headersmessage propertyInstructions to remove, prepend, append, replace or update headers of the message.inlinecssmessage propertyConverts stylesheet rules into inline style attributes before sending.keymessage propertyIdentifier of a body held in the external message store, used instead of an inline mime.smarthostmessage propertyHands this message to a named server instead of the recipient's own.(custom properties)criticalresult propertyProperties the job carried that MailerQ does not recognise come back untouched.descriptioncriticalresult propertyThe receiving server's response in its own words.fatalcriticalresult propertyWhether this outcome ends the message or leaves it to be retried.fromcriticalresult propertyThe local address the attempt was made from.individualcriticalresult propertyWhether the failure concerns this message alone or everything going to that destination.recipientcriticalresult propertyThe recipient address of the delivery.resultcriticalresult propertyOne of five outcomes — accepted, error, invalid, lost, timeout — the second half of the classification.resultscriticalresult propertyThe array of attempts, each with its own state, outcome, codes, addresses and timing — the heart of the result.statecriticalresult propertyThe stage of the delivery at which this attempt finished — the first half of MailerQ's failure classification.tagscriticalresult propertyThe labels the message carried, returned unchanged.codeimportantresult propertyThe numeric code the receiving server returned.greylistedimportantresult propertyWhether the receiver asked us to come back later rather than refusing.statusimportantresult propertyThe three-part extended status, more specific than the numeric code.timeimportantresult propertyThe moment this attempt produced its outcome.toimportantresult propertyThe address of the receiving server the attempt talked to.enveloperesult propertyThe envelope address the message was sent with.extractedresult propertyParsed pieces of the message — subject, from, to, and the header map.httpresult propertyFor messages injected over REST: which token submitted them and from which address.maxdelivertimeresult propertyThe moment the message would have been abandoned, as it stood for this message.message-idresult propertyMailerQ's own identifier for the message, generated when the message has none.strangeresult propertyThe engine's marker for behaviour it could not classify.certificateresult propertyDetails of the certificate presented by the receiving server, alongside the cipher used.keepmimeresult propertyFlag showing whether the result carries the full message.sentresult propertyHow many bytes went over the connection and how many were message content.x-mq-ipcriticalemail headerNames an address the message may be sent from; repeat the header to offer several.x-mq-tagcriticalemail headerAttaches a label; repeat the header for several.x-mq-envelopeimportantemail headerSets the envelope address, overriding what the message headers imply.x-mq-maxdelivertimeimportantemail headerSets the moment after which this message is abandoned.x-mq-poolimportantemail headerNames the pool the message should be sent from.x-mq-results-queueimportantemail headerDirects this message's results to a named queue instead of the node's own.x-mq-delayedemail headerHolds the message until the given time before the first attempt.x-mq-failure-queueemail headerDirects failed results for this message to a named queue.x-mq-maxattemptsemail headerLimits how many attempts this message may consume.x-mq-retriesemail headerComma-separated intervals between attempts for this message.x-mq-retry-queueemail headerDirects notices about rescheduled attempts for this message to a named queue.x-mq-success-queueemail headerDirects successful results for this message to a named queue.x-mq-dsn-envidemail headerAn identifier quoted back in any notification about this message.x-mq-dsn-notifyemail headerWhich events produce a delivery notification for this message — never, on failure, on success, on delay.x-mq-dsn-orcptemail headerThe recipient address to quote in a notification, when it differs from the delivery address.x-mq-dsn-retemail headerWhether a notification carries the whole message or only its headers.x-mq-inlinecssemail headerMoves CSS rules into style attributes before sending.x-mq-keepmimeemail headerIncludes the full message in the published result.x-mq-smarthost-hostnameemail headerHands this message to the named server instead of the recipient's own.x-mq-smarthost-passwordemail headerPassword offered to the named smarthost.x-mq-smarthost-portemail headerPort used when connecting to the named smarthost.x-mq-smarthost-usernameemail headerUsername offered to the named smarthost.