~singpolyma/cheogram-smtp

jabber:iq:gateway working against my local Gajim
vcard-temp for the gateway

Includes needed license information.
Add install instructions to README
We need newer purebred-email
Get artifacts from CI
Fix namespaces on attributes

It turns out that attributes should normally *not* have explicit namespaces.
This is because the XML spec says that an attribute with no namespace is
implicity namespaced by the element it is on (to a pseudo namespace partition).

I think this was only ever working because the XML text generator in the XMPP
library is primitive and wasn't adding prefixes.
Use localpart as fallback display name

Using bare JID is nice, but is detected by many SPAM filters as an attempt to
spoof an email address.
Update to latest purebred-email master, make tests pass
Add discovery identity response
Return XMPP error when sendmail fails. Allow using a custom sendmail script
Set JID from on vCard request
Actually send the IQ with the defaulted id

Instead of just writing it down and then sending with no id...
VCard requset should go to bare JID

Otherwise it is routed to the actual client, which has no idea.
Fetch vcard4 when sending message and use it for name and X-URL headers
Add a lens to get at the email message in an envelope
Run each route handle in new thread

So the handler can block or be slow without hosing processing of
incoming stanzas.
Generate IDs for IQs before sending
Reconstruct References from In-Reply-To if the former is missing
Return XMPP error when message cannot be sent as email

Special case to give nicer error when it's because the JID does not map
to a valid email address. Or else generic error.

This commit also (ugh, also) changes our sendmail call to set recipients
on command line instead of taking them from the headers, which doesn't
change anythnig now really but means we can safely set other headers
later.
Strip off "[Re: ]Chat: " subject lines from deltachat-style messengers
Next