首页 | 数据结构 | 文件列表 | 数据字段 | 全局定义

qq.c文件参考

#include "internal.h"
#include "debug.h"
#include "notify.h"
#include "prefs.h"
#include "request.h"
#include "accountopt.h"
#include "prpl.h"
#include "gtkroomlist.h"
#include "gtklog.h"
#include "server.h"
#include "utils.h"
#include "buddy_info.h"
#include "buddy_opt.h"
#include "buddy_status.h"
#include "char_conv.h"
#include "group_find.h"
#include "group_im.h"
#include "group_info.h"
#include "group_join.h"
#include "group_opt.h"
#include "group.h"
#include "header_info.h"
#include "im.h"
#include "infodlg.h"
#include "keep_alive.h"
#include "ip_location.h"
#include "login_logout.h"
#include "qq_proxy.h"
#include "send_core.h"
#include "qq.h"
#include "send_file.h"
#include "version.h"

qq.c包含/依赖关系图:

浏览该文件的源代码。

宏定义

#define OPENQ_VER   VERSION
#define OPENQ_AUTHOR   "Puzzlebird"
#define OPENQ_WEBSITE   "http://openq.linuxsir.org"
#define QQ_TCP_QUERY_PORT   "8000"
#define QQ_UDP_PORT   "8000"

函数

void _qq_login (GaimAccount *account)
void _qq_close (GaimConnection *gc)
const gchar * _qq_list_icon (GaimAccount *a, GaimBuddy *b)
gchar * _qq_status_text (GaimBuddy *b)
gchar * _qq_tooltip_text (GaimBuddy *b)
void _qq_list_emblems (GaimBuddy *b, char **se, char **sw, char **nw, char **ne)
GList * _qq_away_states (GaimConnection *gc)
void _qq_set_away (GaimConnection *gc, const char *state, const char *msg)
gint _qq_send_im (GaimConnection *gc, const gchar *who, const gchar *message, GaimConvImFlags flags)
gint _qq_chat_send (GaimConnection *gc, gint channel, const gchar *message)
void _qq_get_info (GaimConnection *gc, const gchar *who)
void _qq_menu_get_my_info (GaimPluginAction *action)
void _qq_menu_block_buddy (GaimBlistNode *node, gpointer param_who)
void _qq_menu_show_login_info (GaimPluginAction *action)
void _qq_menu_show_about (GaimPluginAction *action)
void _qq_menu_any_cmd_send_cb (GaimConnection *gc, GaimRequestFields *fields)
void _qq_menu_any_cmd (GaimPluginAction *action)
void _qq_menu_search_or_add_permanent_group (GaimPluginAction *action)
void _qq_menu_create_permanent_group (GaimPluginAction *action)
void _qq_menu_unsubscribe_group (GaimBlistNode *node, gpointer param_components)
void _qq_menu_manage_group (GaimBlistNode *node, gpointer param_components)
void _qq_menu_show_system_message (GaimPluginAction *action)
void _qq_menu_send_file (GaimBlistNode *node, gpointer ignored)
GList * _qq_actions (GaimPlugin *plugin, gpointer context)
GList * _qq_buddy_menu (GaimBlistNode *node)
GList * _qq_chat_menu (GaimConnection *gc, GHashTable *components)
void _qq_keep_alive (GaimConnection *gc)
void _qq_get_chat_buddy_info (GaimConnection *gc, gint channel, const gchar *who)
gchar * _qq_get_chat_buddy_real_name (GaimConnection *gc, gint channel, const gchar *who)
void qq_function_not_implemented (GaimConnection *gc)
GaimPluginPrefFrame * get_plugin_pref_frame (GaimPlugin *plugin)
void init_plugin (GaimPlugin *plugin)
 GAIM_INIT_PLUGIN (qq, init_plugin, info)

变量

const gchar * udp_server_list []
const gint udp_server_amount = (sizeof(udp_server_list) / sizeof(udp_server_list[0]))
const gchar * tcp_server_list []
const gint tcp_server_amount = (sizeof(tcp_server_list) / sizeof(tcp_server_list[0]))
GaimPlugin * my_protocol = NULL
static GaimPluginProtocolInfo prpl_info
static GaimPluginUiInfo prefs_info
static GaimPluginInfo info


详细描述

The QQ2003C protocol plugin

gaim

Copyright (C) 2004 Puzzlebird

This program 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 program 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

在文件qq.c中定义。


宏定义文档

#define OPENQ_AUTHOR   "Puzzlebird"
 

在文件qq.c63行定义。

参考自 _qq_menu_show_about().

#define OPENQ_VER   VERSION
 

在文件qq.c62行定义。

参考自 _qq_menu_show_about().

#define OPENQ_WEBSITE   "http://openq.linuxsir.org"
 

在文件qq.c64行定义。

#define QQ_TCP_QUERY_PORT   "8000"
 

在文件qq.c65行定义。

参考自 _qq_login().

#define QQ_UDP_PORT   "8000"
 

在文件qq.c66行定义。

参考自 _qq_login().


函数文档

GList* _qq_actions GaimPlugin *  plugin,
gpointer  context
 

在文件qq.c651行定义。

参考 _qq_menu_any_cmd()_qq_menu_create_permanent_group()_qq_menu_get_my_info()_qq_menu_search_or_add_permanent_group()_qq_menu_show_about()_qq_menu_show_login_info()_qq_menu_show_system_message().

函数调用图:

GList* _qq_away_states GaimConnection *  gc  ) 
 

在文件qq.c253行定义。

GList* _qq_buddy_menu GaimBlistNode *  node  ) 
 

在文件qq.c682行定义。

参考 _qq_menu_block_buddy()_qq_menu_send_file().

函数调用图:

GList* _qq_chat_menu GaimConnection *  gc,
GHashTable *  components
 

在文件qq.c699行定义。

参考 _qq_menu_manage_group()_qq_menu_unsubscribe_group().

函数调用图:

gint _qq_chat_send GaimConnection *  gc,
gint  channel,
const gchar *  message
 

在文件qq.c336行定义。

参考 gaim_smiley_to_qq()QQ_CHARSET_DEFAULTqq_group_find_by_channel()QQ_MSG_IM_MAXqq_send_packet_group_im()utf8_to_qq().

函数调用图:

void _qq_close GaimConnection *  gc  ) 
 

在文件qq.c134行定义。

参考 qq_disconnect().

函数调用图:

void _qq_get_chat_buddy_info GaimConnection *  gc,
gint  channel,
const gchar *  who
 

在文件qq.c739行定义。

参考 _qq_get_info()qq_group_find_member_by_channel_and_nickname().

函数调用图:

gchar* _qq_get_chat_buddy_real_name GaimConnection *  gc,
gint  channel,
const gchar *  who
 

在文件qq.c752行定义。

参考 qq_group_find_member_by_channel_and_nickname().

函数调用图:

void _qq_get_info GaimConnection *  gc,
const gchar *  who
 

在文件qq.c357行定义。

参考 gaim_name_to_uid()qq_send_packet_get_info().

参考自 _qq_get_chat_buddy_info()_qq_menu_get_my_info().

函数调用图:

void _qq_keep_alive GaimConnection *  gc  ) 
 

在文件qq.c714行定义。

参考 _qq_data::groups_qq_group::my_statusQQ_GROUP_MEMBER_STATUS_IS_ADMINQQ_GROUP_MEMBER_STATUS_IS_MEMBERqq_send_cmd_group_get_group_info()qq_send_packet_keep_alive().

函数调用图:

void _qq_list_emblems GaimBuddy *  b,
char **  se,
char **  sw,
char **  nw,
char **  ne
 

在文件qq.c247行定义。

const gchar* _qq_list_icon GaimAccount *  a,
GaimBuddy *  b
 

在文件qq.c141行定义。

参考 get_icon_name()get_suffix_from_status()_qq_buddy::icon_qq_buddy::status.

函数调用图:

void _qq_login GaimAccount *  account  ) 
 

在文件qq.c91行定义。

参考 _qq_data::login_modeqq_connect()QQ_CONNECT_STEPSQQ_LOGIN_MODE_HIDDENQQ_LOGIN_MODE_NORMALQQ_TCP_QUERY_PORTQQ_UDP_PORTtcp_server_amounttcp_server_listudp_server_amountudp_server_list_qq_data::use_tcp.

函数调用图:

void _qq_menu_any_cmd GaimPluginAction *  action  ) 
 

在文件qq.c549行定义。

参考 _qq_menu_any_cmd_send_cb().

参考自 _qq_actions().

函数调用图:

void _qq_menu_any_cmd_send_cb GaimConnection *  gc,
GaimRequestFields *  fields
 

在文件qq.c492行定义。

参考 hex_dump_to_str()qq_get_cmd_desc()qq_send_cmd()split_data().

参考自 _qq_menu_any_cmd().

函数调用图:

void _qq_menu_block_buddy GaimBlistNode *  node,
gpointer  param_who
 

在文件qq.c388行定义。

参考 gaim_name_to_uid()_gc_and_uid::gcqq_block_buddy_with_gc_and_uid()qq_do_nothing_with_gc_and_uid()_gc_and_uid::uid.

参考自 _qq_buddy_menu().

函数调用图:

void _qq_menu_create_permanent_group GaimPluginAction *  action  ) 
 

在文件qq.c586行定义。

参考 qq_group_create_with_name().

参考自 _qq_actions().

函数调用图:

void _qq_menu_get_my_info GaimPluginAction *  action  ) 
 

在文件qq.c376行定义。

参考 _qq_get_info()_qq_data::uiduid_to_gaim_name().

参考自 _qq_actions().

函数调用图:

void _qq_menu_manage_group GaimBlistNode *  node,
gpointer  param_components
 

在文件qq.c612行定义。

参考 qq_group_manage_group().

参考自 _qq_chat_menu().

函数调用图:

void _qq_menu_search_or_add_permanent_group GaimPluginAction *  action  ) 
 

在文件qq.c581行定义。

参考自 _qq_actions().

void _qq_menu_send_file GaimBlistNode *  node,
gpointer  ignored
 

在文件qq.c634行定义。

参考 qq_send_file().

参考自 _qq_buddy_menu().

函数调用图:

void _qq_menu_show_about GaimPluginAction *  action  ) 
 

在文件qq.c453行定义。

参考 infoOPENQ_AUTHOROPENQ_VER.

参考自 _qq_actions().

void _qq_menu_show_login_info GaimPluginAction *  action  ) 
 

在文件qq.c418行定义。

参考 _qq_data::all_onlineinfo_qq_data::last_get_online_qq_data::last_login_ip_qq_data::last_login_time_qq_data::login_time_qq_data::my_ip_qq_data::server_ip_qq_data::server_port_qq_data::use_tcp.

参考自 _qq_actions().

void _qq_menu_show_system_message GaimPluginAction *  action  ) 
 

在文件qq.c627行定义。

参考自 _qq_actions().

void _qq_menu_unsubscribe_group GaimBlistNode *  node,
gpointer  param_components
 

在文件qq.c597行定义。

参考 qq_group_exit().

参考自 _qq_chat_menu().

函数调用图:

gint _qq_send_im GaimConnection *  gc,
const gchar *  who,
const gchar *  message,
GaimConvImFlags  flags
 

在文件qq.c307行定义。

参考 gaim_name_to_uid()gaim_smiley_to_qq()QQ_CHARSET_DEFAULTQQ_IM_AUTO_REPLYQQ_IM_TEXTQQ_MSG_IM_MAXqq_send_packet_im()_qq_data::uidutf8_to_qq().

函数调用图:

void _qq_set_away GaimConnection *  gc,
const char *  state,
const char *  msg
 

在文件qq.c269行定义。

参考 QQ_SELF_STATUS_AVAILABLEQQ_SELF_STATUS_AWAYQQ_SELF_STATUS_CUSTOMQQ_SELF_STATUS_IDLEQQ_SELF_STATUS_INVISIBLEqq_send_packet_change_status()_qq_data::status.

函数调用图:

gchar* _qq_status_text GaimBuddy *  b  ) 
 

在文件qq.c159行定义。

参考 _qq_buddy::age_qq_buddy::comm_flag_qq_buddy::genderQQ_BUDDY_GENDER_GGQQ_BUDDY_GENDER_MMQQ_BUDDY_GENDER_UNKNOWNQQ_COMM_FLAG_VIDEO.

gchar* _qq_tooltip_text GaimBuddy *  b  ) 
 

在文件qq.c208行定义。

参考 _qq_buddy::comm_flaggen_ip_str()_qq_buddy::ipis_online()QQ_CHARSET_DEFAULTQQ_COMM_FLAG_TCP_MODEqq_ip_get_location()qq_to_utf8()_qq_buddy::status.

函数调用图:

GAIM_INIT_PLUGIN qq  ,
init_plugin  ,
info 
 

GaimPluginPrefFrame* get_plugin_pref_frame GaimPlugin *  plugin  ) 
 

在文件qq.c764行定义。

void init_plugin GaimPlugin *  plugin  ) 
 

在文件qq.c903行定义。

参考 my_protocolprpl_info.

void qq_function_not_implemented GaimConnection *  gc  ) 
 

在文件qq.c759行定义。


变量文档

GaimPluginInfo info [static]
 

初始化序列:

 {
        GAIM_PLUGIN_MAGIC,
        GAIM_MAJOR_VERSION,
        GAIM_MINOR_VERSION,
        GAIM_PLUGIN_PROTOCOL,           
        NULL,                           
        0,                              
        NULL,                           
        GAIM_PRIORITY_DEFAULT,          

        "prpl-qq",                      
        "QQ",                           
        OPENQ_VER,                      
                                        
        N_("QQ Protocol Plugin"),
                                        
        N_("QQ Protocol Plugin"),
        OPENQ_AUTHOR,                   
        OPENQ_WEBSITE,                  

        NULL,                           
        NULL,                           
        NULL,                           

        NULL,                           
        &prpl_info,                     
        &prefs_info,                    
        _qq_actions
}

在文件qq.c872行定义。

参考自 _create_page_basic()_create_page_contact()_create_page_details()_create_page_security()_info_window_change()_qq_create_packet_file_header()_qq_menu_show_about()_qq_menu_show_login_info()_qq_send_packet_file_accept()_qq_send_packet_file_notifyip()_qq_send_packet_file_request()_qq_udp_proxy_connect()_qq_xfer_end()_qq_xfer_init_socket()_qq_xfer_recv_init()_qq_xfer_recv_packet()_qq_xfer_send_notify_ip_ack()_qq_xfer_send_start()_qq_xfer_udp_recv()_qq_xfer_udp_send()qq_contact_info_window_free()qq_process_get_info_reply()qq_process_recv_file_accept()qq_process_recv_file_notify()qq_process_recv_file_request()qq_refresh_contact_info_dialog().

GaimPlugin* my_protocol = NULL
 

在文件qq.c806行定义。

参考自 init_plugin().

GaimPluginUiInfo prefs_info [static]
 

初始化序列:

在文件qq.c868行定义。

GaimPluginProtocolInfo prpl_info [static]
 

在文件qq.c807行定义。

参考自 init_plugin().

const gint tcp_server_amount = (sizeof(tcp_server_list) / sizeof(tcp_server_list[0]))
 

在文件qq.c89行定义。

参考自 _qq_login().

const gchar* tcp_server_list[]
 

初始化序列:

 {
        "tcpconn.tencent.com",  
        "tcpconn2.tencent.com", 
        "tcpconn3.tencent.com", 
        "tcpconn4.tencent.com", 
}

在文件qq.c83行定义。

参考自 _qq_login().

const gint udp_server_amount = (sizeof(udp_server_list) / sizeof(udp_server_list[0]))
 

在文件qq.c80行定义。

参考自 _qq_login().

const gchar* udp_server_list[]
 

初始化序列:

 {
        "sz.tencent.com",       
        "sz2.tencent.com",      
        "sz3.tencent.com",      
        "sz4.tencent.com",      
        "sz5.tencent.com",      
        "sz6.tencent.com",      
        "sz7.tencent.com",      
        "202.96.170.64",
        "64.144.238.155",
        "202.104.129.254"
}

在文件qq.c68行定义。

参考自 _qq_login().


Generated at Mon May 8 15:45:20 2006 for OpenQ by  doxygen 1.4.4