LoginSignup

Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

53
45

More than 5 years have passed since last update.

ๆœๅฐ‚็”จใƒ€ใƒƒใ‚ทใƒฅใƒœใƒผใƒ‰ onTV #powered by RaspberryPi and Dashing

Last updated at Posted at 2017-10-15

ใฏใ˜ใ‚ใซ

ใชใ‚“ใงๆœใฎๆƒ…ๅ ฑใƒ†ใƒฌใƒ“็•ช็ต„ใฃใฆใ€ใ‚ใ‚“ใชใซ้ข็™ฝใ„ใ‚“ใงใ™ใ‹ใญ๏ผŸ
ใคใ„ๆ™‚้–“ใ‚’ๅฟ˜ใ‚Œใฆใ‚ฌใƒณ่ฆ‹ใƒปใƒปใƒปใกใƒปใกใƒป้…ๅˆปใƒปใƒปใƒปใ€‚

ใชใฎใงใ€ใ€Œๆœๅฐ‚็”จใƒ€ใƒƒใ‚ทใƒฅใƒœใƒผใƒ‰ใ€ใ‚’ไฝœใ‚Šใพใ—ใŸใ€‚
ใ“ใ‚Œใงใƒ†ใƒฌใƒ“ใ‚’่ฆ‹ใšใซๆœ€ไฝŽ้™ใฎๆƒ…ๅ ฑใ‚’ใ‚ฒใƒƒใƒˆใงใใพใ™ใ€‚

mornig1.png

ๅทฆไธŠใ‹ใ‚‰

  • ใƒ‡ใ‚ธใ‚ฟใƒซๆ™‚่จˆ
  • ่ทฏ็ทš้‹่กŒ็Šถๆณ๏ผˆๆจชๆตœๅœจไฝ๏ผ‰
  • Googleใƒ‹ใƒฅใƒผใ‚น(ใ‚จใƒณใ‚ฟใƒก)
  • ไปŠๆ—ฅใฎๅคฉๆฐ—๏ผˆๅˆๅ‰|ๅˆๅพŒ๏ผ‰
  • ้€ฑ้–“ๅคฉๆฐ—

็™ฝๅœฐใซ้ป’ๆ–‡ๅญ—ใงใ‚นใ‚ฟใ‚คใƒชใƒƒใ‚ทใƒฅใซใ€‚

ไธ‹ใฎๆ–นใซใƒฉใ‚บใƒ‘ใ‚คใŒใถใ‚‰ไธ‹ใŒใฃใฆใ‚‹ใฎใŒ่ฆ‹ใˆใพใ™ใ€‚#ใ‚นใ‚ฟใ‚คใƒชใƒƒใ‚ทใƒฅ๏ฝ—

ๅฐ‘ใ—ๅคใ„ใงใ™ใŒใ€้ป’่ƒŒๆ™ฏใƒใƒผใ‚ธใƒงใƒณใ‚‚
mornig2.png

ใƒใƒผใƒ‰

RaspberryPi3
TV
HDMIใ‚ฑใƒผใƒ–ใƒซ

ใ‚ฝใƒ•ใƒˆ

raspbian๏ผš2017-09-07-raspbian-stretch
Dashing

Dasing

ใ“ใ“ใงไปŠๅ›žไฝฟใ†ใƒกใ‚คใƒณใฎใƒ€ใƒƒใ‚ทใƒฅใƒœใƒผใƒ‰(KIOSK/ใ‚ตใ‚คใƒใƒผใ‚ธ)ใƒ•ใƒฌใƒผใƒ ใƒฏใƒผใ‚ฏใ‚’็ดนไป‹ใ—ใพใ™ใ€‚
ๆœฌๆฅใฎใ€ŒDashingใ€ใ‚‚ใฃใจใ‚ซใƒฉใƒ•ใƒซใงใ™ใ€‚ๆœฌๅฎถใฎใ‚ตใƒณใƒ—ใƒซใ‚’่ฆ‹ใ‚‹ใจใ„ใ„ใงใ—ใ‚‡ใ†ใ€‚
Dashingใฏใ€sinatraใƒ™ใƒผใ‚นใง Widgetใจใ„ใ†ใ‚ณใƒณใƒใƒผใƒใƒณใƒˆใ‚’็ต„ใฟๅˆใ‚ใ›ใฆๆง‹ๆˆใ—ใพใ™ใ€‚
Widgetใฏใ€html/ruby/scss/coffee ใฎ็ต„ใฟๅˆใ‚ใ›ใงๅ‡บๆฅใฆใ„ใพใ™ใ€‚ใใ‚“ใชใซๆทฑใ„็Ÿฅ่ญ˜ใฏใ„ใ‚‰ใชใ„ใฎใงใ€ใใ‚Œใžใ‚Œใฎๅ…ฅ้–€ใซใ‚‚ใ„ใ„ใ‹ใ‚‚ใ—ใ‚Œใพใ›ใ‚“ใ€‚ๅ†…้ƒจใงใฎๅ‡ฆ็†ใฏใ€็ฐกๅ˜ใซไบ‘ใ†ใจ rubyโ†’coffeeโ†’scssโ†’html ใฎ้ †ใ ใจๆ€ใฃใฆใ„ใ„ใจๆ€ใ„ใพใ™ใ€‚
rubyใงใ‚ฟใ‚คใƒžใƒผใซใ‚ˆใ‚‹ๅ†่ตทๅ‡ฆ็†ใŒ่กŒใ‚ใ‚Œใ€ใใ“ใงๅค–้ƒจAPIใชใฉใงใƒ‡ใƒผใ‚ฟใ‚’ๅ–ๅพ—ใ—ใฆใ€coffee ใงHTMLใฎๆง‹ๆˆใ‚’่กŒใ„ใ€scssใง่ฆ‹ใŸ็›ฎใ‚’่ชฟๆ•ดใ™ใ‚‹ๆ„Ÿใ˜ใงใ™ใ€‚1ใคใฎWidgetใซใใ‚Œใžใ‚Œใฎใƒ•ใ‚กใ‚คใƒซใ‚’ไฝœๆˆใ™ใ‚‹ใฎใงๅˆ†ใ‹ใ‚Šใ‚„ใ™ใ„ใงใ™ใ€‚Widgetใฎไฝœๆˆใฎไป•ๆ–นใฏใ“ใ“ใŒๅˆ†ใ‹ใ‚Šใ‚„ใ™ใ‹ใฃใŸใงใ™ใ€‚

ใ“ใ“ใพใงๆฅใฆใชใ‚“ใงใ™ใŒใ€ Dashing ใŒ้–‹็™บไธญๆญขใง smashing ใจใ„ใ†ๅˆ†ๅฎถใงไฟๅฎˆใ•ใ‚Œใฆใ„ใพใ™ใ€‚

็งใฏๆœฌๅฎถใฎ Dashing ใ‚’ไฝฟ็”จใ—ใพใ—ใŸ๏ผˆไธญๆญขใ•ใ‚Œใฆใ„ใ‚‹ใฎใซๆฐ—ใฅใ‹ใชใ‹ใฃใŸ๏ผ‰ใ€‚
ใใฎใ†ใกใ€ๅˆฅใƒใƒผใ‚ธใƒงใƒณใงๆ›ดๆ–ฐใ—ใŸใ„ใจๆ€ใ„ใพใ™ใ€‚ใ‚‚ใ—ใ€ไธ‹่จ˜ใ‚คใƒณใ‚นใƒˆใƒผใƒซใซๅคฑๆ•—ใ—ใŸใ‚‰ smashing ใง่ฉฆใ—ใฆใฟใฆใใ ใ•ใ„ใ€‚

Dashing ใ‚คใƒณใ‚นใƒˆใƒผใƒซ

Raspbianใฎ่จญๅฎšใพใง็ต‚ใ‚ใฃใฆใ„ใ‚‹ใ“ใจใŒๅ‰ๆใงใ™ใ€‚

$ sudo gem install libssl-dev
$ sudo gem install bundler
$ sudo gem install dashing

Dashing ใ‚ตใƒณใƒ—ใƒซ

ใ“ใ“ใงใ‚ตใƒณใƒ—ใƒซใŒใ‚คใƒณใ‚นใƒˆใƒผใƒซใ•ใ‚Œใฆใ„ใ‚‹ใฎใง็ขบ่ชใ€‚

$ cd dashboard
$ bundle install
$ dashing start

Chromiumใƒ–ใƒฉใ‚ฆใ‚ถใง http://localhost:3030 ใธใ‚ขใ‚ฏใ‚ปใ‚นใ€‚
ใ“ใ“ใจๅŒใ˜ใ‚‚ใฎใŒๅ‡บใฆใใ‚ŒใฐOKใ€‚

WebAPI

ไปฅไธ‹ใฎWebใ‚ˆใ‚Šๆƒ…ๅ ฑใ‚’ๅ–ๅพ—ใ—ใฆใ„ใพใ™ใ€‚
๏ผˆใƒ‡ใ‚ธใ‚ฟใƒซๆ™‚่จˆใฏใƒ‡ใƒ•ใ‚ฉใƒซใƒˆใงใ‚ตใƒณใƒ—ใƒซใซๅ…ฅใฃใฆใ„ใพใ™๏ผ‰

Yahoo่ทฏ็ทšๆƒ…ๅ ฑ

Yahoo่ทฏ็ทšๆƒ…ๅ ฑใ‹ใ‚‰HTMLใ‚’ๅ–ๅพ—ใ—ใฆใ€NokogiriใงHTMLใƒ‘ใƒผใ‚นใ‚’ใ—ใฆใพใ™ใ€‚

jobs\train.rb
 :
def get_info(url) #url=Yahoo่ทฏ็ทšๆƒ…ๅ ฑURL(่ฉฒๅฝ“่ทฏ็ทš)
  charset = nil
  html = open(url) do |f|
    charset = f.charset # ๆ–‡ๅญ—็จฎๅˆฅใ‚’ๅ–ๅพ—
    f.read # htmlใ‚’่ชญใฟ่พผใ‚“ใงๅค‰ๆ•ฐhtmlใซๆธกใ™
  end
  # htmlใ‚’ใƒ‘ใƒผใ‚น(่งฃๆž)ใ—ใฆใ‚ชใƒ–ใ‚ธใ‚งใ‚ฏใƒˆใ‚’ไฝœๆˆ
  doc = Nokogiri::HTML.parse(html, nil, charset)
  return {
    :title => doc.xpath('//*[@id="main"]/div[1]/div[1]/h1').inner_text,
    :condition => doc.xpath('//*[@id="mdServiceStatus"]/dl/dt/text()').inner_text
  }
end
 :

Googleใƒ‹ใƒฅใƒผใ‚น

Googleใƒ‹ใƒฅใƒผใ‚นใฎRSSใ‚’ๅ–ๅพ—ใ—ใฆRSSใƒฉใ‚คใƒ–ใƒฉใƒชใงใƒ‘ใƒผใ‚นใ—ใฆใ„ใพใ™ใ€‚
Googleใƒ‹ใƒฅใƒผใ‚น๏ผšใ‚จใƒณใ‚ฟใƒกRSS

jobs\news.rb
require "rss"
 :
rss = RSS::Parser.parse(url) # RSS URL
rss.channel.items.each do |x|
  items << { title: x.title}
end
 :

Weather Underground

ๅคฉๆฐ—ไบˆๅ ฑใงใ™ใŒใ€Weather Undergroundใซใ—ใพใ—ใŸใ€‚ๆญฃ็›ดใ€livedoorๅคฉๆฐ—ใฎRSSใงใ„ใ„ใ‚ˆใ†ใชๆฐ—ใŒใ—ใพใ™ใ€‚
ใ“ใ“ใฏAPIใ‚ญใƒผใฎๅ–ๅพ—ใ‚’ใ—ใชใ„ใจใ„ใ‘ใชใ„ใงๅฐ‘ใ—้ขๅ€’ใงใ™ใ€‚
ใƒ‡ใƒผใ‚ฟใฏJSONใงๅ–ๅพ—ใงใใ‚‹ใฎใงๅŠ ๅทฅใฏใ—ใ‚„ใ™ใ„ใฎใงใ™ใŒใ€ๆ—ฅๆœฌใฎๆฐ—่ฑกๅบใ‹ใ‚‰ๅ–ใฃใฆใใฆใ„ใ‚‹ใ‚ˆใ†ใชใ“ใจใŒใ‚ใฃใŸใฎใงๆŽก็”จใ—ใŸใฎใงใ™ใŒใ€ใƒ›ใƒณใƒˆใ‹ใช๏ผŸใ—ใฐใ‚‰ใไฝฟใฃใฆใฟใฆใ ใ‚ใชใ‚‰livedoorๅคฉๆฐ—ใซๅค‰ๆ›ดใ—ใพใ™ใ€‚

่ชฒ้กŒ

ๆ–‡ไธญใซใ‚‚ๆ›ธใใพใ—ใŸใŒไปŠๅพŒใฎ่ชฒ้กŒใงใ™ใ€‚

  • ใ‚ฝใƒผใ‚นๅ…ฌ้–‹๏ผˆใจใซใ‹ใ๏ผ‰
  • ใ‚ขใ‚คใ‚ณใƒณใง่ฆ‹ใ‚„ใ™ใ๏ผˆๆž ใŒ็„กใ„ใฎใง่ฆ‹ใฅใ‚‰ใ„ใงใ™ใญ๏ผ‰
  • Radio Widget๏ผˆๆœใซใฏๆ›ฒใŒๅฟ…่ฆ๏ผ๏ผ‰
  • ใƒžใƒผใ‚ฑใƒƒใƒˆ๏ผˆ็‚บๆ›ฟใƒปNYใƒ€ใ‚ฆ๏ผ‰
  • livedoorๅคฉๆฐ—ใซๅค‰ๆ›ด๏ผŸ
  • smashingใซๅค‰ใˆใฆใฟใ‚‹๏ผŸ
  • ่‡ชๅ‹•่ตทๅ‹•

ใŠใ‚ใ‚Šใซ

ใ‚ฝใƒผใ‚นใฏ่ฟ‘ใ€…ๅ…ฌ้–‹ใ—ใพใ™ใ€‚
Qiitaๅฐ‚็”จใฎ Github ใ‚’ใพใ ๆบ–ๅ‚™ใ—ใฆใ„ใชใ„ใฎใงใ€ใ™ใฟใพใ›ใ‚“ใ€‚
ใ—ใฐใ—ใŠๅพ…ใกใ‚’ใƒปใƒปใƒปใ€‚

SpecialThanks!!

http://kimh.github.io/blog/jp/dashing/creating-custom-dashing-widget-ja/
http://ryoyamauchi.blogspot.jp/2015/05/raspberry-pi-dashing.html
http://www.softantenna.com/wp/webservice/dashing/

53
45
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Ruby's like ranking last week

Comments

tomotomotomo11
@tomotomotomo11

ใฏใ˜ใ‚ใพใ—ใฆใ€ใ‚ˆใ‚ใ—ใ‘ใ‚Œใฐใ‚ฝใƒผใ‚นๅ…ฌ้–‹ใŠ้ก˜ใ„ใงใใ‚Œใฐใจๆ€ใ„ใพใ™ใ€‚

0

Let's comment your feelings that are more than good

Being held Article posting campaign

CodeAGIใงๅฎŸ้š›ใซใ‚ณใƒผใƒ‰ใ‚’่‡ชๅ‹•็”Ÿๆˆใ—ใฆใƒฌใƒ“ใƒฅใƒผใ‚’ๆŠ•็จฟใ—ใ‚ˆใ†๏ผ

~
View details

ใ—ใใ˜ใ‚Šใ‚จใƒณใ‚ธใƒ‹ใ‚ข๏ผ็งใฟใŸใ„ใซใชใ‚‹ใช๏ผ

~
View details
53
45

Login to continue?

Login or Sign up with social account

Login or Sign up with your email address