mirror of
https://forge.fsky.io/lda/Parsee.git
synced 2026-03-13 18:25:10 +00:00
[ADD/WIP] Parsee IDs, -v flag
This commit is contained in:
parent
a8f1031a79
commit
aa9b68e02d
7 changed files with 56 additions and 13 deletions
|
|
@ -247,6 +247,7 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
|
|||
char *sender = NULL;
|
||||
char *unedited_id = MatrixGetEdit(event);
|
||||
char *url = GrabString(event, 2, "content", "url");
|
||||
char *encoded_from = NULL;
|
||||
|
||||
bool direct = false;
|
||||
|
||||
|
|
@ -284,9 +285,13 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
|
|||
type = direct ? "chat" : "groupchat";
|
||||
user = GrabString(json, 1, "xmpp_user");
|
||||
unauth = ParseeToUnauth(data, url);
|
||||
|
||||
encoded_from = ParseeEncodeMXID(m_sender);
|
||||
xmppified_user = StrConcat(3,
|
||||
encoded_from, "@", jabber->host
|
||||
);
|
||||
if (direct)
|
||||
{
|
||||
xmppified_user = ParseeEncodeMXID(m_sender);
|
||||
to = StrDuplicate(user);
|
||||
|
||||
Free(chat_id);
|
||||
|
|
@ -300,7 +305,6 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
|
|||
{
|
||||
goto end;
|
||||
}
|
||||
xmppified_user = ParseeEncodeMXID(m_sender);
|
||||
|
||||
/* TODO: Check the name's validity.
|
||||
* Is there a good way to check for that that isn't
|
||||
|
|
@ -308,7 +312,7 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
|
|||
name = ASGetName(data->config, id, m_sender);
|
||||
rev = StrConcat(4, muc_id, "/", name, "[p]");
|
||||
|
||||
XMPPJoinMUC(jabber, xmppified_user, rev);
|
||||
XMPPJoinMUC(jabber, encoded_from, rev);
|
||||
|
||||
to = muc_id;
|
||||
|
||||
|
|
@ -342,7 +346,7 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
|
|||
char *xmpp_ident = StrRandom(32);
|
||||
builder = CreateStanzaBuilder(xmppified_user, to, xmpp_ident);
|
||||
SetStanzaType(builder, type);
|
||||
SetStanzaBody(builder, xepd ? xepd : body);
|
||||
SetStanzaBody(builder, unauth ? unauth : (xepd ? xepd : body));
|
||||
SetStanzaReply(builder, stanza, sender);
|
||||
SetStanzaLink(builder, unauth);
|
||||
SetStanzaEdit(builder, origin_id);
|
||||
|
|
@ -372,6 +376,7 @@ end:
|
|||
Free(sender);
|
||||
Free(unauth);
|
||||
Free(unedited_id);
|
||||
Free(encoded_from);
|
||||
|
||||
DbUnlock(data->db, ref);
|
||||
ref = NULL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue