Mercurial > pidgin.yaz
comparison libpurple/protocols/qq/qq.c @ 23757:69c218fd5d54
applied changes from 5688199e261449d33b5803dafff50d860896ebcb
through 5316525f53e27f838d18a6a08b82c7d55f674591
Reapplied 5316525f53e27f838d18a6a08b82c7d55f674591
2008.09.11 - csyfek <csyfek(at)gmail.com>
* Commit to Pidgin
2008.09.05 - ccpaging <ccpaging(at)gmail.com>
* Filter chars 0x01-0x20 in nickname
2008.09.05 - ccpaging <ccpaging(at)gmail.com>
* Fixed compilation even pidgin-udp-patch not applied
* Place and analysis 'before login packet' after login. packages will be updated slowly and server may send
lots of 'server command packet', while 'before login packet' is placed after 'finished update'
committer: Daniel Atallah <daniel.atallah@gmail.com>
author | SHiNE CsyFeK <csyfek@gmail.com> |
---|---|
date | Mon, 15 Sep 2008 03:03:11 +0000 |
parents | 1a0caf9983fa |
children | bcfc98c7a55f |
comparison
equal
deleted
inserted
replaced
23756:1a0caf9983fa | 23757:69c218fd5d54 |
---|---|
155 purple_debug_info("QQ", "Server list has %d\n", g_list_length(qd->servers)); | 155 purple_debug_info("QQ", "Server list has %d\n", g_list_length(qd->servers)); |
156 | 156 |
157 qd->is_show_notice = purple_account_get_bool(account, "show_notice", TRUE); | 157 qd->is_show_notice = purple_account_get_bool(account, "show_notice", TRUE); |
158 qd->is_show_news = purple_account_get_bool(account, "show_news", TRUE); | 158 qd->is_show_news = purple_account_get_bool(account, "show_news", TRUE); |
159 | 159 |
160 qd->itv_config.resend = purple_account_get_int(account, "resend_interval", 10); | 160 qd->resend_times = purple_prefs_get_int("/plugins/prpl/qq/resend_times"); |
161 if (qd->itv_config.resend <= 0) qd->itv_config.resend = 10; | 161 if (qd->resend_times <= 1) qd->itv_config.resend = 4; |
162 | |
163 qd->itv_config.resend = purple_prefs_get_int("/plugins/prpl/qq/resend_interval"); | |
164 if (qd->itv_config.resend <= 0) qd->itv_config.resend = 3; | |
165 purple_debug_info("QQ", "Resend interval %d, retries %d\n", | |
166 qd->itv_config.resend, qd->resend_times); | |
162 | 167 |
163 qd->itv_config.keep_alive = purple_account_get_int(account, "keep_alive_interval", 60); | 168 qd->itv_config.keep_alive = purple_account_get_int(account, "keep_alive_interval", 60); |
164 if (qd->itv_config.keep_alive < 30) qd->itv_config.keep_alive = 30; | 169 if (qd->itv_config.keep_alive < 30) qd->itv_config.keep_alive = 30; |
165 qd->itv_config.keep_alive /= qd->itv_config.resend; | 170 qd->itv_config.keep_alive /= qd->itv_config.resend; |
166 qd->itv_count.keep_alive = qd->itv_config.keep_alive; | 171 qd->itv_count.keep_alive = qd->itv_config.keep_alive; |
516 _("Block"), G_CALLBACK(qq_block_buddy_with_gc_and_uid)); | 521 _("Block"), G_CALLBACK(qq_block_buddy_with_gc_and_uid)); |
517 } | 522 } |
518 */ | 523 */ |
519 | 524 |
520 /* show a brief summary of what we get from login packet */ | 525 /* show a brief summary of what we get from login packet */ |
521 static void _qq_menu_show_login_info(PurplePluginAction *action) | 526 static void _qq_menu_account_info(PurplePluginAction *action) |
522 { | 527 { |
523 PurpleConnection *gc = (PurpleConnection *) action->context; | 528 PurpleConnection *gc = (PurpleConnection *) action->context; |
524 qq_data *qd; | 529 qq_data *qd; |
525 GString *info; | 530 GString *info; |
526 | 531 |
532 | 537 |
533 g_string_append(info, "<hr>\n"); | 538 g_string_append(info, "<hr>\n"); |
534 | 539 |
535 g_string_append_printf(info, _("<b>Server</b>: %s<br>\n"), qd->curr_server); | 540 g_string_append_printf(info, _("<b>Server</b>: %s<br>\n"), qd->curr_server); |
536 g_string_append_printf(info, _("<b>Connection Mode</b>: %s<br>\n"), qd->use_tcp ? "TCP" : "UDP"); | 541 g_string_append_printf(info, _("<b>Connection Mode</b>: %s<br>\n"), qd->use_tcp ? "TCP" : "UDP"); |
537 g_string_append_printf(info, _("<b>My Public IP</b>: %s<br>\n"), inet_ntoa(qd->my_ip)); | 542 g_string_append_printf(info, _("<b>My Internet Address</b>: %s<br>\n"), inet_ntoa(qd->my_ip)); |
543 | |
544 g_string_append(info, "<hr>\n"); | |
545 g_string_append(info, "<i>Network Status</i><br>\n"); | |
546 g_string_append_printf(info, _("<b>Sent</b>: %lu<br>\n"), qd->net_stat.sent); | |
547 g_string_append_printf(info, _("<b>Resend</b>: %lu<br>\n"), qd->net_stat.resend); | |
548 g_string_append_printf(info, _("<b>Lost</b>: %lu<br>\n"), qd->net_stat.lost); | |
549 g_string_append_printf(info, _("<b>Received</b>: %lu<br>\n"), qd->net_stat.rcved); | |
550 g_string_append_printf(info, _("<b>Received Duplicate</b>: %lu<br>\n"), qd->net_stat.rcved_dup); | |
538 | 551 |
539 g_string_append(info, "<hr>\n"); | 552 g_string_append(info, "<hr>\n"); |
540 g_string_append(info, "<i>Information below may not be accurate</i><br>\n"); | 553 g_string_append(info, "<i>Information below may not be accurate</i><br>\n"); |
541 | 554 |
542 g_string_append_printf(info, _("<b>Login Time</b>: %s<br>\n"), ctime(&qd->login_time)); | 555 g_string_append_printf(info, _("<b>Login Time</b>: %s<br>\n"), ctime(&qd->login_time)); |
625 m = g_list_append(m, act); | 638 m = g_list_append(m, act); |
626 | 639 |
627 act = purple_plugin_action_new(_("Change Password"), _qq_menu_change_password); | 640 act = purple_plugin_action_new(_("Change Password"), _qq_menu_change_password); |
628 m = g_list_append(m, act); | 641 m = g_list_append(m, act); |
629 | 642 |
630 act = purple_plugin_action_new(_("Show Login Information"), _qq_menu_show_login_info); | 643 act = purple_plugin_action_new(_("Account Information"), _qq_menu_account_info); |
631 m = g_list_append(m, act); | 644 m = g_list_append(m, act); |
632 | 645 |
633 /* | 646 /* |
634 act = purple_plugin_action_new(_("Qun: Search a permanent Qun"), _qq_menu_search_or_add_permanent_group); | 647 act = purple_plugin_action_new(_("Qun: Search a permanent Qun"), _qq_menu_search_or_add_permanent_group); |
635 m = g_list_append(m, act); | 648 m = g_list_append(m, act); |
852 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); | 865 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); |
853 | 866 |
854 option = purple_account_option_bool_new(_("Show server news"), "show_news", TRUE); | 867 option = purple_account_option_bool_new(_("Show server news"), "show_news", TRUE); |
855 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); | 868 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); |
856 | 869 |
857 option = purple_account_option_int_new(_("Resend interval(s)"), "resend_interval", 10); | |
858 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); | |
859 | |
860 option = purple_account_option_int_new(_("Keep alive interval(s)"), "keep_alive_interval", 60); | 870 option = purple_account_option_int_new(_("Keep alive interval(s)"), "keep_alive_interval", 60); |
861 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); | 871 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); |
862 | 872 |
863 option = purple_account_option_int_new(_("Update interval(s)"), "update_interval", 300); | 873 option = purple_account_option_int_new(_("Update interval(s)"), "update_interval", 300); |
864 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); | 874 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); |
867 | 877 |
868 purple_prefs_add_none("/plugins/prpl/qq"); | 878 purple_prefs_add_none("/plugins/prpl/qq"); |
869 purple_prefs_add_bool("/plugins/prpl/qq/show_status_by_icon", TRUE); | 879 purple_prefs_add_bool("/plugins/prpl/qq/show_status_by_icon", TRUE); |
870 purple_prefs_add_bool("/plugins/prpl/qq/show_fake_video", FALSE); | 880 purple_prefs_add_bool("/plugins/prpl/qq/show_fake_video", FALSE); |
871 purple_prefs_add_bool("/plugins/prpl/qq/show_room_when_newin", TRUE); | 881 purple_prefs_add_bool("/plugins/prpl/qq/show_room_when_newin", TRUE); |
872 | 882 purple_prefs_add_int("/plugins/prpl/qq/resend_interval", 3); |
883 purple_prefs_add_int("/plugins/prpl/qq/resend_times", 4); | |
873 } | 884 } |
874 | 885 |
875 PURPLE_INIT_PLUGIN(qq, init_plugin, info); | 886 PURPLE_INIT_PLUGIN(qq, init_plugin, info); |