Welcome to the CHICKEN Scheme pasting service

chicken any.do api added by sethalves on Thu Aug 29 02:11:25 2013

#! /bin/sh
#| -*- scheme -*-
exec csi -s $0 "$@"
|#

(use http-client)
(use intarweb)
(use uri-common)
(use json)


(define (spring-security-check)
  (with-input-from-request
   (make-request
    uri: (uri-reference "https://sm-prod.any.do/j_spring_security_check")
    method: 'POST
    headers: (headers
              `((content-type #(application/x-www-form-urlencoded ())))))
   (let* ((cred-hndl (open-input-file "credentials"))
          (username (read-line cred-hndl))
          (password (read-line cred-hndl)))
     (close-input-port cred-hndl)
     `(("j_username" . ,username)
       ("j_password" . ,password)
       ("_spring_security_remember_me" . "on")))
   (lambda () #t )))


(define (me)
  (with-input-from-request
   "https://sm-prod.any.do/me" #f json-read))


(define (categories)
  (with-input-from-request
   (string-append "https://sm-prod.any.do/me/categories"
                  "?responseType=flat"
                  "&includeDeleted=false"
                  "&includeDone=false")
   #f json-read))


(define (tasks)
  (with-input-from-request
   (string-append "https://sm-prod.any.do/me/tasks"
                  "?responseType=flat"
                  "&includeDeleted=false"
                  "&includeDone=false")
   #f json-read))


(define (main-program)
  (receive (result request-uri response)
           (spring-security-check)
           (display "spring-security-response: ")
           (display (response-class response))
           (newline))

  (receive (me-result request-uri response)
           (me)
           (printf "me-response: ~S\n~S\n\n\n"
                   (response-class response)
                   me-result))

  (receive (cat-result request-uri response)
           (categories)
           (printf "categories-response: ~S\n~S\n\n\n"
                   (response-class response)
                   cat-result))

  (receive (tasks-result request-uri response)
           (tasks)
           (printf "tasks-response: ~S\n~S\n\n\n"
                   (response-class response)
                   tasks-result))
  )

(main-program)

Your annotation:

Enter a new annotation:

Your nick:
The title of your paste:
Your paste (mandatory) :
What's the Makefile target to generate the bootstrap compiler of CHICKEN?
Visually impaired? Let me spell it for you (wav file) download WAV