Ignore:
Timestamp:
2005-11-19T11:12:18Z (16 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
4d50898
Parents:
0b2e843
Message:

Applied AIM typing notification patch from Hanji.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/oscar/oscar.c

    r0b2e843 r3e1de87  
    221221static int gaim_ssi_parselist    (aim_session_t *, aim_frame_t *, ...);
    222222static int gaim_ssi_parseack     (aim_session_t *, aim_frame_t *, ...);
    223 
     223static int gaim_parsemtn         (aim_session_t *, aim_frame_t *, ...);
    224224static int gaim_icqinfo          (aim_session_t *, aim_frame_t *, ...);
    225225static int gaim_parseaiminfo     (aim_session_t *, aim_frame_t *, ...);
     
    558558        aim_conn_addhandler(sess, bosconn, AIM_CB_FAM_SSI, AIM_CB_SSI_SRVACK, gaim_ssi_parseack, 0);
    559559        aim_conn_addhandler(sess, bosconn, AIM_CB_FAM_LOC, AIM_CB_LOC_USERINFO, gaim_parseaiminfo, 0);
     560        aim_conn_addhandler(sess, bosconn, AIM_CB_FAM_MSG, AIM_CB_MSG_MTN, gaim_parsemtn, 0);
    560561
    561562        ((struct oscar_data *)gc->proto_data)->conn = bosconn;
     
    16781679
    16791680        /* Maybe senderwarn and recverwarn should be user preferences... */
     1681        params->flags = 0x0000000b;
    16801682        params->maxmsglen = 8000;
    16811683        params->minmsginterval = 0;
     
    24352437}
    24362438
     2439int gaim_parsemtn(aim_session_t *sess, aim_frame_t *fr, ...)
     2440{
     2441        struct gaim_connection * gc = sess->aux_data;
     2442        va_list ap;
     2443        guint16 type1, type2;
     2444        char * sn;
     2445
     2446        va_start(ap, fr);
     2447        type1 = va_arg(ap, int);
     2448        sn = va_arg(ap, char*);
     2449        type2 = va_arg(ap, int);
     2450        va_end(ap);
     2451
     2452        if(type2 == 0x0001 || type2 == 0x0002)
     2453                serv_got_typing(gc, sn, 0);
     2454
     2455        return 1;
     2456}
     2457
    24372458static char *oscar_get_status_string( struct gaim_connection *gc, int number )
    24382459{
     
    24612482                return( "Away" );
    24622483        }
     2484}
     2485
     2486int oscar_send_typing(struct gaim_connection *gc, char * who, int typing)
     2487{
     2488        struct oscar_data *od = gc->proto_data;
     2489        return( aim_im_sendmtn(od->sess, 1, who, typing ? 0x0002 : 0x0000) );
    24632490}
    24642491
     
    24852512        ret->get_status_string = oscar_get_status_string;
    24862513
     2514        ret->send_typing = oscar_send_typing;
     2515
    24872516        my_protocol = ret;
    24882517}
Note: See TracChangeset for help on using the changeset viewer.