If I try to call the close method on an instance of discord.bot.DiscordBot, I get the error IllegalArgumentException No implementation of method: :close of protocol: #'gniazdo.core/Client found for class: clojure.lang.Atom clojure.core/-cache-protocol-fn (core_deftype.clj:583).
@codonnell I think I've fixed this issue in this commit. Also added an Admin protected shutdown command that performs the close. Let me know if you're still seeing issues :)
If I try to call the close method on an instance of
discord.bot.DiscordBot
, I get the errorIllegalArgumentException No implementation of method: :close of protocol: #'gniazdo.core/Client found for class: clojure.lang.Atom clojure.core/-cache-protocol-fn (core_deftype.clj:583)
.I believe the reason is that https://github.com/gizmo385/discord.clj/blob/master/src/discord/gateway.clj#L52 should deref the websocket atom with
(ws/close @(:websocket this))
. I'd be happy to submit a PR, but it seems a little silly for such a small change.Thanks for all the work you've put into this! :+1: