|
|
@@ -179,7 +179,9 @@
|
|
|
(defun process-rates ()
|
|
|
(handler-case
|
|
|
(push-circular (cons (local-time:timestamp-to-unix (local-time:now))
|
|
|
- (get-rates))
|
|
|
+ (list* (cons "Brent"
|
|
|
+ (get-brent))
|
|
|
+ (get-rates)))
|
|
|
*per-minute-rates*)
|
|
|
(error (e) (log:error e))))
|
|
|
|
|
|
@@ -187,8 +189,11 @@
|
|
|
(log:info "handle-cmd-rates" chat-id message-id args)
|
|
|
(let ((rates (rest (peek-circular *per-minute-rates*))))
|
|
|
(telegram-send-message chat-id
|
|
|
- (format nil "Зеленый ~A, гейро ~A, британец ~A"
|
|
|
- (cdar rates) (cdadr rates) (cdaddr rates)))))
|
|
|
+ (format nil "Зеленый ~A, гейро ~A, британец ~A, чёрная ~A"
|
|
|
+ (aget "USD/RUB" rates)
|
|
|
+ (aget "EUR/RUB" rates)
|
|
|
+ (aget "GBP/RUB" rates)
|
|
|
+ (aget "Brent" rates)))))
|
|
|
|
|
|
(defun handle-cmd-charts (chat-id message-id args)
|
|
|
(log:info "handle-cmd-charts" chat-id message-id args)
|
|
|
@@ -197,13 +202,18 @@
|
|
|
(let* ((usd (or (null args) (find "usd" args :test #'equal)))
|
|
|
(eur (or (null args) (find "eur" args :test #'equal)))
|
|
|
(gbp (or (null args) (find "gbp" args :test #'equal)))
|
|
|
+ (brent (or (null args) (find "brent" args :test #'equal)))
|
|
|
(rates (rest (peek-circular *per-minute-rates*))))
|
|
|
(if (or usd eur gbp)
|
|
|
(telegram-send-photo chat-id
|
|
|
(make-chart *per-minute-rates*
|
|
|
- :usd usd :eur eur :gbp gbp)
|
|
|
- :caption (format nil "Зеленый ~A, гейро ~A, британец ~A"
|
|
|
- (cdar rates) (cdadr rates) (cdaddr rates)))
|
|
|
+ :usd usd :eur eur
|
|
|
+ :gbp gbp :brent brent)
|
|
|
+ :caption (format nil "Зеленый ~A, гейро ~A, британец ~A, чёрная ~A"
|
|
|
+ (aget "USD/RUB" rates)
|
|
|
+ (aget "EUR/RUB" rates)
|
|
|
+ (aget "GBP/RUB" rates)
|
|
|
+ (aget "Brent" rates)))
|
|
|
(telegram-send-message chat-id "Хуй тебе")))
|
|
|
(error (e)
|
|
|
(log:error e)
|