精华内容
下载资源
问答
  • QQ离线传送

    2019-12-23 21:33:46
    果然跟我想的一样哈 离线发送啥意思的 就是对方离线发送的方式那时怎么做到呢 肯定是先保存到QQ的Server等好友上线在从 Server将数据下行过来 所以很自然的可以想到在线发送就是双方都在线 直接进行P2P方式...

    果然跟我想的一样哈 离线发送啥意思的 就是对方离线也能发送的方式那时怎么做到呢 肯定是先保存到QQ的Server等好友上线在从

    Server将数据下行过来

    所以很自然的可以想到在线发送就是双方都在线 直接进行P2P方式通信 如果在同一个局域网 我觉得应该也会用同一个网络的宽带

    然后直接交付就可以了哦

    展开全文
  • Linux中Wine QQ问题的解决    因为周围朋友同事都使用QQ,联络上离不开QQ。WebQQ的聊天记录和文件传送功能有限,LinuxQQ经常显示...关于怎么在wine中安装QQ,网上教程很多,不过搜索到的不少都有点老了,以前用De

    Linux中Wine QQ问题的解决

        
         因为周围朋友同事都使用QQ,联络上离不开QQ。WebQQ的聊天记录和文件传送功能有限,LinuxQQ经常显示备注出错,并且文件传送功能也很有限,无奈选用非常占资源的wine QQ, 最重要的就win版QQ传送文件文件功能很好用,且可以远程协助他人。.

    关于怎么在wine中安装QQ,网上教程很多,不过能搜索到的不少都有点老了,以前用Debian5.0/6.0的时候就是按网上教程并自己实践的。用wine1.2系列安装QQ是非常折腾的,需要安装很多支撑库,而且容易崩溃。在wine1.3版本后,就相对容易许多了。

    以现在Ubuntu11.10为例,使用的是wine1.3.28版本,安装QQ2010的步骤:
    1、sudo apt-get  install cups-bsd gnome-exe-thumbnailer wine1.3 ttf-droid ttf-liberation ttf-unfonts-core wine1.3-gecko winetricks

    2、winetricks ie6 vcrun6 riched20

    3、wine QQ2010.exe

    (更新:如果需要安装QQ2011,则需要使用ppa上面的wine1.3.35版本之后的wine,但本人未测试过。)

    QQ(2010)在wine里面的两个问题:

        1、“在线”状态时候很快自动切换到”离开“状态,不论“状态切换”的设置如何。
        2、使用gnome的“显示桌面”功能后,QQ主界面无法显示出来。

    问题分析及解决:

        1、状态切换问题:

        根据状态切换原理,首先想到的是GetLastInputInfo这个函数,写了个测试程序,发现这个函数在wine里面运行是正常的。不过在gnome-terminal下启动wine /path_to_qq/qq.exe,发现重复如下信息:

    fixme:crypt:SystemFunction041 (0x3d0b728, e78, 1): stub [RtlDecryptMemory]

    fixme:crypt:SystemFunction040 (0x5558fc8, e78, 1): stub [RtlEncryptMemory]

    fixme:winstation:OpenInputDesktop (0,0,400001cf): stub

        这个 OpenInputDesktop很可疑,google之发现其常用作检测当前桌面是否处于可输入状态,如果不能输入,通常是桌面被锁或者处理用户切换状态。在QQ的Bin目录下面翻箱倒柜的找了一遍,发现是Common.dll引用了这个函数。下面要有请逆向神器IDA出场~为了表示对IDA的景仰之情,要先沐浴更衣,并斋戒九日,1,2,...,9好,时辰到,启动IDA,打开common.dll,泡茶稍等,查找OpenInputDesktop,看到那个粉红色的OpenInputDesktop了吗?是的,是OpenInputDesktop(激动ing...),它在Util::WinScreenStatus::IsComputerLocked()这个函数里面,看这个函数名字就可以猜测出来它是判断系统是否处于锁屏的状态,返回值应该是int(甚至是bool型),从下图的IDA逆向代码来看,如果OpenInputDesktop失败,则函数提前结束,返回0。

        解决办法:

    使得这个函数返回true就可以解决问题了。本人采用把OpenInputDesktop之后的那个jnz换成jmp的方法来完成的。使用IDA的HexView,找到jnz对应的机器代码75 xx,把随后的十来个数字一起,作为特征码;用WinHex打开common.dll,使用上面“特征码“定位,并把75改成EB(即jnz->jmp),并把common.dll的头部checksum值清空,保存文件。再次启qq,状态切换问题解决。(缺点是:在Linux真的处于锁屏状态时,QQ仍显示在线。



        2、主界面不显示问题:

    在Debian下,Ctrl+Alt+d(显示桌面)后,双击托盘的qq图标,qq主界面不显示。本人解决办法是使用ShowWindow,代码如下:

    1. // showQQ.cpp : Defines the entry point for the application.  
    2. #include <windows.h>  
    3. BOOL CALLBACK EnumWndProc(HWND hWnd,LPARAM lParam)  
    4. {  
    5.     TCHAR winTitle[MAX_PATH] = {0};  
    6.     ::GetWindowText(hWnd, winTitle, sizeof(winTitle));  
    7.     if( 0 == strcmp(winTitle, "QQ International")  
    8.         || 0 == strcmp(winTitle, "QQ2011")  
    9.         || 0 == strcmp(winTitle, "QQ2010")  
    10.         // 请自行添加其它需要的QQ主窗口名  
    11.         )  
    12.     {  
    13.         ::SetWindowPos(hWnd, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_SHOWWINDOW);  
    14.         ::ShowWindow(hWnd, SW_SHOWNORMAL);  
    15.         ::SendMessage(hWnd, WM_SHOWWINDOW, 1, 0);  
    16.     }  
    17.     return TRUE;  
    18. }  
    19.   
    20. int APIENTRY WinMain(HINSTANCE hInstance,  
    21.                      HINSTANCE hPrevInstance,  
    22.                      LPSTR     lpCmdLine,  
    23.                      int       nCmdShow)  
    24. {  
    25.     ::EnumWindows(EnumWndProc, (LPARAM)0);  
    26.     return 0;  
    27. }  


    用vc6编译后备用,当qq不出现的时候,用wine运行这个showQQ.exe程序就可以了。

    结语:

    qq是身边人用得比较多的联系工具,但腾讯对Linux用户照顾不周,使用非常艰难。希望有更好的开放协议的通讯工具,让大家有更多的选择。


    附:

    测试 GetLastInputInfo代码

    1. #define _WIN32_WINNT 0x500  
    2. #include <windows.h>  
    3. #include <winuser.h>      
    4. #include "stdio.h"  
    5. #include "time.h"  
    6.   
    7. int main(int argc, char* argv[])  
    8. {  
    9.     LASTINPUTINFO info;  
    10.     info.cbSize = sizeof(info);  
    11.     while(1) {  
    12.         if(GetLastInputInfo(&info)) {  
    13.             printf ( "%ud\n", info.dwTime);  
    14.         }  
    15.         else {  
    16.             printf("get last input info fail.\n");  
    17.         }  
    18.         Sleep(1000);  
    19.     }  
    20.     return 0;  
    21. }     

    展开全文
  • -关于添加QQ提示'创建连接失败',我反正试过好几个空间都没出现这种情况,不知道你是怎么搞的。 -如果你之前安装过1.2版本,升级到1.4必须要清空数据库重新安装!因为数据表结构不通用 -要想正常发邮件 空间必须...
  • 群聊是多人社交的基本诉求,不管是QQ群,还是微信群,一个群友在群内发了一条消息: (1)在线的群友第一时间收到消息 (2)离线的群友在登陆后收到消息 由于“消息风暴扩散系数”的存在,群消息的复杂度要远...

    个人博客请访问 http://www.x0100.top  

    群聊是多人社交的基本诉求,不管是QQ群,还是微信群,一个群友在群内发了一条消息:

    (1)在线的群友能第一时间收到消息

    (2)离线的群友能在登陆后收到消息

    由于“消息风暴扩散系数”的存在,群消息的复杂度要远高于单对单消息。群消息的实时性,可达性,离线消息是今天将要讨论的核心话题。

     

    【常见的群消息流程】

    开始讲群消息投递流程之前,先介绍两个群业务的核心数据结构:

    群成员表:用来描述一个群里有多少成员

    t_group_users(group_id, user_id)

    群离线消息表:用来描述一个群成员的离线消息

    t_offine_msgs(user_id, group_id, sender_id,time, msg_id, msg_detail)

     

    业务场景举例:

    (1)一个群中有x,A,B,C,D共5个成员,成员x发了一个消息

    (2)成员A与B在线,期望实时收到消息

    (3)成员C与D离线,期望未来拉取到离线消息

     

    系统架构简介:

    (1)客户端:x,A,B,C,D共5个客户端用户

    (2)服务端

             (2.1)所有模块与服务抽象为server

             (2.2)所有用户在线状态抽象存储在高可用cache里

             (2.3)所有数据信息,例如群成员、群离线消息抽象存储在db里

     


    典型群消息投递流程,如图步骤1-4所述:

    步骤1:群消息发送者x向server发出群消息

    步骤2:server去db中查询群中有多少用户(x,A,B,C,D)

    步骤3:server去cache中查询这些用户的在线状态

    步骤4:对于群中在线的用户A与B,群消息server进行实时推送

    步骤5:对于群中离线的用户C与D,群消息server进行离线存储

     


    典型的群离线消息拉取流程,如图步骤1-3所述:

    步骤1:离线消息拉取者C向server拉取群离线消息

    步骤2:server从db中拉取离线消息并返回群用户C

    步骤3:server从db中删除群用户C的群离线消息

     

    存在的问题

    上述流程是最容易想,也最容易理解的,存在的问题也最显而易见:对于同一份群消息的内容,多个离线用户存储了很多份。假设群中有200个用户离线,离线消息则冗余了200份,这极大的增加了数据库的存储压力。

     

    【群消息优化1:减少存储量】

    为了减少离线消息的冗余度增加一个群消息表,用来存储所有群消息的内容,离线消息表只存储用户的群离线消息msg_id,就能大大的降低数据库的冗余存储量

    群消息表:用来存储一个群中所有的消息内容

    t_group_msgs(group_id, sender_id, time,msg_id, msg_detail)

    群离线消息表:优化后只存储msg_id

    t_offine_msgs(user_id, group_id, msg_id)

     


    这样优化后,群在线消息发送就做了一些修改:

    步骤3:每次发送在线群消息之前,要先存储群消息的内容

    步骤6:每次存储离线消息时,只存储msg_id,而不用为每个用户存储msg_detail

     


    拉取离线消息时也做了响应的修改:

    步骤1:先拉取所有的离线消息msg_id

    步骤3:再根据msg_id拉取msg_detail

    步骤5:删除离线msg_id

     

    存在的问题

    如同单对单消息的发送一样:

    (1)在线消息的投递可能出现消息丢失,例如服务器重启,路由器丢包,客户端crash

    (2)离线消息的拉取也可能出现消息丢失,原因同上

    需要和单对单消息的可靠投递一样,加入应用层的ACK,才能保证群消息一定到达。

     

    【群消息优化2:应用层ACK】


    应用层ACK优化后,群在线消息发送又发生了一些变化:

    步骤3:在消息msg_detail存储到群消息表后,不管用户是否在线,都先将msg_id存储到离线消息表里

    步骤6:在线的用户A和B收到群消息后,需要增加一个应用层ACK,来标识消息到达

    步骤7:在线的用户A和B在应用层ACK后,将他们的离线消息msg_id删除掉

     


    对应到群离线消息的拉取也一样:

    步骤1:先拉取msg_id

    步骤3:再拉取msg_detail

    步骤5:最后应用层ACK

    步骤6:server收到应用层ACK才能删除离线消息表里的msg_id

     

    存在的问题

    (1)如果拉取了消息,却没来得及应用层ACK,会收到重复的消息么

    回答:会,可以在客户端去重,对于重复的msg_id,对用户不展现,从而不影响用户体验

    (2)对于离线的每一条消息,虽然只存储了msg_id,但是每个用户的每一条离线消息都将在数据库中保存一条记录,有没有办法减少离线消息的记录数呢?

     

    【群消息优化3:离线消息表】

    离线消息表的优化

    其实,对于一个群用户,在ta登出后的离线期间内,肯定是所有的群消息都没有收到的,完全不用对所有的每一条离线消息存储一个离线msg_id,而只需要存储最近一条拉取到的离线消息的time(或者msg_id),下次登录时拉取在那之后的所有群消息即可,而完全没有必要存储每个人未拉取到的离线消息msg_id

     

    群成员表:用来描述一个群里有多少成员,以及每个成员最后一条ack的群消息的msg_id(或者time)

    t_group_users(group_id, user_id, last_ack_msg_id(last_ack_msg_time))

    群消息表:用来存储一个群中所有的消息内容,不变

    t_group_msgs(group_id, sender_id, time,msg_id, msg_detail)

    群离线消息表:不再需要了

     


    离线消息表优化后,群在线消息的投递流程:

    步骤3:在消息msg_detail存储到群消息表后,不再需要操作离线消息表(优化前需要将msg_id插入离线消息表)

    步骤7:在线的用户A和B在应用层ACK后,将last_ack_msg_id更新即可(优化前需要将msg_id从离线消息表删除)

     


    群离线消息的拉取流程也类似:

    步骤1:拉取离线消息

    步骤3:ACK离线消息

    步骤4:更新last_ack_msg_id

     

    存在的问题

    由于“消息风暴扩散系数”的存在,假设1个群有500个用户,“每条”群消息都会变为500个应用层ACK,将对服务器造成巨大的冲击,有没有办法减少ACK请求量呢

     

    【群消息优化4:批量ACK】

    由于“消息风暴扩散系数”的存在,如果每条群消息都ACK,会给服务器造成巨大的冲击,为了减少ACK请求量,很容易想到的方法是批量ACK。

    批量ACK的方式又有两种:

    (1)每收到N条群消息ACK一次,这样请求量就降低为原来的1/N了

    (2)每隔时间间隔T进行一次群消息ACK,也能达到类似的效果

     

    新的问题

    批量ACK有可能导致:还没有来得及ACK群消息,用户就退出了,这样下次登录会拉取到重复的离线消息

    解决方案

    msg_id去重,不对用户展现,保证良好的用户体验

     

    还可能存在的问题

    群离线消息过多:拉取过慢

     

    【总结】

    群消息还是非常有意思的,可达性、实时性、离线消息、消息风暴扩散等等等等,做个总结:

    (1)不管是群在线消息,还是群离线消息,应用层的ACK是可达性的保障

    (2)群消息只存一份,不用为每个用户存储离线群msg_id,只需存储一个最近ack的群消息id/time

    (3)为了减少消息风暴,可以批量ACK

    (4)如果收到重复消息,需要msg_id去重,让用户无感知

    (5)离线消息过多,可以分页拉取(按需拉取)优化

     

    展开全文
  • 【需求缘起】 之前的文章更多的聊了单对单的消息投递: 《微信为什么不丢消息?...(2)离线的群友在登陆后收到消息 由于“消息风暴扩散系数”的存在(概念详见《QQ状态同步究竟是推还

    【需求缘起】

    之前的文章更多的聊了单对单的消息投递

    微信为什么不丢消息?

    http如何像tcp一样实时的收消息?


    群聊是多人社交的基本诉求,不管是QQ群,还是微信群,一个群友在群内发了一条消息:

    1)在线的群友能第一时间收到消息

    2)离线的群友能在登陆后收到消息

    由于“消息风暴扩散系数”的存在(概念详见《QQ状态同步究竟是推还是拉?》),群消息的复杂度要远高于单对单消息。群消息的实时性,可达性,离线消息是今天将要讨论的核心话题。

     

    【常见的群消息流程】

    开始讲群消息投递流程之前,先介绍两个群业务的核心数据结构:

    群成员表用来描述一个群里有多少成员

    t_group_users(group_id, user_id)

    群离线消息表用来描述一个群成员的离线消息

    t_offine_msgs(user_id, group_id, sender_id,time, msg_id, msg_detail)

     

    业务场景举例:

    1)一个群中有x,A,B,C,D5个成员,成员x发了一个消息

    2)成员AB在线,期望实时收到消息

    3)成员CD离线,期望未来拉取到离线消息

     

    系统架构简介:

    1)客户端:x,A,B,C,D5个客户端用户

    2)服务端

             2.1)所有模块与服务抽象为server

             2.2)所有用户在线状态抽象存储在高可用cache

             2.3)所有数据信息,例如群成员、群离线消息抽象存储在db

     


    典型群消息投递流程,如图步骤1-4所述:

    步骤1:群消息发送者xserver发出群消息

    步骤2serverdb中查询群中有多少用户(x,A,B,C,D)

    步骤3servercache中查询这些用户的在线状态

    步骤4:对于群中在线的用户AB,群消息server进行实时推送

    步骤5:对于群中离线的用户CD,群消息server进行离线存储

     


    典型的群离线消息拉取流程,如图步骤1-3所述:

    步骤1:离线消息拉取者Cserver拉取群离线消息

    步骤2serverdb中拉取离线消息并返回群用户C

    步骤3serverdb中删除群用户C的群离线消息

     

    存在的问题

    上述流程是最容易想,也最容易理解的,存在的问题也最显而易见:对于同一份群消息的内容,多个离线用户存储了很多份。假设群中有200个用户离线,离线消息则冗余了200份,这极大的增加了数据库的存储压力。

     

    【群消息优化1:减少存储量】

    为了减少离线消息的冗余度增加一个群消息表,用来存储所有群消息的内容,离线消息表只存储用户的群离线消息msg_id,就能大大的降低数据库的冗余存储量

    群消息表用来存储一个群中所有的消息内容

    t_group_msgs(group_id, sender_id, time,msg_id, msg_detail)

    群离线消息表优化后只存储msg_id

    t_offine_msgs(user_id, group_id, msg_id)

     


    这样优化后,群在线消息发送就做了一些修改:

    步骤3:每次发送在线群消息之前,要先存储群消息的内容

    步骤6:每次存储离线消息时,只存储msg_id,而不用为每个用户存储msg_detail

     


    拉取离线消息时也做了响应的修改:

    步骤1:先拉取所有的离线消息msg_id

    步骤3:再根据msg_id拉取msg_detail

    步骤5:删除离线msg_id

     

    存在的问题

    如同单对单消息的发送一样:

    1在线消息的投递可能出现消息丢失,例如服务器重启,路由器丢包,客户端crash

    2离线消息的拉取也可能出现消息丢失,原因同上

    需要和单对单消息的可靠投递一样,加入应用层的ACK,才能保证群消息一定到达。

     

    【群消息优化2:应用层ACK


    应用层ACK优化后,群在线消息发送又发生了一些变化:

    步骤3:在消息msg_detail存储到群消息表后,不管用户是否在线,都先将msg_id存储到离线消息表里

    步骤6在线的用户AB收到群消息后,需要增加一个应用层ACK,来标识消息到达

    步骤7:在线的用户AB在应用层ACK后,将他们的离线消息msg_id删除掉

     


    对应到群离线消息的拉取也一样:

    步骤1:先拉取msg_id

    步骤3:再拉取msg_detail

    步骤5:最后应用层ACK

    步骤6server收到应用层ACK才能删除离线消息表里的msg_id

     

    存在的问题

    1如果拉取了消息,却没来得及应用层ACK,会收到重复的消息么

    回答:会,可以在客户端去重,对于重复的msg_id,对用户不展现,从而不影响用户体验

    2)对于离线的每一条消息,虽然只存储了msg_id,但是每个用户的每一条离线消息都将在数据库中保存一条记录,有没有办法减少离线消息的记录数呢?

     

    【群消息优化3:离线消息表】

    离线消息表的优化

    其实,对于一个群用户,在ta登出后的离线期间内,肯定是所有的群消息都没有收到的,完全不用对所有的每一条离线消息存储一个离线msg_id,而只需要存储最近一条拉取到的离线消息的time(或者msg_id),下次登录时拉取在那之后的所有群消息即可,而完全没有必要存储每个人未拉取到的离线消息msg_id

     

    群成员表用来描述一个群里有多少成员,以及每个成员最后一条ack的群消息的msg_id(或者time

    t_group_users(group_id, user_id, last_ack_msg_id(last_ack_msg_time))

    群消息表:用来存储一个群中所有的消息内容,不变

    t_group_msgs(group_id, sender_id, time,msg_id, msg_detail)

    群离线消息表不再需要了

     


    离线消息表优化后,群在线消息的投递流程:

    步骤3在消息msg_detail存储到群消息表后,不再需要操作离线消息表(优化前需要将msg_id插入离线消息表)

    步骤7在线的用户AB在应用层ACK后,将last_ack_msg_id更新即可(优化前需要将msg_id从离线消息表删除)

     


    群离线消息的拉取流程也类似:

    步骤1:拉取离线消息

    步骤3ACK离线消息

    步骤4:更新last_ack_msg_id

     

    存在的问题

    由于“消息风暴扩散系数”的存在,假设1个群有500个用户,“每条”群消息都会变为500个应用层ACK,将对服务器造成巨大的冲击,有没有办法减少ACK请求量呢

     

    【群消息优化4:批量ACK

    由于“消息风暴扩散系数”的存在,如果每条群消息都ACK,会给服务器造成巨大的冲击,为了减少ACK请求量,很容易想到的方法是批量ACK

    批量ACK的方式又有两种:

    1每收到N条群消息ACK一次,这样请求量就降低为原来的1/N

    2每隔时间间隔T进行一次群消息ACK,也能达到类似的效果

     

    新的问题

    批量ACK有可能导致:还没有来得及ACK群消息,用户就退出了,这样下次登录会拉取到重复的离线消息

    解决方案

    msg_id去重,不对用户展现,保证良好的用户体验

     

    还可能存在的问题

    群离线消息过多:拉取过慢

    解决方案分页拉取(按需拉取),分页拉取的细节在“微信为啥不丢离线消息”一章中有详细叙述,此处不再展开(详见《微信为啥不丢“离线消息”?》)。

     

    【总结】

    群消息还是非常有意思的,可达性、实时性、离线消息、消息风暴扩散等等等等,做个总结:

    1)不管是群在线消息,还是群离线消息,应用层的ACK是可达性的保障

    2群消息只存一份,不用为每个用户存储离线群msg_id,只需存储一个最近ack的群消息id/time

    3)为了减少消息风暴,可以批量ACK

    4)如果收到重复消息,需要msg_id去重,让用户无感知

    5)离线消息过多,可以分页拉取(按需拉取)优化

    ==【完】==

    展开全文
  • 知识重点:QQ的自定义表情让我们能够很形象的表达自己的感情,但是与系统自带的表情相比,当我们向离线的好友发送自定义表情时,就会被拒绝,系统不支持向不在线的好友发送自定义表情。对这种限制,我们该..QQ的...
  • 群聊这么复杂,该怎么玩转?

    千次阅读 2016-11-11 10:58:36
    》群聊是多人社交的基本诉求,不管是QQ群,还是微信群,一个群友在群内发了一条消息:(1)在线的群友第一时间收到消息(2)离线的群友在登陆后收到消息由于“消息风暴扩散系数”的存在(概念详见《QQ状态同步...
  • QQ在线漂浮客服JS

    2014-11-15 12:07:47
    QQ在线漂浮客服,在浏览器中无论网页滚动条怎么拉动,一直固定显示在网页左侧中间位置,支持关闭,展开功能 修改QQ号时,只需按规则修改A标签中的QQ号,和IMG标签里面的QQ号即可,按此方法修改,可以显示QQ在线,或...
  • 之前一直看诸位网友说as不可直接在线更新,于是耐心琢磨,google官网的离线增量更新(增量更新见另外一篇博客as离线更新方式)。但是今天看到这篇文章一口血喷在键盘上。我他妈怎么没有早点看到,早点看到,早点看到...
  • 不会司机端每时每刻都不停的向服务器询问信息吧。 多推等推送机制不知道完成向特定某个客户发送信息呢? 就是客户端与商户端怎么才能很好的进行及时通讯。或者就像qq可以离线接收信息一样。
  • 2.接口调试运行,一个都不少,可以对参数进行加密,从md5到aes一应俱全,返回参数与模型实时分析对比,给出不一致的地方,找出接口可能出现的问题。如果你不想手写文档,那么试试接口的数据生成功能,可以对接口...
  • 消息系统

    2017-08-27 22:31:06
    群消息这么复杂,怎么能做到不丢不重? 微信多点登录与QQ消息漫游架构随想 QQ状态同步究竟是推还是拉? 消息“时序”与“一致性”为何这么难? 58到家通用实时消息平台架构细节 微信为啥这么省流量? 应用层/安全层/...
  • 提供简单快捷的IM方案,快速打造在线IM,可用于公司内网、外网通讯,客服系统等,实现了socket,websocket,和安卓、IOS应用结合使用,可用于任何商业、个人作品中,请保留作者信息,如果项目帮到了您请加个星,...
  • 相比 dingdang-robot ,舍弃了 PocketSphinx 的离线唤醒方案,安装变得更加简单,代码量更少,更易于维护并且在 Mac 以及更多 Linux 系统中运行。 wukong-robot 的工作模式: wukong-robot 被唤醒后,用户的...
  • 注意:由于 bintray 不用了,所以 2.6.3 和以后版本都迁移到 JitPack 了,旧版本的没有离线包,除非你用源码,不然建议全都升级,不然构建会失败。 dependencies { implementation fileTree(dir: 'libs', include...
  • 飞秋(FeiQ)是一款局域网聊天传送文件的绿色软件,它参考了飞鸽传书(IPMSG)和QQ, 完全兼容飞鸽传书(IPMSG)协议,具有局域网传送方便,速度快,操作简单的优点,同时具有QQ中的一些功能。 功能说明: - 飞秋(FeiQ)是一款...
  • 飞秋2013专业版

    2014-06-24 10:54:48
    要取消离线的话,选择离线状态中的取消离线状态。 十七、如何给某待定的组选择隐身或在线? 选择要设置的组或组下的某个成员,选择隐身对该组成员可见。 十八、如何给隐身的用户对方消息? 如果对方处于隐身状态...
  • 飞秋(FeiQ)是一款局域网聊天传送文件的绿色软件,它参考了飞鸽传书(IPMSG)和QQ, 完全兼容飞鸽传书(IPMSG)协议,具有局域网传送方便,速度快,操作简单的优点,同时具有QQ中的一些功能。 功能说明: - 飞秋(FeiQ)是一款...
  • 飞秋FeiQv2.4修正版

    2008-11-23 17:27:11
    飞秋(FeiQ)是一款局域网聊天传送文件的绿色软件,它参考了飞鸽传书(IPMSG)和QQ, 完全兼容飞鸽传书(IPMSG)协议,具有局域网传送方便,速度快,操作简单的优点,同时具有QQ中的一些功能。 功能说明: - 飞秋(FeiQ)是一款...
  • 我打算用Java编写一个类似...Java对于开发语音和视频的支持怎么样,能否达到QQ的水平?另外要说明的是我并非开发商用软件,编写这个软件的目的是为了学习,本人还是在校学生,对Java很感兴趣^_^。希望大家不吝赐教
  • 所以加上这个运行日志记录,看看找到问题在哪。但是我还没服务器,这个log文件怎么传给我还没想好,先改这些吧有空再说 Version 1.9.4 1.修改定位历史的删除逻辑 2.修改未开启GPS时地图SDK初始化失败的bug 3....
  • 嗒嗒助手 v1.1.0.18.zip

    2019-07-14 05:56:50
    每一个功能都为果粉与商家,在使用过程中带来更多便捷。是 IPhone用户必备的手机助手。嗒嗒助手的核心团队由腾讯、富士康、360核心技术负责人组成,拥有丰富的技术储备及行业认识,我们希望通过先进的技术,让手机...
  • 那么,问题就来了,我书籍里面的文档越来越多,我怎么知道我要链接的那个文档的文档标识呢?不用担心,在markdown编辑器的左侧,括号里面的红色文字显示的就是你的文档标识。 采集功能 看到一篇很好的文章,但是...
  • 谈谈感想吧,别听什么培训机构诳你什么爬虫工程师有前途啥的,当然学好学精爬虫也拿到高薪,但这一行也有不少人了,精通的自然不用说。而且现在有很多像八爪鱼、火车头这些可以定制的爬虫软件,还有一些自学习的...
  • 如果不在启动目录(默认为 %systemroot%System32)中找到该文件,将试着在 Windows 安装 CD 中找到它。如果有多引导系统的计算机,必须保证是在包含 Windows 的驱动器上使用该命令。 Diskpart  创建和删除硬盘...
  • 访问谷歌商店的朋友可以去我的公众号回复插件获取离线版。强烈推荐大家使用谷歌商店安装, 这样如果有更新可以自动安装,毕竟咱们的插件更新还是蛮快的。 :exclamation:怎么刷 LeetCode? 我是如何刷 ...
  • asp.net知识库

    2015-06-18 08:45:45
    怎么在ASP.NET 2.0中使用Membership asp.net 2.0-实现数据访问(1) ASP.NET 2.0 新特性 .NET 2.0里使用强类型数据创建多层应用 在MastPage中引用脚本资源 2.0正式版中callback的一些变化+使用示例(ASP.NET 2.0)...

空空如也

空空如也

1 2
收藏数 29
精华内容 11
关键字:

qq怎么能离线