Open sktometometo opened 1 year ago
デバッグで使用するsound_play
ノードとデモで喋らせるsound_play
ノードを分けるべき?
/tweet
ノードはrespawn=true
のため、rosnode kill /tweet
しても復活してしまう.
◉ Kei Okada
2022年11月18日(金) 15:26 Koki Shinjo @.***>:
/tweetノードはrespawn=trueのため、rosnode kill /tweetしても復活してしまう.
— Reply to this email directly, view it on GitHub https://github.com/jsk-ros-pkg/jsk_robot/issues/1733#issuecomment-1319601538, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADYNXBOMDC62VBTZJJ7IBTWI4OOXANCNFSM6AAAAAASEEQ6YA . You are receiving this because you are subscribed to this thread.Message ID: @.***>
/robotsound/goal に mux入れる感じですかね
アイディア的には
みたいなのを用意するという意味合いですよね, mux だとアクションの切り替えが大変になるのでノードをそもそも分けてしまった方が使用時にするべき作業がシンプルで使いやすいと思うのですがいかがでしょうか?
tweetはしゃべっていなくて tweet_warningとかです
で,ここらへんの話はどうだろう? https://github.com/jsk-ros-pkg/jsk_robot/issues/1724
dynamic_reconfigureでvolumeを0にしようとおもっているんだけど,そもそもactionすらたたかないほうがいいのかな.
audible_warning
ではenable
というdynamic_reconfigure
があって,それをfalse
にすると黙ります.
tweet_warning
はrespawn
していないので,rosnode kill
で黙ります.
ただtweet_warning
にもenable
というdynamic_reconfigure
を与えてもいい気がします.
tweetはしゃべっていなくて tweet_warningとかです
tweet_warning
の実体ってどこにありますか?
fetch@fetch1075:~/ros/melodic/src$ grep -ir tweet_warning
fetch@fetch1075:~/ros/melodic/src$
jsk_robot_startup/lifelog
かな
で,ここらへんの話はどうだろう? #1724
dynamic_reconfigureでvolumeを0にしようとおもっているんだけど,そもそもactionすらたたかないほうがいいのかな.
audible_warning
ではenable
というdynamic_reconfigure
があって,それをfalse
にすると黙ります.tweet_warning
はrespawn
していないので,rosnode kill
で黙ります. ただtweet_warning
にもenable
というdynamic_reconfigure
を与えてもいい気がします.
まったく喋りたくないわけではなくて、実験ノードは喋らせたいのでvolume変えるのは違いかと思います。
volume
はsound_play
ではなくて,各ノードが送るaction
に記述されています.
なので,audible_warning
とかtweet_client_warning
だけが黙ります.
ただvolume
が0
でもaction
がたたかれるので,それによって上書きされてしまいます.
なので正しいのはaudible_warning
と同じで,enable
みたいなdynamic_reconfigure
を作るほうが,より良い気がします.
詳しくはこちら
そちらのvolumeでしたか、各スクリプトに喋らなくするインターフェースを作る作戦はスケールしづらいと思うのですが.
あたらしく何か喋るものを作るたびに喋らなくするインターフェースを作る必要が出てきます
それは増えてから考えたらいいのでは,と思うが...
muxも結局分類していって,増える未来しか見えないし,とりあえず手っ取り早いほうでいいのでは.
とりあえずrosnode kill /tweet_client_warning
とdynamic_reconfigure
で臨むことはできるはず
よければついでに伺っておきたいのですが、 /tweet_client_hogehoge
ってそれぞれどういう用途のものですか?
mux
でもいいが,もともと僕らがやりたかったことはvolume
を下げることがなので,やりたいことが違うね.そもそも.
黙らせたいわけではなく,静かにさせたいなので.
で,黙らせるにはmux
がいいかと思います.
tweet_client_warning
がdiagnosticsに基づいてtweetしているやつ.
これがだいたい定期的に写真撮っているノードです.写真撮るときにしゃべります.
tweet_client_uptime
は起動している時間に応じてTweetしているやつです.
Fetchでこれが正しく動いていない気もしますが,たまにtweetして,そのときにしゃべります.
tweet_client_worktime
はユーザがログインしている時間に応じてTweetしているやつです.
Fetchでこれが正しく動いていない気もしますが,たまにtweetして,そのときにしゃべります.
tweet_client_tablet
は使われていませんが,tablet
からTweetするようになっていたものです.
いまは何もしていません.
北川がやっている限りだと,tweet_client_warning
を止めるだけで黙った気がしますが,上3つは止めてもいい気がします.
なるほど、ありがとうございます。あとdevelop/fetch
ブランチだと jsk_3rdparty/rostwitter
の tweet_image_server.py
も起動していてこいつも喋りそうなコードあるんですけど使っていますか?
rostwitter
だけでは写真を撮るのが大変だったので,Actionを叩くとtweet
してくれるようにしたのがtweet_image_server.py
です.
これはtweet_client.l
の一部をPython化しているもので,このActionを叩くように全部していけば,ここのノードさえ黙ってくれれば,1つを黙らせるだけでいいことになりますね.
それを少しやってみようかと思います.
音声を利用する実験をする際に、以下のノードが勝手に喋るために動画の撮影をやり直す必要があることがある。 実験中には喋らないような機構を用意したい。
他にあれば追記お願いします。