1
0

vk.lisp 1.0 KB

12345678910111213141516171819202122232425
  1. (in-package #:chatikbot)
  2. (defparameter +vk-api-url+ "https://api.vk.com/method/~A?v=5.34" "VK.com API endpoint")
  3. (defun %vk-api-call (method &optional args)
  4. (let* ((params (loop for (k . v) in args
  5. when v
  6. collect (cons
  7. (princ-to-string k)
  8. (princ-to-string v))))
  9. (response (json-request (format nil +vk-api-url+ method)
  10. :method :post
  11. :parameters params)))
  12. (when (aget "error" response)
  13. (error (aget "error_msg" (aget "error" response))))
  14. (aget "response" response)))
  15. (defun vk-wall-get (&key owner-id domain offset count filter extended)
  16. (%vk-api-call "wall.get"
  17. (list (cons "owner_id" owner-id)
  18. (cons "domain" domain)
  19. (cons "offset" offset)
  20. (cons "count" count)
  21. (cons "filter" filter)
  22. (cons "extended" extended))))