1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd: (C) 2002-2007 InspIRCd Development Team
6 * See: http://www.inspircd.org/wiki/index.php/Credits
8 * This program is free but copyrighted software; see
9 * the file COPYING for details.
11 * ---------------------------------------------------
18 #include "httpclient.h"
20 /* $ModDep: httpclient.h */
22 class MyModule : public Module
27 MyModule(InspIRCd* Me)
36 virtual void Implements(char* List)
38 List[I_OnRequest] = List[I_OnUserJoin] = List[I_OnUserPart] = 1;
41 virtual Version GetVersion()
43 return Version(1,0,0,1,VF_VENDOR,API_VERSION);
46 virtual void OnUserJoin(userrec* user, chanrec* channel, bool &silent)
48 // method called when a user joins a channel
50 std::string chan = channel->name;
51 std::string nick = user->nick;
52 ServerInstance->Log(DEBUG,"User " + nick + " joined " + chan);
54 Module* target = ServerInstance->FindModule("m_http_client.so");
57 HTTPClientRequest req(ServerInstance, this, target, "http://znc.in/~psychon");
61 ServerInstance->Log(DEBUG,"module not found, load it!!");
64 char* OnRequest(Request* req)
66 HTTPClientResponse* resp = (HTTPClientResponse*)req;
67 if(!strcmp(resp->GetId(), HTTP_CLIENT_RESPONSE))
69 ServerInstance->Log(DEBUG, resp->GetData());
74 virtual void OnUserPart(userrec* user, chanrec* channel, const std::string &partmessage, bool &silent)
80 class MyModuleFactory : public ModuleFactory
91 virtual Module * CreateModule(InspIRCd* Me)
93 return new MyModule(Me);
98 extern "C" void * init_module( void )
100 return new MyModuleFactory;