What is Megaphone?

What is Megaphone?
The Megaphone project is about enhancing open source chat software. Specifically, the goal is to allow ejabberd to support 1,000,000 simultaneous users. See The Plan page for more details on how I plan to solve this problem. See the About this Blog page for more details on why I created this blog.

Thursday, February 23, 2012

More Testing with ejabberd

Previously...
  • I created comments for the megaphone_sender module.
  • I fixed some stuff and ran out of excuses not to start testing with ejabberd.
  • I tried running ejabberd with megaphone: things did not go well.

Rooting around with ejabberd.cfg I found the part where it was starting up megaphone:

  {mod_version,  []},
  {mod_megaphone, []}
 ]}.

When you define a module this way, ejabberd invokes it at startup simply by calling 

<module name>:start(Host, Options)

Looking at the source for that part I found the start code:

start(_Host, _Opt) ->
    megaphone:start().

stop(_Host) -> ok.

As it turns out, megaphone does not have a start function that takes no arguments, hence the (current) problem.  I removed mod_megaphone from the ejabberd.cfg file and ejabberd was able to start up again.

One down, must more fun to go.

No comments:

Post a Comment