Implementation namespace for discljord.messaging
.
Implementation namespace for `discljord.messaging`.
(defdispatch endpoint-name
[major-var & params]
[& opts]
opts-sym
method
status-sym
body-sym
url-str
method-params
promise-val)
(derefable-promise-chan)
(derefable-promise-chan xform)
(derefable-promise-chan xform ex-handler)
Creates an implementation of [[clojure.lang.IDeref]] which is also a core.async chan.
Creates an implementation of [[clojure.lang.IDeref]] which is also a core.async chan.
Takes a process and endpoint, and dispatches an http request. Must return the response object from the call to allow the runtime to update the rate limit.
Takes a process and endpoint, and dispatches an http request. Must return the response object from the call to allow the runtime to update the rate limit.
(make-request! token rate-limits global-limit endpoint event-data bucket)
Makes a request after waiting for the rate limit, retrying if necessary.
Makes a request after waiting for the rate limit, retrying if necessary.
(rate-limited? rate-limit)
Returns the number of millis until the limit expires, or nil if not limited
Returns the number of millis until the limit expires, or nil if not limited
(start! token)
Takes a token for a bot and returns a channel to communicate with the message sending process.
Takes a token for a bot and returns a channel to communicate with the message sending process.
(step-agent process [endpoint & event-data :as event])
Takes a process and an event, and runs the request, respecting rate limits
Takes a process and an event, and runs the request, respecting rate limits
(stop! channel)
Takes the channel returned from start! and stops the messaging process.
Takes the channel returned from start! and stops the messaging process.
(update-rate-limit rate-limit headers)
Takes a rate-limit and a map of headers and returns an updated rate-limit.
If rate limit headers are included in the map, then the rate limit is updated to them, otherwise the existing rate limit is used, but the remaining limit is decremented.
Takes a rate-limit and a map of headers and returns an updated rate-limit. If rate limit headers are included in the map, then the rate limit is updated to them, otherwise the existing rate limit is used, but the remaining limit is decremented.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close