GithubHelp home page GithubHelp logo

discljord-utils's People

Contributors

pmonks avatar

Stargazers

 avatar

Watchers

 avatar  avatar

discljord-utils's Issues

But with `send-dm!` (not derefering the channel object)

(defn send-dm!
  "Convenience method that creates a DM channel to the specified user and sends the given message to them."
  [discord-message-channel user-id message]
  (let [dm-channel (dr/create-dm! discord-message-channel user-id)
        channel-id (:id dm-channel)]
    (dr/create-message! discord-message-channel channel-id :content message)))

(defmethod handle-event :message-create [_ {:keys [channel-id id] :as data}]
  (println data)
  (println
   @(send-dm!
     (:rest @state)
     (-> data :author :id)
     (str "Hello " (-> data :author :username)))))

(where dr is discljord.messaging)

something like this would result in an error:

#error {
 :cause 
 :data {:message 405: Method Not Allowed, :code 0}
 :via
 [{:type clojure.lang.ExceptionInfo
   :message 
   :data {:message 405: Method Not Allowed, :code 0}
   :at [discljord.messaging.impl$eval16286$fn__16288 invoke impl.clj 153]}]
 :trace
 [[discljord.messaging.impl$eval16286$fn__16288 invoke impl.clj 153]
  [clojure.lang.MultiFn invoke MultiFn.java 239]
  [discljord.messaging.impl$make_request_BANG_$make_request__18011 invoke impl.clj 796]
  [discljord.messaging.impl$make_request_BANG_ invokeStatic impl.clj 801]
  [discljord.messaging.impl$make_request_BANG_ invoke impl.clj 775]
  [discljord.messaging.impl$step_agent$fn__18035 invoke impl.clj 846]
  [clojure.core$binding_conveyor_fn$fn__5772 invoke core.clj 2037]
  [clojure.lang.AFn applyToHelper AFn.java 154]
  [clojure.lang.RestFn applyTo RestFn.java 132]
  [clojure.lang.Agent$Action doRun Agent.java 114]
  [clojure.lang.Agent$Action run Agent.java 163]
  [java.util.concurrent.ThreadPoolExecutor runWorker ThreadPoolExecutor.java 1130]
  [java.util.concurrent.ThreadPoolExecutor$Worker run ThreadPoolExecutor.java 630]
  [java.lang.Thread run Thread.java 831]]}

the promise returned by create-dm! needs to be derefered then it works

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.