►
Description
This talk was part of AsyncAPI Online Conference:
- AsyncAPI Initiative website - https://www.asyncapi.com/
- You can also watch this talk as part of full conference recording with audience questions in the LiveChat - https://youtu.be/oMSzGc5bDr4?t=10072
TALK ABSTRACT
Jukeberry is a basic jukebox powered by a Raspberry Pi and an RFID reader. Isolated, it's a nice gadget but, connected, it's an endless source of creativity, ideas, and fun.
Let's explore this PoC together, the architecture, the state of the art, and the next steps!
SLIDES
https://docs.google.com/presentation/d/1LL48CxJkLUIhijU9IafB-dgP1St_k9nYJ4izHdIaON4/edit?usp=sharing
A
Hi,
my
name
is
Naruto
and
I
am
a
supporter
builder.
That's
what
I
do
and
I
have
been
doing
that
in
different
roles.
For
almost
twenty
years,
I'm
currently
working
a
CTO
for
a
start-up
fingered
I
spend
my
free
time
with
my
wife
and
two
little
kids
and
when
I
am
NOT
with
them,
I
play
guitar
the
only
one
other
few
things
I
also
like
to
work
on
domestic
Internet
of
Things
worships
within
another
video.
A
Another
Raspberry
Pi
and
here
today
to
tell
you
about
shut
Barry,
show
a
little
recorded
demo
and
maybe
do
a
live
one
with
all
of
you
at
the
end.
If
everything
goes
well
so
before
moving
forward,
if
you
want
to
participate
on
that
demo
or
please
do
I
want
to
encourage
you
to
do
that,
and
you
have
a
new
environment
on
your
machine.
Please
follow
the
instructions
at
the
link
at
the
bottom
left
to
install
the
shuttle
client
on
your
computer.
I,
really
promise.
It
won't
delete
your
LCD.
A
Should
we
receive
shock
box,
you
know
those
machines
that
used
to
play
music
in
bars
around
the
decade
of
50s
and
60s.
In
this
little
remake,
the
way
of
choosing
a
song
is
by
holding
an
airy-fairy
car
near
to
and
arif
aliev
River,
which
has
an
Associated
so,
for
example,
in
this
case
this
one
some
radio
cat
sound.
That
is
a
band
that
I
love.
A
A
Well,
what
usually
happens
to
me
is
that
once
one
project
is
running,
I
start
thinking
of
more
features.
Okay,
and
in
this
case
the
future
simply
up,
we
appear
in
my
mind,
I
took
a
notebook
and
wrote
this
down
and
later
on,
I
push
those
repositories.
So
I
don't
forget
it.
You
can
check
those
draft
ideas
on
the
link
at
the
bottom
left
of
the
slide,
but
anyway,
I
will
tell
you
about
some
examples
of
those
head.
A
Now,
if
I
can
have
network
of
devices
that
one
need
to
be
differentiated
for
network
connected
to
a
differential
bearing
because
of
course,
I
can
build
more
than
one
shall
bury
so
I
wait
to
register
as
a
query
or
the
network
directly
and
the
device
is
made
for
people
in
each
particular
network.
So
suddenly
I
need
some
kind
of
device.
Manager.
I
also
need
a
way
to
manage
songs.
A
B
A
An
internet
connection,
at
least
for
the
most
basic
feature
that
will
be
just
playing
a
song.
As
you
can
tell
this
now,
you
became
more
complex
and
more
fun.
Now
the
question
is
heavily
reliant
on
using
API
to
connect
all
these
components.
So,
what's
about
wrist?
Well,
as
I
said,
I
live
with
two
little
kids,
so
getting
rest
is
a
bit
difficult.
You
didn't
even
believe
me,
but
seriously
speaking
what
about
going
through
rested?
Yes!
Well,
it
actually
will
work.
A
It
is
as
simple
as
getting
the
raspberry
calling
an
API
on
the
device
that
we
play
the
Sun.
But
what
happens
if
I
have
several
possible
devices
which
one
should
I
call
it
is
that
there
should
be
something
of
no
at
the
raspberry
to
route
to
the
proper
device
device,
and,
if
I
want
to
do
so,
those
devices
should
be
registered
within
the
raspberry.
A
What
if
the
raspberry
is
not
available
when
one
of
those
devices
are
going
to
sister,
if
you
think
about
it,
we
can
solve
that
by
deploying
a
separate
component
that
mentioned
that
Yoshii
I
wrote
the
API
to
call
to
the
corresponding
device.
The
component
must
be
developed,
maintain
and
more
important,
be
available.
Every
time
I
want
to
play
a
song.
A
Furthermore,
we
cannot
expect
the
raspberry
or
our
chasteberry
to
be
a
highly
available
component.
I
mix
up
only
one
of
those
connected
to
my
domestic.
I
esteem
using
a
simple
power
spike,
so
resistant
and
new
device
management
sounds
users
or
any
information
that
should
be
known
by
the
shop
very
are
features
that
must
be
available
regardless.
The
Sunbury
lately
should
vary
should
be
able
to
pick
up
when
it
comes
available.
A
A
synchronously,
it
sounds
like
recipe
eyes
are
not
suitable
for
doing
that
or
well,
actually,
is
not
an
issue
with
race
itself,
but
with
the
concept
of
building
synchronous,
transactional
services,
you
know
I
call
the
API
I
went
until
I
get
an
answer,
and
it's
Nokia
or
an
error.
If
it's
an
error,
I
could
retry
until
I,
succeed
and
maybe
but
never
happ.
A
This
event
inform
something
that
happened
instead
of
commanding
something
to
happen
like
a
typical
request,
so
a
producer
would
wail
for
any
kind
of
response
from
any
of
the
consumers.
Furthermore,
it
made
you
not
be
a
consumer
for
a
particular
event.
At
a
particular
moment,
consumers
observed
events
typically
by
subscribing
to
a
channel,
and
we
act
upon
these
other
earliest
convenience
related
to
the
shuttle.
For
instance,
the
raspberry
could
produce
an
event
describing
that
the
color
was
red
and
publish
it
into
a
channel.
That
event
might
include
information
regarding
the
card.
A
The
raspberry
in
the
context,
for
example,
at
what
time
did
even
happen.
A
set
of
devices
may
be
subscribe
to
that
channel
and
react
to
that
event
by
hand,
or,
in
this
case,
famous
song,
associated
to
the
card.
If
particular
device
is
not
available
at
a
specific
time,
it
will
simply
missed
the
event.
It
makes
no
sense
to
start
playing
the
mid
sound
when
it
becomes
available.
A
A
At
any
time,
you
just
need
to
read
all
the
events
until
a
particular
time
to
replicate
it
to
such
a
Patchett.
Africa
makes
it
possible
to
consume
this
event
in
an
efficient
way
and
for
sure
this
is
scenario
is
more
like
TCP
works,
Pakistan
be
delayed
or
arrive
in
a
different
order
from
the
one
that
were
generated,
and
this
is
must
ensure
this
will
reach
the
destination
and
that
the
message
can
be
represented
in
the
proper
order.
A
So
going
back
to
business.
Both
scenarios
are
part
of
urban
driven
architectures
and
the
can
benefit
from
a
synchronous
communication
and
that's
how
this
project
means
they
are
seen
KPI
initiative,
so
I
started
by
writing
a
very
simple
I
think
API
definition,
first
I
wrote
the
helm,
which
includes
some
information
about
the
person
under
the
function
itself,
such
as
the
S&T
API
version
I,
also
specify
the
servers.
This
API
is
just
for
the
media
player
part
which
uses
an
MQTT
broker
in
the
kale.
A
In
this
case,
I
am
using
an
eclipse,
most
nido
in
the
cloud
for
which
I
want
to
thanks
to
solos
that,
provided
it
I
also
define
it
to
channels.
The
first
one
is
the
corresponding
to
to
the
event
when
a
card
is
presented,
the
clients
can
expect
a
message
to
be
published
here
when
the
user
holds
a
car
near
to
the
river.
The
message
format
is
also
define
on
this
section.
The
second
channel
is
a
stop
motion.
A
Fun
parents
can
expect
a
message
here
when
a
user
pushes
the
stop
button,
and
then
there
is
a
security
scheme
under
the
component
sections
components,
objects
represent
free
usable
option,
meaning
that
I
can
simply
refer
to
this.
Another
part
of
the
definition
then
I
use
an
existing
potion
editor
for
creating
human,
readable
women
printable
documentation.
I
did
it
manually
by
running
the
comment
at
the
right
button,
but
you
can
easily
integrate
that
comment
to
your
continuous
integration
pipeline.
So
you
have
the
documentation
up
to
date
and
LPI
change.
A
I
issued
the
assumption
later
for
creating
the
new
client,
which
automatically
stops
the
routine
lotion
I'll.
It's
a
clear
handler
work
implement
the
business
I.
Had
this
client
up
and
running
in
less
than
10
minutes.
Also
I
was
able
to
learn
by
reading
the
she
narrated.
Oh
and
yes,
if
you
are
about
to
cry
it's
a
proof
of
concept,
it
is
okay
to
help
cause
some
stuff
when
paying
with
energy
right.
A
Finally,
for
the
rest,
miracle
I
didn't
use
any
generator.
I
think
I
will
write
a
patent
template
for
the
cone
generator
once
I
have
some
time.
As
you
can
see,
the
calls
for
Connie
I'm
sending
the
message
is
pretty
simple
and
now
it's
time
for
the
demo.
I
am
going
to
record
it
right
now
and
show
it
and
well
I,
don't
know,
let's
play
some
music,
so
for
the
demo
we
have
a
different
setup
here
on
my
desk.
The
reason
is
that
I
need
to
record
different
components
and
how
this
support
for
the
camera.
A
A
Well,
we
are
poor
solution,
a
different
microphone,
so
you
can
touch
the
noise
from
the
environment,
which
is
the
one
that
it's
more
proper
to
listen
to
the
songs.
The
reason
why
I
have
a
camera
pointing
to
the
screen
instead
of
doing
a
screen
share,
is
that
I
want
to
start
the
note
player,
but
after
that,
I
want
to
be
able
to
show
the
device.
Yes,
this
is
the
shot
very
upper
running.
It's
a
Raspberry
Pi
3
connected
to
all
different
stuff.
A
C
A
B
B
To
experiment,
so
let's:
let's
do
some
quick
things
here:
I
think
you
all
are
seeing
my
terminal
right,
I'm,
gonna,
run
III
was
already
running
previously.
The
curl
that
we
shared
on
the
YouTube
chat
to
come
fear,
no
Bertha's,
jockey,
Barry,
client
and
so
I'm,
gonna,
just
and
prime,
and
gain
start
to
run
it
okay.
So,
yes,
you'll
can
see
it
perfect.
B
A
Clever
and
I
am
going
to
do
some
signs
with
my
hands,
so
you
can
understand
what
I
am
right
now
so,
okay,
okay,
so
we
have
16
connections
its.
It
means
that
people
should
be
able
to
listen
to
the
music
once
we
start
playing
with
this.
So
once
again,
I
have
the
cards
here.
It's
really
calm
mails,
so
nothing
very
fancy.
What
I'm
going
to
do
now
is
to
switch
the
camera.
So
you
see
the
raspberry
this.
A
Is
it
in
the
flesh
I'm
going
to
start
the
program
here
on
the
Raspberry
Pi
right
now,
so
everything
should
be
working
and
I'm
going
to
start
with
this
random
card,
and
you
will,
let
me
know
if
it's
working,
they
also
with
the
comments
in
the
YouTube
channel.
Hope
it
does
it's
an
experiment
once
again.
C
A
A
B
Really
amazing
I
loved
it.
I
really
wanted
to
share
this
with
the
people
like
I
was
telling
Norberto
the
other
day
like
we
have
to
do
this
life.
We
can
pretty
record
a
demo,
that's
fine,
but
it
will
be
cool
for
people
to
see
it
live,
so
we
can
share
the
carrot
and
they
can
experience
themselves
on
the
Andheri
machines
right.
So
this
is
amazing.
Man
I
mean
congrats
from
from
the
for
doing
this
and
and
I'm
so
happy
that
you
did
it
with
the
async
API
generator.
It's
like
and.
C
B
Yeah,
no,
that
that's
that
for
sure
in
in
that
sense,
I
need
to
I.
Think
I
need
to
mention
the
the
great
work
the
the
soleus
folks
are
doing
on
code
generators
and
Java
and
and
python
now,
so
so
so
Mike
Michael
that
Mike
so
Michael
is
working
on
the
on
the
Python
generator
and
I.
Think
you,
you
should
probably
coordinate
there,
even
not
just
you
not
just
you,
but
the
whole
community.
B
Let
me
just
check
the
chat,
because
we
have
time
we
have
a
lot
of
time
for
questions
so
so
yeah
and
is
there
anything
that
you
want
to
ask?
We
have
lots
of
time
for
questions
in
this
talk
so
feel
free
to
jump
in
and
chat
and
I'll
I'll
be
happy
to
read.
Your
questions
are
allowed
here
on
the
on
the
on
the
line
three
on
the
mastery
yeah
so
think
that
yeah,
that's
a
good
question,
sir
someone
so
mobile
Jones
is
asking
where
to
find
it
by
the
Python
generator.
B
A
A
But
the
funny
thing
is
that
for
me
to
think,
as
I
said,
all
those
new
storage
services
that
should
be
available
on
the
cloud
while
they,
while
they
are
not
very
cool
and
Ronnie-
will
be
offline,
I
will
be
using
Jocasta
connections,
so
I
can
start
doing
errands
3
in
part,
because
it's
useful
and
part
because
I
want
to
play
with
the
technology.
Once
again.
B
Also,
I
think
it's
a
it's
this.
This
experiment
that
you
created
reflects
very
well
the
usefulness
of
opti
MQTT
protocol
first,
and
it's
very
easy
to
offer
for
people
to
understand
that
the
value
behind
it
right
now,
you
don't
have
to
jump
into
a
big
IOT
project
to
see
the
value
here.
So
that's
something
really
cool
and
also.
C
A
She
qualifications
that
I
am
using
it
for
something
that
it's
really
simple
and
maybe
I'm
going
to
generate
a
couple
of
events
per
minute.
Okay,
the
mqtt
protocol
is
design
and
paper
for
supporting
millions
and
millions
of
transactions
on
short
periods
of
times,
because
they
need
a
little
stingy
that
we
are
going
to
be
putting
sensors
in
all
the
world
that
are
going
to
continuously
be
sensing
information
and
sending
it.
So
let
suppose
that
that
I
want
to
change
the
volume
of
the
sound
on
your
computers
by
using
a
resistor
here.
A
Maybe
maybe
it's
super
relevant
for
this
context
of
the
covalent
19,
where
we
could
design
so
diagnosis,
mechanisms
that
actually
triggers
alarms
or
start
measuring.
What's
going
on
with
population
on
different
areas,
so
we
can
understand
and
follow
the
virus
solution
through
different
places
and
I
think
that
entity
will
be
maintained
for
that.
That's.
B
That's
also
true
me:
we
have
a
curious
thing
happening
on
the
on
the
on
the
chat
which
I
like
it
a
lot
the
things
about
being
live
right,
so
they
music
is
asking
as
if
you
could
play
the
music
again.
People
will
not
hear
it
on
my
computer
anymore,
but
he
even
suggest
if
you
can
be
playing
this
during
the
whole
conference
from
time
to
time.
I.
C
A
B
A
Well
should
anecdote
here
a
couple
of
days
before
the
presentation,
while
I
was
working
on
it.
My
Arif
ideal
reader
just
broke
I,
couldn't
make
it
work
anymore
and
on
the
context
of
sokovia
it
was
very
hard
to
find
a
new
one.
Until
here
the
regulations
start
being
more
flexible.
So
I
got
a
couple
one
day
before
recording
the
presentation.
I
had
to
prepare
it
and
make
it
work
again,
but
in
the
middle.
A
Going
to
be
to
say:
okay,
let's
see
if
it's
working
on
the
Arduino.
So
while
we
make
the
client,
but
it's
actually
a
server
to
connect
directly
from
from
the
Arduino
to
the
server-
and
this
chat
very
will
work
on
that.
I
need
to
want
to
be
cautionary
anymore,
because
the
thing
is
that
I
started
with
the
Raspberry
Pi,
because
it's
already
fast
Wi-Fi,
I'm,
sorry,
because
some
time
so
before
doing
all
that
stuff
with
the
et
was
going
to
play
locally
and
that's
the
reason
why
I
chose
this
amazing.