protocols/ircv3/purpleircv3core.h

Mon, 02 Dec 2024 20:53:56 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Mon, 02 Dec 2024 20:53:56 -0600
changeset 43097
757575456cc2
parent 43028
dda093fe275e
permissions
-rw-r--r--

IRCv3: Implement the query command

Testing Done:
Used `/query pidgin2` from a status window and verified it opened a conversation that worked to message `pidgin2` by sending messages in the new window. Also used the status window to send `/query pidgin2 hiya!` and verified that the conversation was created and the message was sent to `pidgin2` and that additional messages could be sent from both sides.

I also used `/query #pidgin testing against a channel` when I was already in `#pidgin` and verified the message was sent. When using a channel that doesn't exist, the conversation gets created but doesn't work. We should handle this better at some point when we have labelled responses as right now we can't detect the error.

Finally, called in the turtles.

Reviewed at https://reviews.imfreedom.org/r/3687/

/*
 * Purple - Internet Messaging Library
 * Copyright (C) Pidgin Developers <devel@pidgin.im>
 *
 * Purple is the legal property of its developers, whose names are too numerous
 * to list here.  Please refer to the COPYRIGHT file distributed with this
 * source distribution.
 *
 * This library is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this library; if not, see <https://www.gnu.org/licenses/>.
 */

#if !defined(PURPLE_IRCV3_GLOBAL_HEADER_INSIDE) && \
    !defined(PURPLE_IRCV3_COMPILATION)
# error "only <libpurple/protocols/ircv3.h> may be included directly"
#endif

#ifndef PURPLE_IRCV3_CORE_H
#define PURPLE_IRCV3_CORE_H

#include <glib.h>

#define PURPLE_IRCV3_DEFAULT_SERVER "irc.libera.chat"
#define PURPLE_IRCV3_DEFAULT_PLAIN_PORT 6667
#define PURPLE_IRCV3_DEFAULT_TLS_PORT 6697

#define PURPLE_IRCV3_ICON_NAME "im-ircv3"
#define PURPLE_IRCV3_PROTOCOL_ID "prpl-ircv3"

#define PURPLE_IRCV3_DOMAIN (g_quark_from_static_string("ircv3-plugin"))

#endif /* PURPLE_IRCV3_CORE_H */

mercurial