diff --git a/src/sockjs_multiplex_channel.erl b/src/sockjs_multiplex_channel.erl
index cbb8274..933d121 100644
--- a/src/sockjs_multiplex_channel.erl
+++ b/src/sockjs_multiplex_channel.erl
@@ -1,16 +1,16 @@
--module(sockjs_multiplex_channel, [Conn, Topic]).
+-module(sockjs_multiplex_channel).
 
--export([send/1, close/0, close/2, info/0]).
+-export([send/2, close/1, close/3, info/1]).
 
-send(Data) ->
+send(Data, {sockjs_multiplex_channel, Conn, Topic}) ->
     Conn:send(iolist_to_binary(["msg", ",", Topic, ",", Data])).
 
-close() ->
-    close(1000, "Normal closure").
+close({sockjs_multiplex_channel, _Conn, _Topic} = Close) ->
+    close(1000, "Normal closure", Close).
 
-close(_Code, _Reason) ->
+close(_Code, _Reason, {sockjs_multiplex_channel, Conn, Topic}) ->
     Conn:send(iolist_to_binary(["uns", ",", Topic])).
 
-info() ->
+info({sockjs_multiplex_channel, Conn, Topic}) ->
     Conn:info() ++ [{topic, Topic}].