www.romver.ru
/ Полный список статей / Mail.Ru Агент. Это позволит Вам: СПАМИТЬ

Как заказать сайт


АБРАКАДАБРА (Тоже самое но в читаемом виде)

Na skol'ko a mogu ponat' kompania mail.ru po6la po puti naimen'6ego soprotivlenia, a imenno, predostavila storonnim razrabot4ikam sozdavat' prilojenia. Na moy vzglad eto xoro6aa vozmojnost' pisat' spam servisi dla agenta mail.ru i sootvetstvenno spamit' za neploxie den'gi
Mail.ru Agent Razrabot4ikam http://agent.mail.ru/developers/
Otkrit vnutrenniy protokol obmena dannimi Mail.Ru Agent.
Eto pozvolit Vam:
sozdavat' klientskie prilojenia dla raznix platform
dobavlat' podderjku Agenta v mul'tiprotokol'nie IM
ras6irat' vozmojnosti klienta, dobavlaa noviy funkcional
Opisanie protokola obmena dannimi Mail.ru Agent.

Vi mojete napravlat' svoi voprosi, pojelania, predlojenia i realizacii programm na adres agent-dev@corp.mail.ru.


Programmi na osnove protokola

Vi mojete prisilat' svoi programmi dla razme6enia na na6em sayte. Pri6lite nam informaciu o svoey programme na adres agent-dev@corp.mail.ru.

Opisanie protokola

MMP - protokol soedinenia Mail.Ru Agenta s ob6ey set'u Mail.Ru. Rekomendovanniy dla soedinenia server v luboy moment vremeni mojno polu4it' v tekstovom formate ip:port po adresu mrim.mail.ru:2042 i mrim.mail.ru:443. Vzaimodeystvie s serverom proisxodit poverx postoanno ustanovlennogo tcp-soedinenia posredstvom asinxronnogo obmena komandami. Iniciatorom ustanovlenia soedinenia mojet bit' tol'ko klient, komandi mogut posilat'sa kak klientom, tak i serverom.

MMP binarniy protokol. Vse 4islovie dannie peredautsa kak 4etirexbaytnie celie NE v setevom formate, t. e. pervim idet star6iy bayt, poslednim mlad6iy. 4etirexbaytovie bezznakovie celie obozna4autsa UL.

Tekstovie dannie peredautsa s prefeksirovannoy dlinoy, t. e. sna4ala UL, a potom stroka (v kodirovke windows-1251) dlini UL bez zaver6au6ego nula. Obozna4enie v dal'ney6em - LPS.

Tip dannix UIDL ispol'zuetsa tol'ko pri rabote s ostavlennimi na servere soob6eniami. UIDL - posledovatel'nost' iz 8 simvolov iz mnojestva [a-z A-Z 0-9 _ - = +].

Kajdaa komanda ili otvet na nee na4inautsa s zagolovka. Pola ukazivaemie v zagolovke:

  • vol6ebniy klu4, ukazivau6iy na to, 4to eto deystvitel'no paket MMP - versia MMP, podderjivaemaa otpravitelem paketa (teku6aa versia - 1.7)
  • nomer otpravlaemoy komandi v teku6em soedinenii. Otvet na komandu doljen imet' tot je nomer, 4to i sama komanda.
  • tip paketa, nomer komandi i/ili otveta
  • dlinna dannix paketa (bez u4eta zagolovka). Pri obrabotke posilaemix serverom dannix dlina paketa doljna imet' prioritet pered spiskom ego parametrov, t. k. v sleduu6ix versiax protokola mogut poavlat'sa novie parametri i vse oni budut dopisivat'sa v konec paketa.
  • port i ip (v inet_aton() formate) s kotorix ustanovleno soedinenie


V sintaksise azika S:

Zagolovok paketa
{
    u_long	magic;	
    u_long	proto;
    u_long	seq;
    u_long	msg;
    u_long	dlen;
    u_long	from;
    u_long	fromport;
    u_char	reserved[16];
}

Vam ponadobitsa zagolovo4niy fayl na azike C. Vzat' ego mojno zdes'.

Spisok kodov gorodov, naselennix punktov i rayonov mojno vzat' zdes'.

 

Posledovatel'nost' komand

Posle ustanovki tcp-soedinenia klient obazan srazu poslat' MRIM_CS_HELLO, dojdat'sa MRIM_CS_HELLO_ACK, posle 4ego otpravit' MRIM_CS_LOGIN2 i na4at' posilat' MRIM_CS_PING s ustanovlennim v MRIM_CS_HELLO_ACK intervalom. V slu4ae uspe6noy avtorizacii dal'ney6ie paketi (krome MRIM_CS_PING) doljni otpravlat'sa tol'ko v slu4ae pol'zovatel'skix deystviy (napisania novix soob6eniy i t. p.) ili otveta na paketi polu4aemie ot servera.

Tipi paketov

Tip paketa: cs - Client -> Server
Tip paketa: sc - Server -> Client

Paketi

  • Paket: Ustanovka soedinenia

    Ima paketa: MRIM_CS_HELLO
    Otvet: MRIM_CS_HELLO_ACK
    Tip paketa: cs
    Opisanie: Perviy paket, otpravlaemiy na server.

  • Paket: Podtverjdenie ustanovki soedinenia

    Ima paketa: MRIM_CS_HELLO_ACK
    Tip paketa: sc
    Parametri:

    UL ## ping_period ## Ojidaemaa 4astota podtverjdenia soedinenia (v sekundax)

    Opisanie: Podtverjdaet vozmojnost' soedinenia i soob6aet klientu interval, s kotorim nado otpravlat' paketi kontrola soedinenia.

  • Paket: Uspe6naa avtorizacia

    Ima paketa: MRIM_CS_LOGIN_ACK
    Tip paketa: sc
    Opisanie: Soob6aet, 4to para login-parol' bila verna i klient uspe6no avtorizovalsa v seti agenta.

  • Paket: Nevernaa avtorizacia

    Ima paketa: MRIM_CS_LOGIN_REJ
    Tip paketa: sc
    Parametri:

    LPS ## reason ## pri4ina otkaza

    Opisanie: Soob6aet, 4to para login-parol' bila neverna, i soedinenie budet zaver6eno.

  • Paket: Kontrol' soedinenia

    Ima paketa: MRIM_CS_PING
    Tip paketa: cs
    Opisanie: Otpravka etogo paketa podtverjdaet dla servera, 4to klient aktiven. Paket doljen otpravlat'sa s intervalom, opredelennim v MRIM_CS_HELLO_ACK.

  • Paket: Soob6enie

    Ima paketa: MRIM_CS_MESSAGE
    Tip paketa: cs
    pole seq doljno soderjat' nomer, kotoriy v posledstvii budet soderjat'sa v zagolovke paketa MRIM_CS_MESSAGE_STATUS, opove6au6em klienta o statuse dostavki dannogo soob6enia.
    Parametri:

    UL ## flags ## flagi ##

    MESSAGE_FLAG_OFFLINE ## Soob6enie pri6lo, poka klient bil otklu4en
    MESSAGE_FLAG_NORECV ## Otpravitelu soob6enia ne trebuetsa podtverjdenia dostavki
    MESSAGE_FLAG_AUTHORIZE ## Soob6enie avlaetsa zaprosom na avtorizaciu
    MESSAGE_FLAG_SYSTEM ## Soob6enie avlaetsa sistemnim uvedomleniem administracii
    MESSAGE_FLAG_RTF ## V soob6enii soderjitsa formatirovannaa 4ast'
    MESSAGE_FLAG_CONTACT ## Soob6enie predstavlaet iz seba pereslanniy spisok kontaktov. Tekst soob6enia v etom slu4ae doljen predstavlat' iz seba spisok adresov i nikov peresilaemix kontaktov, pere4islennix 4erez to4ku s zapatoy. <adres1>;<nik1>;<adres2>;<nik2>;<adres3>;<nik3>;...
    MESSAGE_FLAG_NOTIFY ## Eto soob6enie-uvedomlenie "Vam pi6ut". Doljno posilat'sa kajdie 10 sekund, pri bolee dlinnoy pauze klient-polu4atel' doljen s4itat', 4to otpravitel' prekratil napisanie. Tekst takogo soob6enia doljen sostoat' iz odnogo probela.
    MESSAGE_FLAG_MULTICAST ## Soob6enie napravleno spisku polu4ateley, a ne odnomu. Pole to v takom slu4ae sostoit iz spiska polu4ateley, pere4islennix 4erez zapatuu. Maksimal'naa dlina spiska - 50 adresov.

    LPS ## to ## email polu4atela
    LPS ## message ## tekstovaa versia otpravlaemogo soob6enia
    LPS ## rtf-message ## otformatirovannaa versia otpravlaemogo soob6enia, v slu4ae nali4ia oboix versiy soob6enia prioritet imeet rtf-versia. Ona doljna soderjat' rtf-tekst upakovanniy gzip v base64 predstavlenii. To est':

    BASE64(
      		GZIP(
      			UL koli4estvo LPS (doljno bit' ne menee 2)
      			LPS rtf_text_with_all_rtf_headers_and_tags
      			LPS cvet fona v vide UL
     			 )
     		 ) 
    					

    Opisanie: Osnovnoy paket vzaimodeystvia mejdu dvuma klientami. Mojet bit' otpravleno v luboy moment po iniciative klienta. Ni tekstovaa, ni rtf 4asti soob6eniy ne mogut bit' pustimi, pri neobxodimosti sleduet ispol'zovat' stroku iz odnogo probela.

  • Paket: Dostavka soob6enia

    Ima paketa: MRIM_CS_MESSAGE_ACK
    Tip paketa: sc
    Parametri:

    UL ## msg_id ## Nomer paketa (Sequence) etogo soob6enia dla otpravitela
    UL ## flags ## Vozmojnie zna4enia opisani v MRIM_CS_MESSAGE
    LPS ## from ## Adres otpravitela
    LPS ## message ## tekstovaa versia soob6enia
    LPS ## rtf-message ## formatirovannaa versia soob6enia

    Opisanie:

  • Paket: Podtverjdenie polu4enia soob6enia

    Ima paketa: MRIM_CS_MESSAGE_RECV
    Tip paketa: cs
    Parametri:

    LPS ## from ##
    UL ## msg_id ##

    Opisanie: Otpravlaetsa polu4atelem soob6enia srazu posle prixoda MRIM_CS_MESSAGE_ACK, esli flagi MRIM_CS_MESSAGE_ACK ne soderjali MESSAGE_FLAG_NORECV. from i msg_id doljni bit' skopirovani iz MRIM_CS_MESSAGE_ACK i imeut to je zna4enie.

  • Paket: Podtverjdenie dostavki soob6enia

    Ima paketa: MRIM_CS_MESSAGE_STATUS
    Tip paketa: sc
    Pole seq 4islenno ravno polu seq paketa MRIM_CS_MESSAGE
    Parametri:

    UL ## status ## status dostavki ##

    MESSAGE_DELIVERED ## Soob6enie uspe6no dostavleno
    MESSAGE_REJECTED_INTERR ## Proizo6la vnutrennaa o6ibka
    MESSAGE_REJECTED_NOUSER ## Ne su6estvuet pol'zovatela-polu4atela soob6enia
    MESSAGE_REJECTED_LIMIT_EXCEEDED ## Pol'zovatel'-polu4atel' v danniy moment otklu4en ot seti, i soob6enie ne pome6aetsa v ego po4toviy a6ik
    MESSAGE_REJECTED_TOO_LARGE ## Razmer soob6enia previ6aet maksimal'no dopustimiy
    MESSAGE_REJECTED_DENY_OFFMSG ## Pol'zovatel'-polu4atel' v danniy moment otklu4en ot seti, a nastroyki ego po4tovogo a6ika ne dopuskaut nali4ie offlaynovix soob6eniy agenta

    Opisanie: Otpravlennoe soob6enie s4itaetsa dostavlennim tol'ko posle polu4enia etogo otveta servera. Server NE GARANTIRUET dostavku soob6enia. V slu4ae otstutstvia MRIM_CS_MESSAGE_STATUS bolee intervala podtverjdenia soedinenia, programma klient doljna poslat' soob6enie povtorno ili proinformirovat' pol'zovatela o nevozmojnosti dostavki iz-za problem svazi polu4atela.

  • Paket: Smena statusa drugogo pol'zovatela

    Ima paketa: MRIM_CS_USER_STATUS
    Tip paketa: sc
    Parametri:

    UL ## status ## noviy status pol'zovatela ##

    STATUS_OFFLINE ## Pol'zovatel' otklu4en ot seti Agenta
    STATUS_ONLINE ## Pol'zovatel' naxoditsa v seti
    STATUS_AWAY ## Pol'zovatel' v seti, no oto6el ot komp'utera
    STATUS_UNDETERMINATED ## Nastroyki pol'zovatela zapre6aut pokazivat' ego status
    STATUS_FLAG_INVISIBLE ## Pol'zovatel' naxoditsa v seti, no nevidim dla vsex, krome privilegirovannix pol'zovateley iz ego spiska vidimosti.

    LPS ## user ## email smeniv6ego svoy status pol'zovatela

    Opisanie: Eto soob6enie otpravlaetsa serverom pri smene statusa pol'zovatelam vsem tem, u kogo on naxoditsa v kontakt-liste (za isklu4eniem gruppi "Jdu Avtorizacii" i tex, kogo on vklu4il v spisok ignoriruemix ili nevida6ix). Dannoe soob6enie mojet bit' dostavleno klientu DO polu4enia im kontakt-lista. V takoy situacii ono doljno ignorirovat'sa.

  • Paket: Zakritie soedinenia

    Ima paketa: MRIM_CS_LOGOUT
    Tip paketa: sc
    Parametri:

    UL ## reason ## pri4ina otklu4enia ##

    LOGOUT_NO_RELOGIN_FLAG ## Pol'zovatel' otklu4en iz-za parallel'nogo vxoda s ego loginom. Klient ne doljen osu6estvlat' avtomati4eskiy perezaxod v etom slu4ae.

  • Paket: Izmenenie parametrov soedinenia

    Ima paketa: MRIM_CS_CONNECTION_PARAM
    Tip paketa: sc
    Parametri:

    UL ## ping_period ## novaa ojidaemaa 4astota podtverjdenia soedinenia

    Opisanie: Blijay6iy MRIM_CS_PING sleduet otpravlat' uje isxoda iz novoy 4astoti.

  • Paket: Dobavlenie novogo kontakta

    Ima paketa: MRIM_CS_ADD_CONTACT
    Tip paketa: cs
    Parametri:

    UL ## flags ## flagi ##

    CONTACT_FLAG_GROUP ## Dobavlaetsa novaa gruppa, a ne kontakt (nesovmestim s ostal'nimi). Verxniy bayt soderjit koli4estvo uje imeu6ixsa grupp v kontakt-liste
    CONTACT_FLAG_INVISIBLE ## Kontakt doljen popast' v spisok "A vsegda nevidim dla"
    CONTACT_FLAG_VISIBLE ## Kontakt doljen popast' v spisok "A vsegda vidim dla"
    CONTACT_FLAG_IGNORE ## Kontakt doljen popast' v spisok ignoriruemix
    CONTACT_FLAG_SHADOW ## Kontakt ne doljen popast' v osnovnoy kontakt-list (primenaetsa v pare s odnim iz trex predidu6ix)
    CONTACT_FLAG_REMOVED ## Kontakt udalen

    UL ## group_id ## gruppa, v kotoruu doljen bit' dobavlen kontakt (dla CONTACT_FLAG_GROUP ravno 0)
    LPS ## email ## dobavlaemiy adres (ima gruppi dla CONTACT_FLAG_GROUP)
    LPS ## name ## nik dobavlaemogo pol'zovatela (dla otobrajenia v kontakt-liste, ne posilaetsa dla CONTACT_FLAG_GROUP) LPS ## unused ## neispol'zuemiy parametr

  • Paket: Podtverjdenie dobavlenia kontakta

    Ima paketa: MRIM_CS_ADD_CONTACT_ACK
    Tip paketa: sc
    Parametri:

    UL ## status ## rezul'tat operacii ##

    CONTACT_OPER_SUCCESS ## dobavlenie proizvedeno uspe6no
    CONTACT_OPER_ERROR ## peredannie dannie bili nekorrektni
    CONTACT_OPER_INTERR ## pri obrabotke zaprosa proizo6la vnutrennaa o6ibka
    CONTACT_OPER_NO_SUCH_USER ## dobavlaemogo pol'zovatela ne su6estvuet v sisteme
    CONTACT_OPER_INVALID_INFO ## nekorrektnoe ima pol'zovatela
    CONTACT_OPER_USER_EXISTS ## pol'zovatel' uje est' v kontakt-liste
    CONTACT_OPER_GROUP_LIMIT ## previ6eno maksimal'no dopustimoe koli4estvo grupp (20)

    ## UL ## contact_id ## prisvoenniy novomu kontaktu nomer

    Opisanie: Prixodit v otvet na MRIM_CS_ADD_CONTACT. -1 esli status ne raven CONTACT_OPER_SUCCESS.

  • Paket: Izmenenie kontakta

    Ima paketa: MRIM_CS_MODIFY_CONTACT
    Tip paketa: cs
    Parametri:

    UL ## id ## nomer modificiruemogo kontakta
    UL ## flags ##
    UL ## group_id ## Ravno 0 dla gruppi
    LPS ## contact ## Esli gruppa, to ima gruppi
    LPS ## name ## Esli gruppa, to ima gruppi

    Opisanie: Parametri te je, 4to i u MRIM_CS_ADD_CONTACT. contact do i posle izmenenia obazani sovpadat'.

  • Paket: Podtverjdenie izmenenia kontakta

    Ima paketa: MRIM_CS_MODIFY_CONTACT_ACK
    Tip paketa: sc
    Parametri:

    UL ## status ## Rezul'tat operacii. Zna4enia imeut tot je smisl, 4to i v MRIM_CS_ADD_CONTACT_ACK

  • Paket: Soob6enie dostavlennoe, poka pol'zovatel' ne bil podklu4en k seti

    Ima paketa: MRIM_CS_OFFLINE_MESSAGE_ACK
    Tip paketa: sc
    Parametri:

    UIDL ## uidl ## id soob6enia
    LPS ## message ## soob6enie. Soob6enie prixodit v formate RFC/822 pis'ma. Otpravitel' soob6enia xranitsa v zagolovke From, data v zagolovke Date, flagi soob6enia v X-MRIM-FLAGS, tekstovaa i formatirovannaa versii soob6enia sostavlaut tekst pis'ma i razdelautsa mejdu soboy razdelitelem iz zagolovka Boundary.

    Opisanie: Kajdoe polu4ennoe za vrema otsutstvia soob6enie prixodit otdel'nim paketom v tom poradke, v kakom oni postupali na server.

  • Paket: Udalenie soxranennogo soob6enia

    Ima paketa: MRIM_CS_OFFLINE_MESSAGE_DEL
    Tip paketa: cs
    Parametri:

    UIDL ## uidl

    Opisanie: Na kajdiy polu4enniy MRIM_CS_OFFLINE_MESSAGE_ACK klient obazan otpravit' MRIM_CS_OFFLINE_MESSAGE_DEL s tem je uidl, podtverjdau6iy polu4enie dannogo soob6enia. Soob6enie stiraetsa na servere tol'ko pri polu4enii etoy komandi.

  • Paket: Avtorizacia pol'zovatela na dobavlenie v kontakt-list

    Ima paketa: MRIM_CS_AUTHORIZE
    Tip paketa: cs
    Parametri:

    LPS ## user ## email pol'zovatela

    Opisanie: Otpravlaetsa, 4tobi razre6it' user dobavlenie pol'zovatela v kontakt-list i nabludenie za ego statusom.

  • Paket: Informacia ob avtorizacii

    Ima paketa: MRIM_CS_AUTHORIZE_ACK
    Tip paketa: sc
    Parametri:

    LPS ## user ## email avtorizovav6ego pol'zovatela

    Opisanie: Otsilaetsa serverom posle polu4eniem im MRIM_CS_AUTHORIZE ot user tomu, kogo user avtorizoval.

  • Paket: Izmenenie statusa

    Ima paketa: MRIM_CS_CHANGE_STATUS
    Tip paketa: cs
    Parametri:

    UL ## status ## vozmojnie zna4enia sovpadaut s MRIM_CS_USER_STATUS, no ne mogut posilat'sa statusi STATUS_UNDETERMINATED i STATUS_OFFLINE

  • Paket: Trebovanie klu4a dla web-avtorizacii

    Ima paketa: MRIM_CS_GET_MPOP_SESSION
    Tip paketa: cs
    Opisanie: Pol'zovatel' agenta mojet zaxodit' v po4toviy a6ik Mail.Ru bez dopolnitel'noy avtorizacii i ne peredavaa svoy parol' v GET-zaprose, dla etogo ispol'zuetsa mexanizm klu4ey.

  • Paket: Klu4 dla web-avtorizacii

    Ima paketa: MRIM_CS_GET_MPOP_SESSION_ACK
    Tip paketa: sc
    Parametri:

    UL ## status ## uspe6nost' operacii (1 - klu4 polu4en, 0 - proizo6la o6ibka)
    LPS ## session ## sam klu4

    Opisanie: Dla vxoda v a6ik mojno ispol'zovat' URL win.mail.ru/cgi-bin/auth?Login=email&agent=klu4.

  • Paket: Poisk kontakta

    Ima paketa: MRIM_CS_WP_REQUEST
    Tip paketa: cs
    Parametri:

    UL ## field ## parametr poiska ##

    MRIM_CS_WP_REQUEST_PARAM_USER ## login (bez domena), obazan kombinirovat'sa s domenom
    MRIM_CS_WP_REQUEST_PARAM_DOMAIN ## po4toviy domen
    MRIM_CS_WP_REQUEST_PARAM_NICKNAME ## nik
    MRIM_CS_WP_REQUEST_PARAM_FIRSTNAME ## ima
    MRIM_CS_WP_REQUEST_PARAM_LASTNAME ## familia, * v konce nika/imeni/familii ukazivaet na vozmojnost' lubogo prodoljenia imeni
    MRIM_CS_WP_REQUEST_PARAM_SEX ## pol. 1 - mujskoy, 2 - jenskiy
    MRIM_CS_WP_REQUEST_PARAM_DATE1 ## minimal'niy vozrast (v godax)
    MRIM_CS_WP_REQUEST_PARAM_DATE2 ## maksimal'niy vozrast (v godax)
    MRIM_CS_WP_REQUEST_PARAM_CITY_ID ## ID regiona projivania
    MRIM_CS_WP_REQUEST_PARAM_ZODIAC ## Znak zodiaka (Oven - 1, ..., Ribi - 12)
    MRIM_CS_WP_REQUEST_PARAM_BIRTHDAY_MONTH ## Mesac rojdenia (Anvar' - 1, ..., Dekabr' - 12)
    MRIM_CS_WP_REQUEST_PARAM_BIRTHDAY_DAY ## Den' rojdenia (obazan kombinirovat'sa s mesacem rojdenia)
    MRIM_CS_WP_REQUEST_PARAM_COUNTRY_ID ## ID strani projivania
    MRIM_CS_WP_REQUEST_PARAM_ONLINE ## i6em li mi tol'ko podklu4ennix v danniy moment pol'zovateley (1)

    LPS ## value vse parametri v strokovom formate, vklu4aa 4isla

    Opisanie: Poisk kontaktov v baze agenta. Parametri poiska peredautsa parami parametr-zna4enie. Pereda4a neskol'kix parametrov imeet semantiku "i", t. e. vse naydennie rezul'tati doljni sootvetstvovat' vsem peredannim parametram. Kombinirovat'sa mogut vse parametri za isklu4eniem logina i domena (oni obazani idti paroy i ne mogut kombinirovat'sa s drugimi parametrami) v poradke sootvetstvuu6em poradku opisania (za isklu4eniem trebovania dla MRIM_CS_WP_REQUEST_PARAM_ONLINE bit' poslednim v spiske).

  • Paket: Naydennie pol'zovateli

    Ima paketa: MRIM_CS_ANKETA_INFO
    Tip paketa: cs
    Parametri:

    UL ## status ## uspe6nost' zaprosa ##

    MRIM_ANKETA_INFO_STATUS_OK ## poisk uspe6no zaver6en
    MRIM_ANKETA_INFO_STATUS_NOUSER ## ne naydeno ni odnoy podxoda6ey zapisi
    MRIM_ANKETA_INFO_STATUS_RATELIMERR ## sli6kom mnogo zaprosov, poisk vremenno zapre6en

    UL ## fields_num ## koli4estvo poley v ankete kajdogo pol'zovatela
    UL ## max_rows ## teku6ee ograni4enie na koli4estvo rezul'tatov poiska (mojet bit' bol'6e, 4em koli4estvo strok v dannom otvete)
    UL ## server_time ## teku6ee vrema na servere (doljno ispol'zovat'sa dla vi4islenia vozrasta). Format vremeni: Koli4estvo sekund s 00:00:00 1 anvara 1970 goda.
    LPS, LPS, ... ## fields ## nazvania poley teku6ey anketi (vsego fields_num 6tuk)
    LPS, LPS, ... ## values ## zna4enia poley anketi dla kajdogo naydennogo po zaprosu pol'zovatela v tom je poradke, 4to v spiske poley, po fields_num 6tuk na kajdogo

    Opisanie: Rezul'tat poiska kontaktov. Vozvra6aet anketi naydennix pol'zovateley (ix adresa avlautsa polami anketi).

  • Paket: Koli4estvo pisem v po4tovom a6ike

    Ima paketa: MRIM_CS_MAILBOX_STATUS
    Tip paketa: sc
    Parametri:

    UL ## status ## koli4estvo nepro4itannix pisem

    Opisanie: Prixodit pri polu4enii novoy po4ti ili lubom drugom izmenenii 4isla nepro4itannix pisem v a6ike.

  • Paket: Kontakt-list

    Ima paketa: MRIM_CS_CONTACT_LIST2
    Tip paketa: sc
    Parametri:

    UL ## status ## rezul'tat zaprosa kontakt-lista

    GET_CONTACTS_OK ## poisk vipolnen uspe6no
    GET_CONTACTS_ERROR ## naydenniy kontakt-list nekorrekten
    GET_CONTACTS_INTERR ## proizo6la vnutrennaa o6ibka

    UL ## groups_number ## koli4estvo grupp v kontakt-liste
    LPS ## group_mask ## maska-opisanie gruppi, sostoit iz simvolov s (LPS),u (UL),z (stroka okan4ivau6aasa binarnim nulem, v danniy moment ne ispol'zuetsa), sey4as "us" - flagi i nazvanie, pri ras6irenii opisania starie pola soxranat svoe raspolojenie
    LPS ## contacts_mask ## maska-opisanie pol'zovatela (sintaksis takoy je kak i u group_mask), sey4as uussuu (flagi, gruppa, adres, nik, servernie flagi, teku6iy status v seti)
    ## groups ## gruppi (vsego groups_number 6tuk)
    ## contacts ## kontakti

    Opisanie: Kontakt-list pol'zovatela xranitsa na servere. Klient mojet xranit' lokal'nuu kopiu kontakt-lista, no servernaa doljna imet' prioritet. Flagi kontakta imeut tot je smisl, 4to v MRIM_CS_ADD_CONTACT, status - tot je smisl, 4to v MRIM_CS_USER_STATUS. Serverniy flag v danniy moment opredelёn odin - CONTACT_INTFLAG_NOT_AUTHORIZED ozna4aet, 4to kontakt e6e ne avtorizoval pol'zovatela i naxoditsa v gruppe "Jdu avtorizacii". Esli maska kontakta ili gruppi soderjit bol'6e simvolov, 4em neobxodimo, klient doljen pro4itat' zna4enia etix poley i proignorirovat' ix.

  • Paket: Informacia o pol'zovatele

    Ima paketa: MRIM_CS_USER_INFO
    Tip paketa: sc
    Parametri:

    LPS, LPS, ... ##name1, value1, name2, value2, ... ## dopolnitel'naa informacia o pol'zovatele, ima parametra, zna4enie parametra, ima parametra, zna4enie parametra, ... Na danniy moment opredeleni MESSAGES.TOTAL - koli4estvo pisem v a6ike, MESSAGES.UNREAD - koli4estvo nepro4itannix pisem v a6ike, MRIM.NICKNAME - nik pol'zovatela

  • Paket: Avtorizacia

    Ima paketa: MRIM_CS_LOGIN2
    Tip paketa: cs
    Parametri:

    LPS ## login ## email avtorizuu6egosa pol'zovatela
    LPS ## password ## parol'
    UL ## status ## status (sm. MRIM_CS_CHANGE_STATUS)
    LPS ## user_agent ## tekstovoe opisanie klienta pol'zovatela, naprimer "Mail.Ru Miranda Plugin v 1.0"

  • Paket: Pereda4a faylov

    Ima paketa: MRIM_CS_FILE_TRANSFER
    Tip paketa: cs/sc
    Parametri:

    LPS - komu(dla otpravlau6iego xosta)/ot kogo(dla prinimau6ego xosta)
    DWORD - unikal'niy identifikator sessii pereda4i faylov
    DWORD - Summarniy razmer vsex peredavaemix faylov.
    LPS - Stroka, soderja6aa v sebe tri LPS-podstroki:

    LPS - stroka s opisaniem vsex peredavaemix faylov. Imeet sleduu6iy format "#FILENAME#:#SIZE#;#FILENAME#:#SIZE#;", gde #FILENAME# - ima kajdogo peredavaemogo fayla, #SIZE# razmer kajdogo peredavaemogo fayla.
    LPS - Stroka sey4as ravna 0.
    LPS - stroka s pere4isleniem adresa i porta, kotorie otkril dla pereda4i xost, iniciirovav6iy soedinenie. Imeet sleduu6iy format: "#IP#:#PORT#;#IP#:#PORT#;", gde #IP# - tcp/ip adres peredau6ego xosta, #PORT# - tcp/ip port peredau6ego xosta

  • Paket: Podtverjdenie pereda4i faylov

    Ima paketa: MRIM_CS_FILE_TRANSFER_ACK
    Tip paketa: cs/sc
    Parametri:

    DWORD - status

    FILE_TRANSFER_STATUS_OK - udalenniy xost soglasilsa na priem faylov
    FILE_TRANSFER_STATUS_DECLINE - udalenniy xost otkazalsa prinimat' fayli
    FILE_TRANSFER_STATUS_ERROR - pri pereda4e faylov proizo6la o6ibka
    FILE_TRANSFER_STATUS_INCOMPATIBLE_VERS - udalenniy xost ne podderjivaet pereda4u faylov
    FILE_TRANSFER_MIRROR - udalenniy xost zaprosil "zerkal'noe" soedinenie.Otpravlaetsa v slu4ae, esli ne udalos' soedineit'sa po ukazannim v MRIM_CS_FILE_TRANSFER param #IP#:#PORT#

    LPS - komu(dla otpravlau6iego xosta)/ot kogo(dla prinimau6ego xosta)
    DWORD - unikal'niy identifikator sessii pereda4i faylov
    LPS - Stroka ispol'zuetsa v slu4ae ustanovki v pole status zna4enia FILE_TRANSFER_MIRROR i soderjit stroku s pere4isleniem adresa i porta, kotorie otkril dla pereda4i xost, zaprosiv6iy zerkal'noe soedinenia. Imeet sleduu6iy format: "#IP#:#PORT#;#IP#:#PORT#;", gde #IP# - tcp/ip adres peredau6ego xosta, #PORT# - tcp/ip port peredau6ego xosta:

    Opisanie: Esli soedinenie mejdu klientami ustanovleno, to ob6enie mejdu xostami osu6estvlaetsa po sleduu6ey sxeme:
    Klient (kto vipolnil connect() ):posilaet stroku "MRA_FT_HELLO svoy_login" i ojidaet stroku «MRA_FT_HELLO login_opponenta»
    Server (k komu ustanovlen connect() ): ojidaet stroku "MRA_FT_HELLO login_opponenta" posilaet stroku «MRA_FT_HELLO svoy_login»
    Dalee, klient posilaet na kajdiy fayl iz spiska zapros: "MRA_FT_GET_FILE ima_fayla_bez_puti", posle etogo on polu4aet rovno stol'ko bayt, skol'ko bilo ukazano v razmere fayla v spiske. Zatem polu4atel' posilaet sleduu6iy zapros "MRA_FT_GET_FILE ima_fayla_bez_puti" i.t.d.

3
Создание эксклюзивных сайтов, юзибилити анализ и бесплатный анализ под запросы основных поисковых машин
Контактная информация :
тел. +7(98I) 7608865

Написать письмо на e-mail
icq 415547094  romverрейтинг на mail.ru сайта romverinbox.ru
© 1997 - 2024 romver.ru

Полная карта сайта Display Pagerank