| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > Вопрос по TICQClient |
| Автор: Coderr 22.4.2007, 13:23 |
| Раскажите, пожалуйста, о дополнительных статусах (типа утка, сердце, мужик в каске, джойстик, кружка с пивом...) Как определить какой доп статус сейчас у клиента, а также как получить их текст? |
| Автор: Coderr 25.4.2007, 16:09 |
| Опять тишина... Неужели я ставлю нерешаемые задачи? |
| Автор: WolfON 27.4.2007, 18:53 |
| В TICQClient их просто-напросто еще нет. Описание протокола: http://www.micq.org/ICQ-OSCAR-Protocol-v7-v8-v9/ |
| Автор: Coderr 2.5.2007, 19:34 |
| Я понимаю, что в TICQClient этого нет. Если б было, я не не спрашивал. А можно как-нибудь по-русски? А то по ссылке ничего непонятно... |
| Автор: WolfON 3.5.2007, 18:37 |
| если нету - читай описание протокола и сделай сам ) по-русски нигде не видел |
| Автор: yXo 6.5.2007, 16:31 |
| Описание протокола лучше всего читать тут - http://iserverd.khstu.ru/oscar/. Там смотришь соответствующий snac на заход уина или на смену статуса, парсишь нужный tlv и вперед. Вот список всех доп. статусов: "NONE" => NULL, "ANGRY" => "01D8D7EE-AC3B-492A-A58D-D3D877E66B92", "DUCK" => "5A581EA1-E580-430C-A06F-612298B7E4C7", "TIRED" => "83C9B78E-77E7-4378-B2C5-FB6CFCC35BEC", "PARTY" => "E601E41C-3373-4BD1-BC06-811D6C323D81", "BEER" => "8C50DBAE-81ED-4786-ACCA-16CC3213C7B7", "THINK" => "3FB0BD36-AF3B-4A60-9EEF-CF190F6A5A7F", "EAT" => "F8E8D7B2-82C4-4142-90F8-10C6CE0A89A6", "TV" => "80537DE2-A467-4A76-B354-6DFD075F5EC6", "FRIENDS" => "F18AB52E-DC57-491D-99DC-6444502457AF", "COFFEE" => "1B78AE31-FA0B-4D38-93D1-997EEEAFB218", "MUSIC" => "61BEE0DD-8BDD-475D-8DEE-5F4BAACF19A7", "BUSINESS" => "488E1489-5C63-3861-CA4A-0882AA77CE7A", "CINEMA" => "107A9A18-1232-4DA4-B6CD-0879DB780F09", "FUNNY" => "6F493098-4F7C-4AFF-A276-34A03BCEAEA7", "PHONE" => "1292E550-1B64-4F66-B206-B29AF378E48D", "GAMES" => "D4A611D0-8F01-4EC0-9223-C5B6BEC6CCF0", "COLLEGE" => "609D52F8-A29A-49A6-B2A0-2524C5E9D260", "SHOP" => "63627337-A03F-49FF-80E5-F709CDE0A4EE", "SICK" => "1F7A4071-BF3B-4E60-BC32-4C5787B04CF1", "SLEEP" => "785E8C48-40D3-4C65-886F-04CF3F3F43DF", "SURF" => "A6ED557E-6BF7-44D4-A5D4-D2E7D95CE81F", "INTERNET" => "12D07E3E-F885-489E-8E97-A72A6551E58D", "WORK" => "BA74DB3E-9E24-434B-87B6-2F6B8DFEE50F", "TYPING" => "634F6BD8-ADD2-4AA1-AAB9-115BC26D05A1", "UNK" => "2CE0E4E5-7C64-4370-9C3A-7A1CE878A7DC", "PPC" => "101117C9-A3B0-40f9-81AC-49E159FBD5D4", "MOBILE" => "160C60BB-DD44-43f3-9140-050F00E6C009", "MAN" => "6443C6AF-2260-4517-B58C-D7DF8E290352", "WC" => "16F5B76F-A9D2-4035-8CC5-C084703C98FA" "SMOKE" => "3FB0BD36-AF3B-4A60-9EEF-CF190F6A5A7E", "SEX" => "E601E41C-3373-4BD1-BC06811D6C323D82", "POISK" => "631436FF-3F8A-40D0-A5CB7B66E051B364", "GEOMETRY" =>"B70867F5-3825-4327-A1FFCF4CC1939797", "LOVE" => "DDCF0EA9-7195-4048-A9C6413206D6F280" |
| Автор: Coderr 6.5.2007, 21:51 |
| yXo, шикарно! Теперь бы ещё разобраться, как бы это всё воткнуть в компонент и куда - было бы ваще идеально... |
| Автор: yXo 7.5.2007, 19:42 |
| Да все просто берем допустим событие, когда юзер выходит в онлайн snac 030b, читаем описание по ссылке которую давал выше: .. 00 0D word TLV.Type(0x0D) - user capabilities xx xx word TLV.Length xx ..... xx CLSIDs Client capabilities list .. Вот среди этих капабилитес и есть доп. статус. Открываешь icqclient.pas и ищешь procedure TICQClient.HSnac030B и в ней: $0D: {User Capabilities} begin s:= GetWStr(Pkt); И на пример составляешь массив доп. статусов и начинаешь искать в нем. Идея такая дальше копай сам ;) |
| Автор: Coderr 11.5.2007, 21:41 |
| yXo, |
| Автор: GORA 30.8.2007, 19:49 |
| Ну что у кого-нибудь есть дельные предложения как скрестить TICQClient и X-статусы? |
| Автор: GORA 5.9.2007, 11:12 |
| Кто нибудь в курсе, как говорится, хоть в какую сторону копать? нужно ли вносить изменения в ICQClient.pas? либо они устанавливаются так же как и доп. квиповские статусы? |