Link the AMQP channel to the process listening, so that it can correct server problems.
authorMatt Mullins <mmullins@mmlx.us>
Sun, 28 Aug 2011 20:37:14 +0000 (15:37 -0500)
committerMatt Mullins <mmullins@mmlx.us>
Sun, 28 Aug 2011 20:37:14 +0000 (15:37 -0500)
amqp/amqp_bot_listener.erl

index 3fde833..0b54c34 100644 (file)
 %%
 %% Note this calls basic.consume with no_ack=true, so messages are
 %% automatically removed from the queue when they occur
+%%
+%% This links the Channel to the current process so that it can handle, for
+%% instance, the AMQP server dying.
 listen_for_events(RoutingKeyString) ->
     {ok, Channel} = amqp_bot_connection:open_channel(),
+    link(Channel),
     RoutingKeyBinary = list_to_binary(RoutingKeyString),
     Pid = self(),
     #'exchange.declare_ok'{} = amqp_channel:call(Channel,