Selaa lähdekoodia

New Markdown support

Innocenty Enikeew 10 vuotta sitten
vanhempi
commit
c56ad45642
2 muutettua tiedostoa jossa 8 lisäystä ja 5 poistoa
  1. 5 2
      chatikbot.lisp
  2. 3 3
      rss.lisp

+ 5 - 2
chatikbot.lisp

@@ -190,9 +190,10 @@
   (log:info "handle-cmd-rates" chat-id message-id args)
   (multiple-value-bind (ts usd eur gbp brent btc) (db-get-last-finance)
     (telegram-send-message chat-id
-                           (format nil "Зеленый ~,2F, гейро ~,2F, британец ~,2F, чёрная ~,2F, btc ~,2F @ ~A"
+                           (format nil "Зеленый *~,2F*, гейро *~,2F*, британец *~,2F*, чёрная *~,2F*, btc *~,2F* @ _~A_"
                                    usd eur gbp brent btc
-                                   (format-ts (local-time:unix-to-timestamp ts))))))
+                                   (format-ts (local-time:unix-to-timestamp ts)))
+                           :parse-mode "Markdown")))
 
 (defparameter +chart-ranges+ (list (cons "day" (* 24 60))
                                    (cons "week" (* 7 24 60))
@@ -417,6 +418,7 @@
               (telegram-send-message chat-id
                                      (format nil "~{~A~^~%~%~}"
                                              (mapcar #'format-feed-item items))
+                                     :parse-mode "Markdown"
                                      :disable-web-preview 1))))
     (error (e)
       (log:error e)
@@ -430,6 +432,7 @@
           (dolist (chat-id (db-rss-get-feed-chats feed))
             (telegram-send-message chat-id
                                    (format-feed-item item)
+                                   :parse-mode "Markdown"
                                    :disable-web-preview 1)))
         (db-rss-update-feed feed)) ;; Update next fetch and period
     (error (e) (log:error e))))

+ 3 - 3
rss.lisp

@@ -86,15 +86,15 @@
                                     (date-time-parser:parse-date-time pub))))))))
 
 (defun format-feed-item (item)
-  (format nil "~A~@[ @ ~A~]~%~A~%~A"
+  (format nil "[~A](~A)~@[ @ ~A~]~%~A~%"
           (feed-title (feed-item-feed item))
+          (feed-item-link item)
           (alexandria:when-let (ts (feed-item-published item))
             (local-time:format-timestring
              nil ts
              :format '((:year 2) "-" (:month 2) "-" (:day 2)
                        " " (:hour 2) ":" (:min 2))))
-          (feed-item-title item)
-          (feed-item-link item)))
+          (feed-item-title item)))
 
 (defun feed-next-fetch-unix (feed)
   (alexandria:when-let (ts (feed-next-fetch feed))