blogue-ping.ss
(module blogue-ping mzscheme
  (require (lib "url.ss" "net")
           (lib "unitsig.ss")
           (lib "list.ss"))
  (require "blogue-sig.ss")
  (provide (all-defined))
  
  (define (ping config@)
    (define-values/invoke-unit/sig blogue-config^ config@)
    (define PING-SITES
    (list
     (make-url "http" #f "newhome.weblogs.com" #f #t (list (make-path/param "pingSiteForm" empty))
               `((name . ,SiteTitle) (url . ,SiteURL)) #f)
     (make-url "http" #f "www.technorati.com" #f #t (list (make-path/param "ping.html" empty))
               `((name . ,SiteTitle) (url . ,SiteURL)) #f)
     (make-url "http" #f "ping.blo.gs" #f #t empty
               `((name . ,SiteTitle) (url . ,SiteURL) (rssURL . ,(format "~a/RSS/index.xml" SiteURL))) #f)))
    (for-each (lambda (url)
                (printf "Pinging ~a...~n" (url->string url))
                (display-pure-port (get-pure-port url))
                (printf "~n"))
              PING-SITES)))