Létrehozása plug-in mychat
MyChat - nem csak a chat a hálózat, vagy a vállalati azonnali üzenetküldő. Az is nagyon rugalmas és bővíthető rendszer, be lehet állítani szinte minden igényeit.
Kezdjük egy cikksorozatot írt programok-kiegészítők MyChat Client. Mivel a téma igen nagy, és a lehetőségek, amelyeket ez a technológia - nagyon széles, a cikkek elég lesz.
Ahhoz, hogy sikeresen létrehozni egy programot-kiegészítők MyChat olvasó elég lesz az alap, a nyelvtudás és a Delphi programozási környezet. Verzió - alapvetően nem fontos, de a cikk középpontjában a Delphi 7 és az összes példák kap, tekintettel a programozási környezet.
1. Mi az a bővítmény?
Szigorúan véve, a program és a plug-szülő is lehet írva a különböző programozási nyelvek, a legfontosabb dolog -, hogy tartsa be a megfelelő megállapodás funkció hívások és paraméterátadás.
Ahhoz, hogy csatlakoztassa a vevőt tehetne valami hasznosat - a MyChat egy speciális mechanizmus MyChat Plugins SDK. Egyszerűen fogalmazva - ez egy sor olyan funkcióval is okozhat egy dugó és egy sor olyan funkcióval is okozhat egy programot a dugót.
2. Architecture MyChat
Ahhoz, hogy sikeresen létrehozni egy programot a kiegészítőket - a fejlesztő kell érteni a rendszer a program, amelynek keretében létre fog hozni semmit. Ezért röviden ismerteti a művelet áramkör MyChat.
MyChat - egy kliens-szerver többfelhasználós chat. Minden kliens csatlakozni egy szerveren, és minden ügyfél-kiszolgáló létrehoz egy speciális adatszerkezet, mely a memóriában, míg az ügyfél az interneten.
Minden regisztrált ügyfél számos rendszer - UIN. Más szóval - egy egyedi azonosítót, a szokásosnál nagyobb, mint nulla. Ez a szám nem lehet változtatni, és ő tartozik az ügyfél attól a pillanattól kezdve a regisztráció a szerveren. Ha a felhasználó eltávolítására - UIN nem szabadul, és az új lelátókon. Ez biztosítja a integritását az adatbázis szerver.
A MyChat is a csatornák koncepciója, vagy konferenciák. A csatornák, amikor a felhasználó üzenetet küld - ez a termék az összes emberek, akik az adott személy, egy csatornában. Csatornák, vagy szoba, lehet különböző nevek - de mindegyik MyChat kiszolgáló csatornák is jelöljön ki egy külön szám - az UID. Ezzel szemben a felhasználói számot, amely soha nem változik - UID dinamikusan osztja, míg a szerver fut. Míg csatorna létezik - van egy szám. Ha ki a csatorna minden ember - automatikusan törlődik. UID - ez is egy nullánál nagyobb szám. UID nem ismétlődnek, de fontos megjegyezni -, hogy létre egy UID nem csatorna független a csatorna neve - és sleduyushem távon lehet, hogy egy másik szerverre. S UID látható a szerver futása, vagy az ügyfél, a „csatornák”.
3. Plugin menedzser
Most, hogy már többé-kevésbé ismert a rendszer a munka a rendszer lépni a tanulmány a legtöbb plug-in rendszer MyChat Client.
A bővítmény egy olyan dinamikus könyvtár (DLL). A MyChat feltételezzük, hogy egy kiterjesztésű fájl .mcp (MyChat Plugin Library). Csatlakozás ezek a programok kiegészítői a „menedzser plugins” a főmenüből az ügyfél „Plugins” - „Manage plugins” vagy gyorsgomb Alt + P.
Plugin menedzser a következő:
A megkülönböztető jegye a rendszer szoftver-kiegészítések MyChat hogy plugins tölthető megtöltve, ki és bekapcsolni újraindítása nélkül MyChatClient -. „On the fly” Ez nagyban leegyszerűsíti az élet fejlesztők és nagymértékben gyorsítja a teremtés és hibakeresési folyamat.
A MyChat egyes plug-in kell cím, ezzel nevének egyedinek kell lennie. Ie Nem lehet két plugins terhelni az azonos nevet. Szemben minden letöltött plugint az oszlop „Megnevezés bővítmény” lehet eltávolítani a kullancsot -, akkor a plugin lesz, mint a „befagyott” állapotban van. Ő betöltött -, de nem aktív. A gomb „feltöltés bővítményt” kirak a bővítmény a memóriából, és a „feltöltés bővítményt” - megnyit egy fájl letöltése párbeszédpanelen, majd válassza ki a szükséges plugint egyszerűen másolja a fájlt a felhasználó profiljának és betölti.
Duplán kattintva a bal egérgombbal, vagy nyomja meg a „A bővítmény” gomb jelenik meg az információs ablak egy összefoglaló információt a dugó és a szerző:
Mindezek az információk tárolása a plug-in különleges világosan leírt adatszerkezet. Így a fejlesztők erősen ösztönözte őt, hogy töltse ki a J
4. Hogy a dugó a MyChat?
Minden plug-in MyChat áll legalább három fájlt:
- DPR-fájlt a projekt
- mcplugin_func.pas - könyvtári funkciók SDK. Nem lehet megváltoztatni;
- mcplugin_info.pas - információs modul, biztos, hogy töltse ki az összes mezőt.
Minden funkció a plugin lehet osztani két típusa van: a funkció, ami miatt MyChat Client programot egy plug - az eseményeket, amelyek előfordulnak a chat. Nevezzük őket feltételes „események”, a második típusú -. Vannak funkciók, hogy a bővítmény okai MyChat Client programot - nevezzük őket „eszközök”.
A jövőben, akkor ragaszkodni ezt a terminológiát, hogy a félreértések elkerülése végett a hozzárendelt funkció.
Major Program MyChat Client. ebből bővítmények futtatásához lesz az úgynevezett „fő”.
A terminológia meghatározása, most van itt az ideje, hogy megpróbálja, hogy bármit hasznos.
5. Az első egy egyszerű plugin MyChat
Hosszú hagyománya, az első program programozó megjeleníti szakrális „Hello world! . „Mi nem lesz sok, hogy az eredeti, és nem valami hasonlót tekintetében MyChat.
Legyen a mi első bővítmény kattintva a jobb egérgombbal a csatorna a helyi menü megjelenítéséhez a nevét a dugó kattintva a csatornát, amelyben az üzenet elküldésre kerül a nevünkben - „Hello world! ”.
Látjuk a fő modul plug-in:
Az első dolog, amit tenned kell - hívja fel a plugin. Cserélje ki a szót üres a fejlécben a könyvtár librarymyfirstplugin. Ide Delphi menüt. „File” - „Projekt mentése másként ...”, és mentse el a projektet.
A második - töltse ki információt. Menj a mcplugin_info modul (Ctrl + kattintás a bal egérgombbal a modul nevét a felsorolt felhasználási módok):
Töltse ki a szükséges információk:
A lényeg! Annak érdekében, hogy integrálni kell a helyi menü jelenik meg, amikor az egér jobb gombjával gombot a csatorna, telepíteni kell pluginPopupMenuUserInChannelText állandó egységenként.
Most, hogy az előkészületek befejezése, itt az ideje, hogy írjon egy darab kódot, amely minden, és indult J
6. Az írás a kódot
Mozgó a projekt fájl (DPR). Most meg kell találni az eseményt. amelyet elindíthatja kattintva a plug-in menüben. Ez a funkció mcPluginOnClickPopupMenuChannelWindowText.
Találunk a kívánt funkciót, és írd be az alábbi kódot:
mcSendMessageToTextChannel funkciót. mi hívjuk a kódot -, hogy küldjön egy SMS-t a csatorna. Mivel UID csatorna tudjuk (továbbadják az esemény-funkció), akkor könnyen küld egy üzenetet, hogy azonnal ezen a csatornán.
Nyomja meg a Ctrl + F9. Összeállítjuk a projekt és a terhelés myfirstplugin.mcp fájlt. amit kap eredményeként összeállításának, a „Plugin Manager” MyChat Client.
A bővítmény betöltése sikeres.
7. Hogyan működik?
Tolja a csatorna bármely helyen az üzenet ablakban jobb egérgombbal, és tekintse meg a plugin:
Ha rákattint a nevére a plug-in menüben és - íme:
8. Következtetés
A „Dugó” a hivatalos honlapján a Network Software Solutions, akkor töltse le a forráskódok különböző programok kiegészítőket, hogy hogyan lehet kihasználni a hatalom MyChat Plugins SDK „teljes”.
Teljes forráskód plug-in szó ebben a cikkben, valamint egy összeállított könyvtár letölthető itt