Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[jsk_fetch_startup/kithcen] Change description with using notify-recognition #343

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 42 additions & 20 deletions jsk_fetch_robot/jsk_fetch_startup/euslisp/navigation-utils.l
Original file line number Diff line number Diff line change
Expand Up @@ -415,7 +415,8 @@ Args:
(notify-app "object recognition"
(send msg :header :stamp)
location
(format nil "~A is found" label-names)))))
(format nil "~A is found" label-names))
label-names)))

(defun notify-co2 (&key (location "kitchen"))
(let* ((msg (one-shot-subscribe "/eco2" std_msgs::UInt16
Expand Down Expand Up @@ -759,14 +760,14 @@ Args:
'(lambda (userdata)
(let ((light-on (get-light-on)))
(setf (cdr (assoc 'initial-light-on userdata)) light-on)
(set-alist 'description "電気がついているか確認したよ" userdata)
(if light-on
(set-alist 'description "電気がついていたよ" userdata)
(set-alist 'description "電気がついていなかったよ" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
light-on)))
(:report-light-on
'(lambda (userdata)
(report-light-on)
(set-alist 'description "電気がついていたよ" userdata)
(set-alist 'image "" userdata)
t))
(:room-light-on
'(lambda (userdata)
Expand All @@ -781,7 +782,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-dock-front-trial userdata)))
(success (move-to-dock-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-dock-front userdata)) success)
(set-alist 'description "ドックの前に移動したよ" userdata)
(if success
(set-alist 'description "ドックの前に移動したよ" userdata)
(set-alist 'description "ドックの前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-dock-front
Expand All @@ -801,7 +804,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-tv-front-trial userdata)))
(success (move-to-tv-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-tv-front userdata)) success)
(set-alist 'description "テレビの前に移動したよ" userdata)
(if success
(set-alist 'description "テレビの前に移動したよ" userdata)
(set-alist 'description "テレビの前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-tv-front
Expand All @@ -821,7 +826,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-tv-desk-trial userdata)))
(success (move-to-tv-desk :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-tv-desk userdata)) success)
(set-alist 'description "机の前に移動したよ" userdata)
(if success
(set-alist 'description "机の前に移動したよ" userdata)
(set-alist 'description "机の前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-tv-desk
Expand All @@ -841,7 +848,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-desk-back-trial userdata)))
(success (move-to-desk-back :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-desk-back userdata)) success)
(set-alist 'description "部屋の後ろに移動したよ" userdata)
(if success
(set-alist 'description "部屋の後ろに移動したよ" userdata)
(set-alist 'description "部屋の後ろに移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-desk-back
Expand All @@ -861,7 +870,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-desk-front-trial userdata)))
(success (move-to-desk-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-desk-front userdata)) success)
(set-alist 'description "部屋の前に移動したよ" userdata)
(if success
(set-alist 'description "部屋の前に移動したよ" userdata)
(set-alist 'description "部屋の前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-desk-front
Expand All @@ -881,7 +892,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-kitchen-door-front-trial userdata)))
(success (move-to-kitchen-door-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-tv-desk userdata)) success)
(set-alist 'description "ドアの前に移動したよ" userdata)
(if success
(set-alist 'description "ドアの前に移動したよ" userdata)
(set-alist 'description "ドアの前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-kitchen-door-front
Expand All @@ -901,14 +914,18 @@ Args:
(let* ((n-trial (cdr (assoc 'n-kitchen-trial userdata)))
(success (move-to-sink-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-kitchen userdata)) success)
(set-alist 'description "キッチンに向かったよ" userdata)
(if success
(set-alist 'description "キッチンに移動したよ" userdata)
(set-alist 'description "キッチンに移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-kitchen
'(lambda (userdata)
(inspect-kitchen :tweet (cdr (assoc 'tweet userdata)))
(set-alist 'description "キッチンの様子を見たよ" userdata)
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
(let ((label-names (notify-recognition :location "kitchen"))
(notify-text (if label-names (format nil "~Aがあったよ" label-names) "")))
(inspect-kitchen :tweet (cdr (assoc 'tweet userdata)))
(set-alist 'description (format nil "キッチンの様子を見たよ。~A" notify-text) userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
t))
(:report-move-to-sink-front-failure
'(lambda (userdata)
Expand All @@ -921,13 +938,15 @@ Args:
(let* ((n-trial (cdr (assoc 'n-trashcan-trial userdata)))
(success (move-to-trashcan-front :n-trial n-trial)))
(setf (cdr (assoc 'success-go-to-trashcan userdata)) success)
(set-alist 'description "ゴミ箱の前に向かったよ" userdata)
(if success
(set-alist 'description "ゴミ箱の前に移動したよ" userdata)
(set-alist 'description "ゴミ箱の前に移動しようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:inspect-trashcan
'(lambda (userdata)
(inspect-trashcan :tweet (cdr (assoc 'tweet userdata)))
(set-alist 'description "ゴミ箱の前に行けなかったよ" userdata)
(set-alist 'description "ゴミ箱の様子を確認したよ" userdata)
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
t))
(:report-move-to-trashcan-front-failure
Expand All @@ -942,7 +961,9 @@ Args:
(let* ((n-trial (cdr (assoc 'n-dock-trial userdata)))
(success (auto-dock :n-trial n-trial :clear-costmap nil)))
(setf (cdr (assoc 'success-auto-dock userdata)) success)
(set-alist 'description "帰ってきたよ" userdata)
(if success
(set-alist 'description "帰ってきたよ" userdata)
(set-alist 'description "帰ってこようとしたけど,迷子になっちゃった" userdata))
(set-alist 'image (remove #\newline (base64encode (send *image* :serialize))) userdata)
success)))
(:auto-dock-failure
Expand All @@ -957,9 +978,10 @@ Args:
(initial-light-on (cdr (assoc 'initial-light-on userdata)))
(control-switchbot (cdr (assoc 'control-switchbot userdata))))
(if (and success-auto-dock (not initial-light-on))
(room-light-off :control-switchbot control-switchbot))
(set-alist 'description "電気を消したよ" userdata)
(set-alist 'image "" userdata))
(progn
(room-light-off :control-switchbot control-switchbot)
(set-alist 'description "電気を消したよ" userdata)
(set-alist 'image "" userdata))))
t))
(:finish
'(lambda (userdata)
Expand Down