S e a n D a g u e , D e v e l
- p
e r A d v
- c
a t e , I B M J u l y 1 9
t h
2 1 8
P u t t i n g M Q T T i n y
- u
r t
- l
P u t t i n g M Q T T i n y o u r t o o l k i - - PowerPoint PPT Presentation
P u t t i n g M Q T T i n y o u r t o o l k i t S e a n D a g u e , D e v e l o p e r A d v o c a t e , I B M t h J u l y 1 9 2 0 1 8 I n t e r a c t i o n P a t t e
t h
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
a r w n / t e m p e r a t u r e / F r e e z e r { " b a t " : " L O W " , " s e n s
_ i d " : " 6 a : 3 " , " h u m i d " : 5 3 . , " t e m p " :
. 8 , " d e w p
n t " :
3 . 2 , " u n i t s " : " F " , " t i m e s t a m p " : 1 5 2 7 6 9 5 5 1 } a r w n / t e m p e r a t u r e / A r w e n R
{ " b a t " : " O K " , " s e n s
_ i d " : " c e : 8 " , " h u m i d " : 5 4 . , " t e m p " : 7 2 . 7 , " d e w p
n t " : 5 5 . 1 , " u n i t s " : " F " , " t i m e s t a m p " : 1 5 2 7 6 9 5 5 1 1 } a r w n / w i n d { " b a t " : " O K " , " s e n s
_ i d " : " 3 3 : " , " t i m e s t a m p " : 1 5 2 7 6 9 5 5 1 2 , " u n i t s " : " m p h " , " g u s t " : . 9 , " s p e e d " : 2 . 5 , " d i r e c t i
" : 3 1 5 . }
mqtt: broker: 10.42.0.3 sensor 1: platform: arwn
a r w n / t
a l s / r a i n { " t i me s t a mp " : 1 5 2 8 8 4 8 4 , " t
a l " : 7 . 7 8 } ← r e t a i n e d t
i c a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 8 4 8 6 8 , " t
a l " : 7 . 7 8 } a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 8 4 8 6 8 , " s i n c e _ mi d n i g h t " : . } a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 9 1 7 3 7 , " t
a l " : 7 . 8 1 8 } a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 9 1 7 3 7 , " s i n c e _ mi d n i g h t " : . 4 } a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 9 2 5 8 3 , " t
a l " : 7 . 9 4 4 } a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 9 2 5 8 3 , " s i n c e _ mi d n i g h t " : . 1 6 } a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 1 7 8 5 8 , " t
a l " : 7 1 . 3 5 8 } a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 1 7 8 5 8 , " s i n c e _ mi d n i g h t " : . 5 8 } … a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 1 7 1 9 8 , " t
a l " : 7 1 . 3 5 8 } a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 1 7 1 9 8 , " s i n c e _ mi d n i g h t " : . 5 8 } … r
l
e r e v e n t a r w n / r a i n { " t i me s t a mp " : 1 5 2 8 1 7 1 2 1 8 , " t
a l " : 7 1 . 3 5 8 } a r w n / t
a l s / r a i n { " t i me s t a mp " : 1 5 2 8 1 7 1 2 1 8 , " t
a l " : 7 1 . 3 5 8 } ← r e t a i n e d t
i c a r w n / r a i n / t
a y { " t i me s t a mp " : 1 5 2 8 1 7 1 2 1 8 , " s i n c e _ mi d n i g h t " : . }
i n c r e me n t s a d d e d b a s e d
t i me b e t w e e n b u c k e t d u mp s
1
t h
s
mm a c c u mu l a t
)
a i n i n
r a i n i n c h e s
e r t h e p a s t h
r ) ]
h e a c c u mu l a t e d r a i n f a l l i n t h e p a s t 6 mi n
a i l y r y r a i n i n
r a i n i n c h e s s
a r t
a y i n l
a l t i me ]
–
–
–
–
–
–
mo s q u i t t
s u b
1 6 9 . 6 . 7 8 . 1 5 7
n y
e r / #
" )
M Q T T p u b l i s h
T i me S t a mp T Z F u e l G e n M W 5 / 9 / 2 1 8 : 5 : E D T D u a l F u e l 1 4 5 / 9 / 2 1 8 : 5 : E D T N a t u r a l G a s 2 1 4 4 5 / 9 / 2 1 8 : 5 : E D T N u c l e a r 4 1 1 4
n y
e r / s t a t u s / f u e l
x / u p d a t e d { " t s " : " 5 / 9 / 2 1 8 : 5 : " } n y
e r / u p s t r e a m/ f u e l
x / N u c l e a r { " u n i t s " : " M W" , " v a l u e " : 4 1 1 4 , " t s " : " 5 / 9 / 2 1 8 : 5 : " } n y
e r / u p s t r e a m/ f u e l
x / D u a l F u e l { " u n i t s " : " M W" , " v a l u e " : 1 4 , " t s " : " 5 / 9 / 2 1 8 : 5 : " } n y
e r / u p s t r e a m/ f u e l
x / N a t u r a l G a s { " u n i t s " : " M W" , " v a l u e " : 2 1 4 4 , " t s " : " 5 / 9 / 2 1 8 : 5 : " } n y
e r / c
u t e d / c
{ " u n i t s " : " g / k Wh " , " v a l u e " : 1 3 5 . 8 8 , " t s " : " 5 / 9 / 2 1 8 : 5 : " } n y
e r / a r c h i v e / c
/ 2 4 h { " u n i t s " : " g / k Wh " , " v a l u e s " : [ 1 6 2 . 6 9 8 , 1 6 3 . 9 2 8 , 1 6 1 . 5 8 7 … ] , " t s " : [ . . . ]
v a r c l i e n t = n e w P a h
M Q T T . C l i e n t ( " m q t t . n y
e r .
g " , N u m b e r ( " 8 " ) , " c l i e n t
+ M a t h . r a n d
( ) ) ; / / s e t c a l l b a c k h a n d l e r s c l i e n t .
M e s s a g e A r r i v e d =
M e s s a g e A r r i v e d ; / / c
n e c t t h e c l i e n t c l i e n t . r e c
n e c t = t r u e ; c l i e n t . c
n e c t ( {
S u c c e s s :
C
n e c t } ) ; / / c a l l e d w h e n t h e c l i e n t c
n e c t s f u n c t i
C
n e c t ( ) { / / O n c e a c
n e c t i
h a s b e e n m a d e , m a k e a s u b s c r i p t i
a n d s e n d a m e s s a g e . c
s
e . l
( "
C
n e c t " ) ; c l i e n t . s u b s c r i b e ( " n y
e r / c
p u t e d / c
" ) ; c l i e n t . s u b s c r i b e ( " n y
e r / a r c h i v e / c
/ 2 4 h " ) ; c l i e n t . s u b s c r i b e ( " n y
e r / a p p l i c a t i
/ w e b u i " ) ; c l i e n t . s u b s c r i b e ( " n y
e r / u p s t r e a m / f u e l
i x / # " ) ; } / / c a l l e d w h e n a m e s s a g e a r r i v e s f u n c t i
M e s s a g e A r r i v e d ( m e s s a g e ) { c
s
e . l
( "
M e s s a g e A r r i v e d : " + m e s s a g e . d e s t i n a t i
N a m e + m e s s a g e . p a y l
d S t r i n g ) ; i f ( m e s s a g e . d e s t i n a t i
N a m e = = " n y
e r / c
p u t e d / c
" ) { v a r d a t a = J S O N . p a r s e ( m e s s a g e . p a y l
d S t r i n g ) ; $ ( " # c
e r
w h " ) . h t m l ( M a t h . r
n d ( d a t a . v a l u e ) ) ; $ ( " # c
n i t s " ) . h t m l ( d a t a . u n i t s ) ; $ ( " # c
p d a t e d " ) . h t m l ( d a t a . t s ) ; } i f ( m e s s a g e . d e s t i n a t i
N a m e . s t a r t s W i t h ( " n y
e r / u p s t r e a m / f u e l
i x " ) ) { f u e l _ m i x _ g r a p h ( m e s s a g e ) ; } i f ( m e s s a g e . d e s t i n a t i
N a m e = = " n y
e r / a r c h i v e / c
/ 2 4 h " ) { v a r d a t a = J S O N . p a r s e ( m e s s a g e . p a y l
d S t r i n g ) ; v a r p l
= [