boarzVideosClipsStatistics

#️⃣EP 219 - Beta Testing Fixes Part 4

🎦
📅 2022-04-21 (523 days ago)
⌛ 1:00:13
ZainboarToreyboar
AllClipsEpisodesHas Blog PostZainThaneshKartikTorey
001
Build Break and Code
📅 2021-07-14 
(804 days ago)
⌛ 0:58:43
ZainboarKartikboar
002
Build, Break & Fix
📅 2021-07-15 
(803 days ago)
⌛ 0:53:45
ZainboarKartikboar
003
Build, Break & Fix
📅 2021-07-16 
(802 days ago)
⌛ 1:09:05
ZainboarKartikboar
004
Special Edition: We don't stop until we get our code working
📅 2021-07-16 
(801 days ago)
⌛ 2:27:06
ZainboarKartikboar
005
Build,Break & Fix // Weekend two hour special
📅 2021-07-17 
(801 days ago)
⌛ 2:00:31
ZainboarKartikboar
006
Build, Break & Fix
📅 2021-07-19 
(799 days ago)
⌛ 1:03:20
ZainboarKartikboar
007
Build, Break & Fix
📅 2021-07-20 
(798 days ago)
⌛ 1:04:37
ZainboarKartikboar
008
Build, Break & Fix
📅 2021-07-21 
(797 days ago)
⌛ 1:00:37
ZainboarKartikboar
009
Build, Break & Fix
📅 2021-07-22 
(796 days ago)
⌛ 1:17:02
ZainboarKartikboar
010
Build, Break & Fix
📅 2021-07-23 
(795 days ago)
⌛ 1:04:59
ZainboarKartikboar
011
Build, Break & Fix
📅 2021-07-23 
(795 days ago)
⌛ 1:48:16
ZainboarKartikboar
012
Build, Break & Fix
📅 2021-07-24 
(793 days ago)
⌛ 2:05:28
ZainboarKartikboar
013
Build, Break & Code //First Special Guest Appearance
📅 2021-07-26 
(792 days ago)
⌛ 1:09:09
ZainboarKartikboar
014
Build, Break & Fix
📅 2021-07-27 
(791 days ago)
⌛ 1:05:37
ZainboarKartikboar
015
Build, Break & Fix // Setting a blog using Hugo and AWS Amplify
📅 2021-07-28 
(790 days ago)
⌛ 1:07:46
ZainboarKartikboar
016
Build, Break & Fix // Working on FETCH APIs
📅 2021-07-29 
(789 days ago)
⌛ 1:03:57
ZainboarKartikboar
017
Build, Break & Fix // Working on FETCH APIs
📅 2021-07-30 
(788 days ago)
⌛ 1:06:45
ZainboarKartikboar
018
Build, Break & Fix // creating get methods with FETCH API
📅 2021-07-30 
(788 days ago)
⌛ 2:00:16
ZainboarKartikboar
019
Build, Break & Fix // BLOG REVEAL!! &Fixing our broken Hugo blog
📅 2021-07-31 
(787 days ago)
⌛ 2:03:11
📰
ZainboarKartikboar
020
Build, Break & Fix // Fixing the uncaught exception error in FETCH APIs
📅 2021-08-02 
(785 days ago)
⌛ 1:02:04
ZainboarKartikboar
021
Build, Break & Fix // Trying different things to resolve the error
📅 2021-08-03 
(784 days ago)
⌛ 1:04:49
📰
ZainboarKartikboar
022
Build, Break & Fix // Special Guest announcement for tomorrow!
📅 2021-08-04 
(783 days ago)
⌛ 1:03:15
📰
ZainboarKartikboar
023
Special Episode : Talking to a Principal Developer at Seek
📅 2021-08-05 
(782 days ago)
⌛ 1:04:56
📰
ZainboarKartikboar
024
Build, Break & Fix // Working out Software design
📅 2021-08-06 
(781 days ago)
⌛ 1:08:19
📰
ZainboarKartikboar
025
Build, Break & Fix
📅 2021-08-06 
(781 days ago)
⌛ 2:01:05
📰
ZainboarKartikboar
026
Weekend Special 1.5 hours
📅 2021-08-08 
(779 days ago)
⌛ 1:35:49
📰
Zainboar
027
30 mins of deployment 😠 || 30 mins of coding 🥲
📅 2021-08-09 
(778 days ago)
⌛ 1:07:48
📰
ZainboarKartikboar
028
Today's Broadcast
📅 2021-08-10 
(777 days ago)
⌛ 1:18:59
📰
ZainboarKartikboar
029
Build Break Fix
📅 2021-08-11 
(776 days ago)
⌛ 1:01:46
📰
ZainboarKartikboar
030
Today's Stream
📅 2021-08-12 
(775 days ago)
⌛ 1:09:24
📰
ZainboarKartikboar
031
Buidl Break Fix
📅 2021-08-13 
(774 days ago)
⌛ 1:05:05
📰
ZainboarKartikboar
032
Today's Broadcast
📅 2021-08-14 
(773 days ago)
⌛ 1:20:18
📰
ZainboarKartikboar
033
Build - Break - Fix
📅 2021-08-15 
(772 days ago)
⌛ 1:34:03
📰
ZainboarKartikboar
034
Build Break Fix
📅 2021-08-16 
(771 days ago)
⌛ 1:18:19
📰
ZainboarKartikboar
035
Today's Broadcast
📅 2021-08-17 
(770 days ago)
⌛ 1:04:07
📰
ZainboarKartikboar
036
Build, Break, Fix
📅 2021-08-18 
(769 days ago)
⌛ 1:03:21
📰
ZainboarKartikboar
037
Special Guest - Sam Nolan
📅 2021-08-19 
(768 days ago)
⌛ 1:05:19
📰
ZainboarKartikboar
038
Today's Broadcast
📅 2021-08-20 
(767 days ago)
⌛ 1:01:55
📰
ZainboarKartikboar
039
Today's Broascast
📅 2021-08-21 
(766 days ago)
⌛ 1:33:11
📰
ZainboarKartikboar
040
Build - Break - Fix
📅 2021-08-22 
(765 days ago)
⌛ 1:33:18
📰
ZainboarKartikboar
041
Build Break Fix
📅 2021-08-23 
(764 days ago)
⌛ 0:57:11
📰
Zainboar
042
Today's Broadcast
📅 2021-08-24 
(763 days ago)
⌛ 1:06:08
📰
ZainboarKartikboar
043
Today's Stream
📅 2021-08-25 
(762 days ago)
⌛ 1:13:08
📰
ZainboarKartikboar
044
Today's Stream
📅 2021-08-26 
(761 days ago)
⌛ 0:49:48
📰
ZainboarKartikboar
045
Today's Stream
📅 2021-08-27 
(760 days ago)
⌛ 1:08:21
📰
ZainboarKartikboar
046
Weekend Special
📅 2021-08-28 
(759 days ago)
⌛ 1:32:51
ZainboarKartikboar
047
Weekend Special
📅 2021-08-29 
(758 days ago)
⌛ 1:01:39
Zainboar
048
Today's Broadcast
📅 2021-08-30 
(757 days ago)
⌛ 1:17:19
ZainboarKartikboar
049
Today's Broadcast
📅 2021-08-31 
(756 days ago)
⌛ 1:00:16
ZainboarKartikboar
050
CELEBRATION: 50th Episode
📅 2021-09-01 
(755 days ago)
⌛ 1:01:53
ZainboarKartikboar
051
Today's Broadcast
📅 2021-09-02 
(754 days ago)
⌛ 1:05:39
ZainboarKartikboar
052
Today's Broadcast
📅 2021-09-03 
(753 days ago)
⌛ 1:12:47
ZainboarKartikboar
053
NEW SETUP!!
📅 2021-09-04 
(752 days ago)
⌛ 1:04:04
ZainboarKartikboar
054
Weekend Special
📅 2021-09-05 
(751 days ago)
⌛ 1:41:54
ZainboarKartikboar
055
Today's Stream
📅 2021-09-06 
(750 days ago)
⌛ 1:20:05
ZainboarKartikboar
056
Today's Broadcast
📅 2021-09-07 
(749 days ago)
⌛ 1:25:44
ZainboarKartikboar
057
Today's Stream
📅 2021-09-08 
(748 days ago)
⌛ 1:00:33
ZainboarKartikboar
058
Today's Stream
📅 2021-09-09 
(747 days ago)
⌛ 1:13:08
ZainboarKartikboar
059
Today's Broadcast
📅 2021-09-10 
(746 days ago)
⌛ 1:50:40
ZainboarKartikboar
060
Today's Stream
📅 2021-09-12 
(744 days ago)
⌛ 1:02:36
ZainboarKartikboar
061
Today's Stream
📅 2021-09-13 
(743 days ago)
⌛ 1:00:40
ZainboarKartikboar
062
Today's Stream
📅 2021-09-14 
(742 days ago)
⌛ 1:11:29
ZainboarKartikboar
063
Today's Stream
📅 2021-09-15 
(741 days ago)
⌛ 1:07:00
ZainboarKartikboar
064
Today's Broadcast
📅 2021-09-16 
(740 days ago)
⌛ 1:20:45
📰
ZainboarKartikboar
065
test
📅 2021-09-16 
(740 days ago)
⌛ 2:03:01
📰
ZainboarKartikboar
066
Today's Broadcast
📅 2021-09-19 
(737 days ago)
⌛ 1:46:13
📰
ZainboarKartikboar
067
Today's Stream
📅 2021-09-20 
(736 days ago)
⌛ 1:03:46
📰
ZainboarKartikboarToreyboar
068
Today's Stream
📅 2021-09-21 
(735 days ago)
⌛ 1:09:13
📰
ZainboarKartikboarToreyboar
069
Today's Broadcast
📅 2021-09-22 
(734 days ago)
⌛ 1:03:51
📰
ZainboarKartikboar
070
Today's Stream
📅 2021-09-23 
(733 days ago)
⌛ 1:59:01
📰
ZainboarKartikboar
071
Today's Stream
📅 2021-09-24 
(732 days ago)
⌛ 0:28:57
📰
ZainboarKartikboar
072
Today's Stream
📅 2021-09-24 
(732 days ago)
⌛ 0:39:33
📰
ZainboarKartikboar
073
Today's Stream
📅 2021-09-26 
(2 years ago)
⌛ 1:21:14
📰
Zainboar
074
Today's Stream
📅 2021-09-27 
(729 days ago)
⌛ 1:03:40
📰
ZainboarKartikboar
075
Today's Stream
📅 2021-09-28 
(728 days ago)
⌛ 1:04:05
📰
ZainboarKartikboar
076
Today's Broadcast
📅 2021-09-29 
(727 days ago)
⌛ 0:58:07
📰
ZainboarKartikboar
077
Today' Broadcast
📅 2021-09-30 
(726 days ago)
⌛ 1:13:14
📰
ZainboarKartikboar
078
Today's Broadcast
📅 2021-10-01 
(725 days ago)
⌛ 1:23:11
📰
ZainboarKartikboar
079
Today's Stream
📅 2021-10-03 
(723 days ago)
⌛ 1:14:52
📰
ZainboarKartikboar
080
Today's Stream
📅 2021-10-04 
(722 days ago)
⌛ 1:05:10
📰
ZainboarKartikboar
081
Today's Stream
📅 2021-10-05 
(721 days ago)
⌛ 1:01:05
📰
Zainboar
082
Today's Stream
📅 2021-10-06 
(720 days ago)
⌛ 0:54:10
📰
ZainboarKartikboar
083
Today's Stream
📅 2021-10-07 
(719 days ago)
⌛ 1:15:04
📰
ZainboarKartikboar
084
Today's Stream
📅 2021-10-08 
(718 days ago)
⌛ 1:12:59
ZainboarKartikboar
085
Today's Stream
📅 2021-10-10 
(716 days ago)
⌛ 1:17:09
📰
ZainboarKartikboar
086
Today's Stream
📅 2021-10-11 
(715 days ago)
⌛ 1:00:57
📰
ZainboarKartikboar
087
Today's Stream
📅 2021-10-12 
(714 days ago)
⌛ 0:51:02
📰
ZainboarKartikboar
088
Today's Stream
📅 2021-10-13 
(713 days ago)
⌛ 1:07:31
📰
ZainboarKartikboar
089
Today's Broadcast
📅 2021-10-14 
(712 days ago)
⌛ 1:07:16
📰
ZainboarKartikboar
090
Today's Stream
📅 2021-10-15 
(711 days ago)
⌛ 1:01:10
📰
Zainboar
091
Today's Stream
📅 2021-10-17 
(709 days ago)
⌛ 1:26:37
📰
ZainboarKartikboarThaneshboar
092
Today's Stream
📅 2021-10-18 
(708 days ago)
⌛ 1:05:40
📰
ZainboarKartikboarThaneshboar
093
Today's Stream
📅 2021-10-19 
(707 days ago)
⌛ 1:01:58
📰
ZainboarThaneshboar
094
Today's Stream
📅 2021-10-20 
(706 days ago)
⌛ 1:04:18
📰
ZainboarKartikboar
095
Today's Stream
📅 2021-10-21 
(705 days ago)
⌛ 1:16:08
📰
ZainboarKartikboarThaneshboar
096
100th Episode
📅 2021-10-23 
(703 days ago)
⌛ 1:13:16
📰
ZainboarKartikboar
097
101/200 Episodes
📅 2021-10-24 
(702 days ago)
⌛ 1:00:53
📰
ZainboarThaneshboar
098
102/200 Episode
📅 2021-10-25 
(701 days ago)
⌛ 1:09:20
📰
ZainboarKartikboar
099
103/200 Episode
📅 2021-10-26 
(700 days ago)
⌛ 1:10:51
📰
ZainboarKartikboarThaneshboar
100
104/200
📅 2021-10-27 
(699 days ago)
⌛ 1:03:23
📰
ZainboarKartikboar
101
105/200
📅 2021-10-28 
(698 days ago)
⌛ 1:15:24
📰
ZainboarThaneshboar
102
107/200
📅 2021-10-29 
(697 days ago)
⌛ 1:14:04
📰
ZainboarKartikboar
103
109/200
📅 2021-10-31 
(695 days ago)
⌛ 1:11:38
📰
ZainboarKartikboarThaneshboar
104
110/200
📅 2021-11-01 
(694 days ago)
⌛ 1:04:53
📰
ZainboarKartikboar
105
111/200
📅 2021-11-02 
(693 days ago)
⌛ 1:11:33
📰
ZainboarKartikboarThaneshboar
106
112/200
📅 2021-11-03 
(692 days ago)
⌛ 1:00:17
📰
ZainboarKartikboar
107
113/200
📅 2021-11-04 
(691 days ago)
⌛ 1:03:53
📰
Zainboar
108
114/200
📅 2021-11-05 
(690 days ago)
⌛ 0:56:39
Zainboar
109
115/200
📅 2021-11-07 
(688 days ago)
⌛ 1:02:25
📰
ZainboarThaneshboar
110
116/200
📅 2021-11-08 
(687 days ago)
⌛ 1:09:37
📰
ZainboarKartikboar
111
117/200
📅 2021-11-09 
(686 days ago)
⌛ 1:06:25
📰
ZainboarKartikboarThaneshboar
112
118/200
📅 2021-11-10 
(685 days ago)
⌛ 1:02:39
📰
ZainboarKartikboar
113
119/200
📅 2021-11-11 
(684 days ago)
⌛ 1:08:01
📰
ZainboarKartikboarThaneshboar
114
120/200
📅 2021-11-12 
(683 days ago)
⌛ 1:00:14
📰
Zainboar
115
120/200
📅 2021-11-14 
(681 days ago)
⌛ 1:06:19
📰
ZainboarKartikboarThaneshboar
116
122/200
📅 2021-11-15 
(680 days ago)
⌛ 1:00:31
ZainboarKartikboar
117
Today's Stream
📅 2021-11-22 
(673 days ago)
⌛ 1:01:46
📰
KartikboarThaneshboar
118
How This Video Has 12 Views, Explained
📅 2021-11-25 
(670 days ago)
⌛ 0:59:47
KartikboarThaneshboar
119
How This Video Has 14 Views, Explained
📅 2021-11-29 
(666 days ago)
⌛ 1:16:20
📰
KartikboarThaneshboar
120
Special Guest - Torey Littlefield Pt.2
📅 2021-11-30 
(665 days ago)
⌛ 1:12:15
📰
ZainboarToreyboar
121
Today's Stream
📅 2021-12-02 
(663 days ago)
⌛ 1:02:25
KartikboarThaneshboar
122
Today's Stream
📅 2021-12-06 
(659 days ago)
⌛ 1:02:01
📰
KartikboarThaneshboar
123
Today's Broadcast
📅 2021-12-07 
(658 days ago)
⌛ 1:01:00
KartikboarThaneshboar
124
Today's Stream
📅 2021-12-09 
(656 days ago)
⌛ 1:05:48
📰
ZainboarThaneshboar
125
Today's Stream
📅 2021-12-10 
(655 days ago)
⌛ 1:07:15
ZainboarToreyboar
126
Today's Stream
📅 2021-12-12 
(653 days ago)
⌛ 0:12:47
📰
ZainboarThaneshboar
127
Today's Stream
📅 2021-12-12 
(653 days ago)
⌛ 0:50:29
📰
ZainboarThaneshboar
128
Today's Stream
📅 2021-12-13 
(652 days ago)
⌛ 1:02:31
📰
ZainboarKartikboar
129
Today's Stream
📅 2021-12-14 
(651 days ago)
⌛ 1:10:28
📰
ZainboarToreyboar
130
Today's Stream
📅 2021-12-16 
(649 days ago)
⌛ 1:16:51
📰
ZainboarThaneshboar
131
Today's Stream
📅 2021-12-17 
(648 days ago)
⌛ 1:10:59
ZainboarKartikboarToreyboar
132
Today's Stream
📅 2021-12-19 
(646 days ago)
⌛ 1:00:49
📰
Zainboar
133
Today's Stream
📅 2021-12-20 
(645 days ago)
⌛ 1:01:49
📰
ZainboarKartikboar
134
Today's Stream
📅 2021-12-21 
(644 days ago)
⌛ 1:03:43
📰
ZainboarThaneshboar
135
Today's Stream
📅 2021-12-22 
(643 days ago)
⌛ 1:06:30
📰
ZainboarKartikboar
136
Today's Stream
📅 2021-12-23 
(642 days ago)
⌛ 1:00:09
Zainboar
137
Today's Stream
📅 2021-12-26 
(639 days ago)
⌛ 1:17:00
📰
ZainboarThaneshboar
138
Today's Stream
📅 2021-12-27 
(638 days ago)
⌛ 1:05:22
📰
ZainboarKartikboar
139
Today's Stream
📅 2021-12-28 
(637 days ago)
⌛ 1:16:17
📰
ZainboarToreyboar
140
WebSocket Integration
📅 2021-12-29 
(636 days ago)
⌛ 1:02:44
📰
Zainboar
141
AWS WebSocket API Integration Pt.2
📅 2021-12-30 
(635 days ago)
⌛ 1:08:23
📰
ZainboarToreyboar
142
AWS WebSocket Integration with SAM Pt.3
📅 2022-01-02 
(632 days ago)
⌛ 1:03:18
📰
ZainboarToreyboar
143
Today's Stream
📅 2022-01-03 
(631 days ago)
⌛ 1:07:18
📰
ZainboarKartikboar
144
AWS WebScoket Integration with SAM Pt.4
📅 2022-01-04 
(630 days ago)
⌛ 1:04:18
📰
ZainboarToreyboar
145
AWS WebSocket Integration with SAM Pt.5
📅 2022-01-05 
(629 days ago)
⌛ 1:03:21
📰
ZainboarKartikboar
146
AWS WebSocket Integration with SAM Pt. 6
📅 2022-01-06 
(628 days ago)
⌛ 1:03:18
📰
ZainboarToreyboar
147
Today's Stream
📅 2022-01-07 
(627 days ago)
⌛ 1:11:55
📰
ZainboarToreyboar
148
Connect AWS WebSocket to DynamoDB Pt.1
📅 2022-01-09 
(625 days ago)
⌛ 1:10:25
📰
ZainboarToreyboar
149
Connect AWS WebSocket to DynamoDB
📅 2022-01-10 
(624 days ago)
⌛ 1:02:06
ZainboarKartikboar
150
"Blank Line" Bug In Lambda Response For AWS Websocket Pt.1
📅 2022-01-11 
(623 days ago)
⌛ 0:58:13
📰
ZainboarKartikboarToreyboar
151
"Blank Line" Bug In Lambda Response From Lambda
📅 2022-01-13 
(621 days ago)
⌛ 1:04:40
📰
ZainboarToreyboar
152
AWS WebSocket + Lambda + DynamoDB
📅 2022-01-14 
(620 days ago)
⌛ 1:04:33
📰
ZainboarThaneshboar
153
AWS WebSocket + Lambda + DynamoDB
📅 2022-01-16 
(618 days ago)
⌛ 1:11:37
📰
ZainboarToreyboar
154
Test
📅 2022-01-17 
(617 days ago)
⌛ 1:03:13
📰
ZainboarThaneshboar
155
Today's stre
📅 2022-01-18 
(616 days ago)
⌛ 0:45:24
ZainboarToreyboar
156
AWS Websocket + DyanmoDb + Lambda
📅 2022-01-19 
(615 days ago)
⌛ 1:06:33
📰
ZainboarThaneshboar
157
Today's Stream
📅 2022-01-20 
(614 days ago)
⌛ 0:57:55
📰
Zainboar
158
Today's Stream
📅 2022-01-21 
(613 days ago)
⌛ 1:02:17
📰
ToreyboarZainboar
159
Today's Stream
📅 2022-01-23 
(611 days ago)
⌛ 1:13:29
📰
ZainboarToreyboar
160
How To Host A Web App using AWS S3 and CloudFront
📅 2022-01-24 
(610 days ago)
⌛ 1:16:15
📰
ZainboarThaneshboar
161
How to Host Web App In AWS S3 using CloudFront, Route53 and CloudFormation
📅 2022-01-25 
(609 days ago)
⌛ 1:01:07
ZainboarToreyboar
162
How to Host Web App Using AWS S3, CloudFront and Route53
📅 2022-01-26 
(608 days ago)
⌛ 1:03:12
ZainboarThaneshboar
163
How To Host Web App In AWS S3 with Custom Domain
📅 2022-01-27 
(607 days ago)
⌛ 1:08:48
📰
ZainboarToreyboar
164
How To Host Web App In AWS S3 with Custom Domain Using Route 53
📅 2022-01-28 
(606 days ago)
⌛ 1:08:57
📰
ZainboarThaneshboar
165
How To Host Web App In AWS S3 with Custom Domain Using Route 53
📅 2022-01-30 
(604 days ago)
⌛ 0:28:17
Zainboar
166
Today's Broadcast
📅 2022-01-31 
(603 days ago)
⌛ 1:11:16
📰
ThaneshboarToreyboar
167
How To Host Web App In AWS S3 with Custom Domain Using Route 53
📅 2022-02-01 
(602 days ago)
⌛ 1:06:35
📰
ZainboarToreyboar
168
Generate SSL Certificate via AWS Certificate Manager
📅 2022-02-02 
(601 days ago)
⌛ 0:58:02
📰
ZainboarThaneshboar
169
Test AWS Websocket Connection With Multiple Users
📅 2022-02-03 
(600 days ago)
⌛ 1:01:59
📰
ZainboarToreyboar
170
Adding Redirection To The AWS S3 Page
📅 2022-02-04 
(599 days ago)
⌛ 0:25:00
Zainboar
171
Redirecting AWS S3 page
📅 2022-02-06 
(597 days ago)
⌛ 0:54:11
Zainboar
172
Today's Broadcast
📅 2022-02-07 
(596 days ago)
⌛ 1:05:20
📰
ThaneshboarToreyboar
173
Today's Stream
📅 2022-02-08 
(595 days ago)
⌛ 1:05:29
ZainboarToreyboar
174
Today's Stream
📅 2022-02-10 
(593 days ago)
⌛ 1:05:47
ZainboarToreyboar
175
How To Send Messages To Multiple Clients Through AWS Websocket
📅 2022-02-13 
(590 days ago)
⌛ 1:02:05
ZainboarToreyboar
176
How To CRUD Data Through AWS Websocket with Multiple Clients
📅 2022-02-16 
(587 days ago)
⌛ 1:07:32
ZainboarThaneshboar
177
Today's Stream
📅 2022-02-17 
(586 days ago)
⌛ 0:58:01
ZainboarToreyboar
178
How To Change String Property to Object in AWS SAM and Deploy
📅 2022-02-20 
(583 days ago)
⌛ 1:21:24
ZainboarToreyboar
179
Today's Stream
📅 2022-02-23 
(580 days ago)
⌛ 0:59:43
📰
ZainboarThaneshboar
180
How To HASH A Password using BCRYPT in Node
📅 2022-02-25 
(578 days ago)
⌛ 1:03:48
ZainboarThaneshboar
181
How to Hash Passcode with BCRYPT using Node Pt.2
📅 2022-02-27 
(576 days ago)
⌛ 1:07:59
ZainboarToreyboar
182
Create Passcode UI
📅 2022-02-28 
(575 days ago)
⌛ 1:01:29
📰
ZainboarThaneshboar
183
How To Make FrontEnd Talk to Backend with Node
📅 2022-03-01 
(574 days ago)
⌛ 1:01:33
ZainboarToreyboar
184
How To Positioning A Div
📅 2022-03-04 
(571 days ago)
⌛ 1:09:27
ZainboarToreyboar
185
Today's Stream
📅 2022-03-06 
(569 days ago)
⌛ 1:00:29
Zainboar
186
Today's Stream
📅 2022-03-07 
(568 days ago)
⌛ 0:55:51
ZainboarThaneshboar
187
Today's Stream
📅 2022-03-09 
(566 days ago)
⌛ 1:00:11
ZainboarThaneshboar
188
Compare Hashed Passwords Using Bcryptjs
📅 2022-03-10 
(565 days ago)
⌛ 1:01:31
ZainboarToreyboar
189
Special Appearance
📅 2022-03-11 
(564 days ago)
⌛ 0:58:44
ZainboarThaneshboarKartikboar
190
Today's Stream
📅 2022-03-13 
(562 days ago)
⌛ 1:16:40
ZainboarToreyboar
191
How To Make Frontend Talk To The Backend - NodeJS
📅 2022-03-14 
(561 days ago)
⌛ 1:07:00
ZainboarThaneshboar
192
Today's Stream
📅 2022-03-15 
(560 days ago)
⌛ 1:05:51
ZainboarToreyboar
193
Today's Stream
📅 2022-03-17 
(558 days ago)
⌛ 1:21:59
ZainboarToreyboar
194
How To Apply Authentication When Saving NodeJs
📅 2022-03-18 
(557 days ago)
⌛ 1:05:27
Zainboar
195
How to Compare Passcodes Using Bcrytp Node.js
📅 2022-03-20 
(555 days ago)
⌛ 1:04:19
ZainboarToreyboar
196
Today's Broadcast
📅 2022-03-21 
(554 days ago)
⌛ 1:06:59
ThaneshboarToreyboar
197
Today's Stream
📅 2022-03-22 
(553 days ago)
⌛ 1:02:51
ZainboarToreyboar
198
Verify Passcode Saving Information to DynamoDB with NodeJs
📅 2022-03-23 
(552 days ago)
⌛ 1:03:09
ZainboarThaneshboar
199
Today's Stream
📅 2022-03-25 
(550 days ago)
⌛ 1:12:27
ZainboarToreyboar
200
Today's Stream
📅 2022-03-27 
(548 days ago)
⌛ 1:14:36
ZainboarToreyboar
201
Today's Stream
📅 2022-03-28 
(547 days ago)
⌛ 1:08:28
ZainboarThaneshboar
202
How To Do A Merge Using VSCode and Github
📅 2022-03-29 
(546 days ago)
⌛ 1:05:33
ZainboarToreyboar
203
Today's Stream
📅 2022-03-30 
(545 days ago)
⌛ 0:57:26
ZainboarThaneshboar
204
Today's Stream
📅 2022-03-31 
(544 days ago)
⌛ 0:57:10
ZainboarToreyboar
205
Today's Stream
📅 2022-04-01 
(543 days ago)
⌛ 1:00:36
Zainboar
206
Today's Stream
📅 2022-04-03 
(541 days ago)
⌛ 1:06:56
ZainboarToreyboar
207
Get Board Columns from Frontend to Backend NodeJS
📅 2022-04-04 
(540 days ago)
⌛ 1:00:38
ZainboarThaneshboarToreyboar
208
Today's Stream
📅 2022-04-05 
(539 days ago)
⌛ 0:57:30
ZainboarToreyboar
209
Today's Stream
📅 2022-04-06 
(538 days ago)
⌛ 0:59:39
ZainboarThaneshboar
210
Today's Stream
📅 2022-04-07 
(537 days ago)
⌛ 1:04:46
Zainboar
211
Store String Array in DynamoDB using NodeJS
📅 2022-04-08 
(536 days ago)
⌛ 0:19:27
Zainboar
212
Today's Stream
📅 2022-04-10 
(534 days ago)
⌛ 1:07:24
Zainboar
213
Today's Stream
📅 2022-04-11 
(533 days ago)
⌛ 1:02:34
ZainboarThaneshboar
214
Today's Stream
📅 2022-04-12 
(532 days ago)
⌛ 0:27:43
Zainboar
215
Jira Organising & Beta Testing Day 1
📅 2022-04-13 
(531 days ago)
⌛ 0:58:09
ZainboarThaneshboar
216
Implement Passcode Tab Feature
📅 2022-04-17 
(527 days ago)
⌛ 0:58:49
ZainboarToreyboar
217
Beta Testing Fixes Part 2
📅 2022-04-19 
(525 days ago)
⌛ 1:00:24
ZainboarToreyboar
218
Beta Testing Fixes Part 3
📅 2022-04-20 
(524 days ago)
⌛ 1:01:02
ZainboarThaneshboar
▶️
Beta Testing Fixes Part 4
📅 2022-04-21 
(523 days ago)
⌛ 1:00:13
ZainboarToreyboar
220
Beta Testing 5
📅 2022-04-22 
(522 days ago)
⌛ 1:10:18
ThaneshboarToreyboar
221
Today's Stream
📅 2022-04-25 
(519 days ago)
⌛ 1:01:01
ZainboarThaneshboar
222
WebSocket Heartbeat & Thanesh's Farewell
📅 2022-04-27 
(517 days ago)
⌛ 0:51:08
ZainboarThaneshboar
223
Today's Stream
📅 2022-04-28 
(516 days ago)
⌛ 1:00:33
ZainboarToreyboar
224
Save Notes Through Websocket
📅 2022-04-29 
(515 days ago)
⌛ 0:51:30
Zainboar
225
Saving Object Through Websocket in DynamoDB
📅 2022-05-01 
(513 days ago)
⌛ 0:49:15
ZainboarToreyboar
226
Saving Object Through Websocket in DynamoDb
📅 2022-05-02 
(512 days ago)
⌛ 0:55:26
Zainboar
227
Today's Stream
📅 2022-05-05 
(509 days ago)
⌛ 1:01:32
ZainboarToreyboar
228
Welcome Back Kartik Party
📅 2022-05-08 
(506 days ago)
⌛ 0:55:32
ZainboarToreyboarKartikboar
229
Testing Prevention of XSS attack
📅 2022-05-10 
(504 days ago)
⌛ 0:29:16
Zainboar
230
How To Test Prevention XSS Attack
📅 2022-05-11 
(503 days ago)
⌛ 0:40:42
ZainboarKartikboar
231
Fixing Websocket
📅 2022-05-19 
(495 days ago)
⌛ 0:49:55
Zainboar
232
Today's Stream
📅 2022-05-20 
(494 days ago)
⌛ 0:56:10
ZainboarKartikboar
233
Today's Stream
📅 2022-05-22 
(492 days ago)
⌛ 0:55:33
Zainboar
234
Today's Stream
📅 2022-05-24 
(490 days ago)
⌛ 0:23:19
Zainboar
235
Websockets bugs
📅 2022-05-27 
(487 days ago)
⌛ 1:00:51
ZainboarKartikboar
236
Websocket Bug Fix
📅 2022-05-29 
(485 days ago)
⌛ 0:49:50
Zainboar
237
Hook Up AWS Websocket
📅 2022-05-30 
(484 days ago)
⌛ 0:48:59
Zainboar
238
Hook up AWS Websocket Pt.2
📅 2022-05-31 
(483 days ago)
⌛ 0:53:07
Zainboar
239
Today's Stream
📅 2022-06-01 
(482 days ago)
⌛ 0:21:05
Zainboar
240
AWS Websocket Bug Fix
📅 2022-06-05 
(478 days ago)
⌛ 0:52:47
Zainboar
241
AWS Websocket Bug Fix Pt.2
📅 2022-06-06 
(477 days ago)
⌛ 0:23:52
Zainboar
242
Hook Up Board Columns to Websockets Nodejs + AWS Websockets
📅 2022-07-27 
(426 days ago)
⌛ 1:00:06
Zainboar

Subtitles

0:00:05
[Music]
0:00:12
[Music]
0:00:27
what is going on guys welcome back to
0:00:29
another session of buildbreaking fix
0:00:33
brought to you by
0:00:34
not one raw coder but two of the
0:00:37
recovery
0:00:41
that's our second recorder right there
0:00:44
sorry
0:00:46
i'm sorry about being a little late
0:00:48
there
0:00:49
that's all right maybe do all that
0:00:51
things
0:00:53
to do but yeah welcome back then good to
0:00:56
have you again
0:00:58
our third turtle
0:01:01
[Laughter]
0:01:05
and i'm pretty sure he's gonna have a go
0:01:08
at me
0:01:09
you just watch me get roast the entire
0:01:12
stream now
0:01:15
um yeah but first thing uh is first
0:01:19
let's acknowledge the country and pay
0:01:20
our respects to the elders so here we go
0:01:26
ah never mind
0:01:27
i begin today by acknowledging the
0:01:29
traditional custodians of the land on
0:01:31
which we gather today and pay my
0:01:33
respects to the elders past present and
0:01:36
future i extend their respect to
0:01:39
aboriginal and torres strait islander
0:01:41
people here today
0:01:44
fantastic
0:01:46
how about for a change we have a bit of
0:01:48
a different
0:01:50
background
0:01:52
actually that doesn't look good
0:01:54
that doesn't look good right
0:01:57
it's too
0:01:58
nice
0:01:59
it's going on yeah it's too much of the
0:02:01
same
0:02:02
color yeah anyway
0:02:06
yeah we tried anyway which is good
0:02:11
all right so um
0:02:13
today what we're basically gonna do is
0:02:16
um
0:02:17
so
0:02:19
we are not gonna write it
0:02:29
yeah
0:02:31
even though is fun but it's slowing us
0:02:34
down
0:02:36
some bad actors out there in the world
0:02:39
huh
0:02:41
yeah very very bad actors
0:02:46
but yeah um so we're now gonna put the
0:02:49
um scrambly enhanced version on
0:02:54
um on
0:02:55
s3 we'll just do that
0:02:58
you will
0:03:00
just relocate this time and um until we
0:03:03
get everything
0:03:05
uh everything's sorted
0:03:08
and um also
0:03:10
implemented implement the changes that
0:03:12
you
0:03:13
um
0:03:14
mentioned in the whatsapp group
0:03:17
i think those will be really helpful um
0:03:20
to
0:03:21
have as in to avoiding gag devs attacks
0:03:25
as much as we can
0:03:30
so
0:03:31
yeah that would be pretty much fun it's
0:03:33
a good learning opportunity though oh
0:03:35
yeah
0:03:36
yeah
0:03:37
in that sense yeah i can't wait to get
0:03:40
full jackdef to show us um more of his
0:03:44
tricks
0:03:45
yeah
0:03:46
yeah if you can't do it locally here's a
0:03:48
challenge for you guys if if you can't
0:03:51
do it on the
0:03:54
local host
0:03:56
you know what
0:03:58
you'll get a kebab
0:04:00
wow that would that would be
0:04:03
that would be quite the uh attack though
0:04:10
he would have to gain access to your to
0:04:12
your your computer
0:04:15
or at least your network
0:04:17
which is why i offered him a kebab if
0:04:19
you can
0:04:21
which i know it's not gonna happen
0:04:25
well yeah i mean it's uh i watched the
0:04:28
show a bit of it last night i watched
0:04:30
the replay on youtube
0:04:32
and
0:04:33
and i i think the
0:04:35
it wasn't revealed to me what was going
0:04:37
on but i took a guess that it's
0:04:40
still um
0:04:43
uh
0:04:44
there's still scripts being injected
0:04:46
maliciously
0:04:48
into that into the
0:04:51
the notes that we're saving to dynamodb
0:04:54
and
0:04:55
through
0:04:56
the websocket most likely as well
0:04:59
um
0:05:00
so
0:05:02
there's no sanitizing going on and in
0:05:05
the back end
0:05:07
which is which is probably one surface
0:05:10
and then the other surfaces i'm not
0:05:13
entirely sure about there might be some
0:05:16
uh
0:05:18
securities
0:05:19
um
0:05:20
like some some
0:05:22
[Music]
0:05:23
some attack surfaces in the jquery or
0:05:26
maybe some of
0:05:28
the code we wrote too
0:05:31
um
0:05:32
so yeah that's what i
0:05:34
mentioned in the whatsapp
0:05:36
yeah yeah and um basically even though i
0:05:40
didn't get a chance to read all the
0:05:42
messages but i checked their
0:05:45
notifications
0:05:46
like as you get the notifications on
0:05:50
the screen right when the
0:05:52
message pop up so
0:05:54
i didn't get a chance to i think just do
0:05:57
that because it's been a full-on day man
0:06:00
as well
0:06:02
yeah i've just come back
0:06:04
from somewhere there about to be really
0:06:08
urgent
0:06:09
lee and and it took a few hours but i
0:06:12
tried my best to get in time for
0:06:15
the stream which
0:06:16
which eventually happened
0:06:18
great but yeah um let's um implement
0:06:22
those changes um
0:06:24
being on localhost um and the websocket
0:06:29
heartbeat so about the websocket
0:06:31
heartbeat
0:06:42
were discussing
0:06:44
yes today that is probably a good idea
0:06:47
to and it was basically convar 64's idea
0:06:52
that it was it's probably a good idea to
0:06:55
um
0:06:56
check for the heartbeat every 30 seconds
0:07:00
okay hey
0:07:02
initially i didn't know why he was
0:07:05
saying this so it didn't really
0:07:08
make much sense
0:07:10
to me but he did outline that if
0:07:13
for example for any reason you can't
0:07:16
connect to
0:07:17
the internet
0:07:18
for any reason at all
0:07:21
as in the worst case scenario so it's
0:07:23
always good to check every
0:07:25
30 seconds for the connection
0:07:28
or for the websocket so
0:07:31
yeah
0:07:32
and we did um
0:07:35
check some code but i i we basically ran
0:07:39
out of time how to implement it
0:07:42
implement it properly
0:07:45
so
0:07:46
we can basically i'll share my screen
0:07:49
now that i can which is great
0:07:53
oh great
0:07:56
yeah
0:07:57
so
0:07:58
do you want to choose a letter
0:08:02
let's go three two
0:08:04
one go
0:08:07
go go go yeah we just get three seconds
0:08:13
okay
0:08:16
that's a pretty good choice actually
0:08:20
all right um
0:08:22
so i'll just share my screen and bring
0:08:25
up
0:08:27
the
0:08:28
thing okay so we were basically
0:08:31
implementing that in the back end first
0:08:35
so
0:08:36
this is how so the code we got from was
0:08:42
yeah so this is the code that we got
0:08:46
which would you would you mind sharing
0:08:49
via live
0:08:51
share
0:08:52
yeah
0:08:54
let's do that i think that's a lot more
0:08:56
easier isn't it
0:08:59
it's just easier for me to follow and
0:09:01
that way i can keep an eye on the chat
0:09:03
too
0:09:04
yeah yeah
0:09:06
make read only
0:09:08
[Music]
0:09:09
copy again yeah
0:09:11
and copy to
0:09:13
clipboard cool
0:09:15
and how do i send you that
0:09:19
by
0:09:26
[Music]
0:09:28
why did that open
0:09:36
okay
0:09:42
so we didn't make this um
0:09:45
branch
0:09:54
and hang on and i'll probably have to
0:09:57
uncheck my screen
0:09:59
and do something first
0:10:04
uh
0:10:08
history
0:10:15
recently closed no history
0:10:19
where did i got that solution from i'm
0:10:21
just gonna check that heartbeat google
0:10:23
search
0:10:28
unauthorized scrambler
0:10:33
no not that one
0:10:39
with a stack overflow
0:10:45
oh yeah
0:10:46
i think you must be
0:10:48
this one
0:10:50
let's check
0:11:03
there's a stack overflow one i don't
0:11:05
need this
0:11:10
[Music]
0:11:11
to do
0:11:13
[Music]
0:11:15
where was the slap stack overflow onto
0:11:18
uh implements a heartbeat yeah that's
0:11:20
the one okay cool so i'm now gonna share
0:11:23
my screen
0:11:33
okay so
0:11:35
this was the one
0:11:37
in which he's um
0:11:39
so he's sending a ping from a client's
0:11:43
side
0:11:49
oh so you literally just send
0:11:52
you just send a message
0:11:55
yeah ping and then the server sends a
0:11:58
pong but in our case we won the opposite
0:12:04
i didn't i okay that's cool i thought it
0:12:06
was some special
0:12:08
uh
0:12:10
api through
0:12:12
through websocket but i guess not i
0:12:14
guess you just send a ping
0:12:18
that's what basically i can tell because
0:12:20
i don't know how and it does
0:12:23
work because he says that
0:12:25
um
0:12:31
he does say
0:12:33
huh
0:12:35
um i was just i was reading the code
0:12:38
it's okay go ahead sorry i didn't mean
0:12:40
to invite you
0:12:42
no no that's all right so he does say
0:12:45
that
0:12:48
it does send it
0:12:51
only
0:12:52
one time for
0:12:54
after 20 seconds
0:12:57
after the connection was open so it does
0:13:00
work
0:13:00
but it only happened what happens once
0:13:03
so after that it doesn't send
0:13:06
any more and that's basically because
0:13:10
this hasn't been implemented recursively
0:13:15
oh well i think
0:13:17
maybe
0:13:18
uh
0:13:19
maybe he didn't mean set timeout he
0:13:22
meant set interval
0:13:24
probably
0:13:25
yeah
0:13:27
yeah you must be
0:13:29
right on that
0:13:30
so
0:13:31
because we're going to be sending the
0:13:33
ping from the server side
0:13:38
isn't it
0:13:42
or the client side
0:13:49
um are you building client side
0:13:52
i suppose you could do it either way
0:13:58
that's weird i remember the ada i
0:14:00
remember we were going over the
0:14:01
documentation the other day
0:14:03
on aws it said you couldn't send
0:14:07
a you couldn't initialize a ping from
0:14:10
the server
0:14:11
yeah with the aws
0:14:13
oh
0:14:16
right right right right okay okay yeah
0:14:19
in that case this would make sense
0:14:25
yep
0:14:26
go on
0:14:27
i was just gonna say so
0:14:29
then i guess it's pretty simple all we
0:14:32
have to do
0:14:34
is on open we just start sending a ping
0:14:39
in an interval of every
0:14:42
29 20 seconds or 29 seconds or whatever
0:14:46
you want
0:14:47
and then
0:14:49
in the
0:14:50
on message lambda or whatever it's
0:14:52
called if we get a paying as a message
0:14:55
we just send back a pong is that it
0:15:00
sounds like it pretty much okay
0:15:02
sounds sounds simple
0:15:05
yep
0:15:06
let's do this then so
0:15:08
um on the client side what i'm gonna do
0:15:11
is
0:15:13
i'm gonna open this this is not my
0:15:15
client side this is my oh have you got
0:15:19
yes you have actually
0:15:20
joined
0:15:22
right
0:15:23
um it's crumb enhancement
0:15:31
so
0:15:34
um
0:15:38
on index page
0:15:41
load
0:15:45
so this is still friendly yet that's
0:15:47
fine
0:15:48
so
0:15:49
this one would come here
0:15:51
on load
0:15:57
i can never mind we can do it over here
0:16:00
home.html home.html
0:16:04
i believe there is a part in the code
0:16:06
where
0:16:07
there is the websocket on open
0:16:10
if you search
0:16:14
and open oh yeah
0:16:17
so on here we can basically do
0:16:22
copy paste
0:16:24
um
0:16:28
i took your advice
0:16:31
let's locate that one and
0:16:35
i think i have
0:16:38
i think i have a function
0:16:41
written somewhere where you send the
0:16:43
message
0:16:44
is it
0:16:46
okay let me check
0:16:49
message
0:16:51
that message
0:16:53
oh there you go dispatch
0:16:57
uh
0:16:58
well it's fine you can just you can just
0:17:01
do the
0:17:02
you don't need to do that nevermind
0:17:04
whatever it doesn't matter
0:17:08
forget what i said
0:17:10
no
0:17:11
well i mean that if the wheel is there
0:17:14
why would we re reinvent the wheel well
0:17:18
because all you have to write is
0:17:20
websocket send and then i i realized
0:17:23
that for
0:17:25
the other function i wrote that was to
0:17:27
actually dispatch
0:17:30
messages from
0:17:33
like
0:17:34
the more
0:17:36
complicated
0:17:39
um messages we're sending not just the
0:17:42
ping but the
0:17:45
other events on the page that were
0:17:47
happening like um
0:17:51
uh like sending a like creating a new
0:17:53
card and then we send that through the
0:17:55
websocket or changing the position or
0:17:57
the color or something
0:17:59
i see i see this is literally just
0:18:03
send
0:18:04
ping
0:18:06
so
0:18:08
so set interval
0:18:13
setting so ping
0:18:15
every three seconds
0:18:18
and that would
0:18:19
go to the url which is good
0:18:22
isn't it
0:18:23
websocket on open yeah
0:18:26
yeah
0:18:27
uh that ws though you want to change
0:18:29
that
0:18:31
ah yeah
0:18:36
easy peasy
0:18:38
lemon squeezy
0:18:42
oh by the way
0:18:44
did this say that in the u.s because uh
0:18:48
i had a friend of mine she used to say
0:18:51
this a lot and she was from us
0:18:54
what would you say easy peasy easy peasy
0:18:58
lemons
0:19:01
yeah
0:19:02
i don't know about that
0:19:04
i never heard that
0:19:06
what is the apple pies
0:19:08
apple
0:19:12
[Music]
0:19:17
oh okay that must have been
0:19:20
she must have
0:19:21
he invented it then apple
0:19:27
all right so this is that region
0:19:31
easy peas
0:19:34
apple pie and custard don't forget the
0:19:36
mustard
0:19:40
okay
0:19:41
i think that might be here
0:19:44
just right there
0:19:46
because it rhymes
0:19:48
yeah yeah
0:19:50
don't forget the mustang yeah that might
0:19:52
be it iron custard don't forget the
0:19:54
mustard okay i learned something today
0:20:01
something about my own culture
0:20:08
okay cool so
0:20:10
we have got this interval
0:20:12
so how do we
0:20:13
test this
0:20:18
with intel will appear in um
0:20:21
in in
0:20:22
in
0:20:23
in the
0:20:25
lambda right
0:20:27
um
0:20:28
yeah yeah
0:20:30
we should get a ping now to the lambda
0:20:33
yeah which we are not going to test it
0:20:35
now
0:20:36
i'll test it when gekko is working
0:20:40
okay
0:20:45
am i that you
0:20:46
will feel that now this is not fair is
0:20:49
that
0:20:54
are you there tori oh sorry what would
0:20:56
you say oh
0:20:58
no i was just talking to myself
0:21:02
okay um this is there and now we're
0:21:05
gonna go into um
0:21:07
[Music]
0:21:08
the
0:21:09
api
0:21:11
and do a pong here
0:21:17
so if the development is that one
0:21:22
so on message
0:21:24
that would be
0:21:29
on disconnects
0:21:33
i think it's default i think it's just
0:21:35
the default
0:21:38
yeah okay
0:21:40
uh
0:21:41
yeah that
0:21:51
because i'm thinking they might be
0:21:56
no that doesn't make sense if it was on
0:21:58
connect because it's already connected
0:22:04
uh yeah it's this it's this one yeah
0:22:06
that's it
0:22:09
it's a default is it yeah yeah okay
0:22:12
interesting
0:22:14
so this is the one we need to sanitize
0:22:17
to i think
0:22:19
at some point
0:22:22
i see
0:22:30
which honestly i've never done because
0:22:32
i've i've never had to deal with that
0:22:35
i've never used a library
0:22:38
yeah that's all right
0:22:46
so
0:22:47
api gateway's there which is fine
0:22:52
so basically what we can do is
0:22:55
um
0:22:58
do another function
0:23:03
you know we could do choosing we could
0:23:06
we could put a we could put in dynamo db
0:23:09
we could put up a
0:23:11
uh oh there's a frog
0:23:15
we could put a that's a para
0:23:18
there's a frog
0:23:19
why is it he's almost done
0:23:23
okay
0:23:24
no how can that be a frog it's a carrot
0:23:27
it's a it's a frog
0:23:29
it's a snail it's like these little
0:23:31
frogs like this big but they're super
0:23:33
loud
0:23:35
like this big yeah they're like the size
0:23:37
of a
0:23:39
i don't know us quarter
0:23:41
they're tiny
0:23:45
it's like those little it's like the
0:23:46
little birds but with the big boys yeah
0:23:51
i see
0:23:53
they're like they're iconic here like
0:23:55
yeah they
0:23:57
mostly at night but sometimes during the
0:23:59
day they go off too
0:24:06
all right
0:24:08
we could put a
0:24:09
we could put a um i mean this is easy to
0:24:12
circumvent but we could
0:24:15
uh we could put
0:24:16
um like uh
0:24:18
an ip address ban
0:24:21
list in dynamodb
0:24:27
probably yeah and then
0:24:30
then
0:24:31
put the ip and put some of the ip
0:24:34
addresses
0:24:36
that we don't want them to use
0:24:41
yeah you could you could like one thing
0:24:43
that maybe in the future if it's bad if
0:24:46
you get slammed is introducing like rate
0:24:49
limiting
0:24:50
[Music]
0:24:51
yeah
0:24:52
um and then if they're if they're like
0:24:56
it's like this i mean it would be a more
0:24:58
sophisticated implementation but like
0:25:02
you could rate limit calls which is
0:25:04
generally probably a good idea at some
0:25:06
point down the road
0:25:09
um
0:25:11
but then like yeah if they're like
0:25:13
abusive
0:25:14
or somebody's like even if it's a bot
0:25:17
trying to like
0:25:19
ddos you or something bad then you could
0:25:23
just like ban that abusive ip
0:25:27
yeah yeah
0:25:28
i see
0:25:29
although i i think i think aws probably
0:25:33
has their own
0:25:35
better implementation which is through
0:25:37
the aws um
0:25:40
firewall the laugh
0:25:45
but that's a that's probably i don't
0:25:47
know how free that is
0:25:52
yeah i probably haven't look into in
0:25:56
in the future i've never i've never used
0:25:59
it yeah yeah just yeah just think when
0:26:02
i'm here thinking about it
0:26:04
yeah yeah yeah
0:26:06
it's good it's just good thinking out
0:26:08
loud
0:26:10
all right so i think we might need to
0:26:14
introduce
0:26:15
say
0:26:21
a for loop here
0:26:23
for all the
0:26:24
ids
0:26:27
i will go to
0:26:30
well
0:26:32
if somebody's sending a
0:26:35
so i think
0:26:37
if we get a ping
0:26:41
then it's like a special path that all
0:26:44
it does is send a pong back to the
0:26:47
connection who sent it
0:26:52
yeah
0:26:53
[Music]
0:26:54
so
0:26:55
that would mean that we would have to
0:26:57
fetch the connection id
0:27:00
as well
0:27:01
well the the connection id will come
0:27:03
from the
0:27:04
the the contacts
0:27:07
object yeah
0:27:09
the the context object which which
0:27:13
um
0:27:14
comes from the
0:27:16
the hand the event object i guess
0:27:22
i think it's
0:27:23
i think we can just grab the
0:27:26
client contacts from there and then just
0:27:29
immediately send back a pawn
0:27:32
back to this client and then that way
0:27:38
i wonder if you even need to send back a
0:27:40
pong but maybe you do
0:27:46
if we don't then how how would
0:27:50
this one know
0:27:52
well the server will know the clients
0:27:54
there i wonder if the client websocket
0:27:56
needs to know
0:27:59
that
0:28:00
it got back something yeah yeah
0:28:03
probably
0:28:04
then that might be the case
0:28:07
all right um so where do we implement
0:28:09
this
0:28:14
um broad message to connections
0:28:19
oh this is
0:28:23
bold message
0:28:25
i think it should be broadcast
0:28:28
okay i think i wrote that
0:28:31
broad message send connection ad yeah so
0:28:35
he's broadcasting the message so if we
0:28:38
can basically
0:28:39
put it over here
0:28:42
the pong
0:28:46
[Music]
0:28:48
map
0:28:50
post
0:28:51
to connection well this is to send all
0:28:55
the connections
0:28:57
a message
0:29:00
this is map this i think if i remember
0:29:02
the code
0:29:04
we get a message
0:29:07
in the event object um from the handler
0:29:10
the lambda handler then
0:29:13
we
0:29:14
get the connection id
0:29:17
and then we go to dynamo db
0:29:19
[Music]
0:29:21
look at that connection id and say
0:29:24
this connection id belongs to this board
0:29:28
and then we get all the users from that
0:29:31
board
0:29:32
and then we
0:29:35
we
0:29:35
loop over all the users take out the
0:29:38
user who sent the message and then send
0:29:41
back
0:29:42
that message to all the other users
0:29:45
excluding the user who sent it because
0:29:47
they don't need the message
0:29:48
no
0:29:49
no they don't need it
0:29:51
right right yeah and in this case
0:29:55
we
0:29:56
can actually skip all that and just send
0:29:59
back
0:30:00
a pong
0:30:02
to the user who sent it because
0:30:05
we don't we don't want to send back
0:30:07
pongs to the other users we only want to
0:30:10
send back a pong to the user who sent
0:30:12
the message
0:30:14
yeah yeah absolutely
0:30:17
[Music]
0:30:27
[Music]
0:30:34
okay so now we can
0:30:36
possibly do
0:30:49
event
0:30:50
[Music]
0:30:51
and then um
0:30:52
new api gateway url
0:30:56
oops that's not no it should be here
0:31:00
table web socket
0:31:02
no url
0:31:06
we need the url which is no hair
0:31:10
uh it's something it's somewhere up
0:31:12
there
0:31:15
i think
0:31:18
[Music]
0:31:27
[Music]
0:31:30
um i think you can actually
0:31:33
so it's called endpoint on line 115.
0:31:43
okay and
0:31:45
ah so how about if we make this a global
0:31:48
variable
0:31:50
what um well this is a this function
0:31:54
creates
0:31:56
a new api gateway so we could probably
0:31:58
just reuse this function
0:32:01
because we need the api gateway anyways
0:32:11
yeah yeah yeah true
0:32:16
so if we do basically this
0:32:27
so
0:32:28
yeah we can
0:32:33
okay and then it would be
0:32:37
[Music]
0:32:38
all this can go
0:32:42
then we can basically say await
0:32:45
api post connection
0:32:54
does that take an event yes it does
0:33:05
okay cool to the battle
0:33:09
can i just go outside and sing
0:33:18
that's it
0:33:23
maybe yeah
0:33:24
live so we need to call
0:33:27
this now
0:33:31
somewhere
0:33:34
event
0:33:36
you can basically get rid of this one
0:33:39
or the console
0:33:40
login can i uh because this is your code
0:33:43
and i don't really know um
0:33:46
what was the purpose of this
0:33:49
uh which one
0:33:50
sorry one two
0:33:54
oh you can't i don't know you can get
0:33:56
rid of it
0:33:58
i think it was just for cloud
0:34:00
cloud uh cloud watch vlog
0:34:04
you know which are yeah
0:34:06
they're free right cloud watch vlogs are
0:34:09
free
0:34:10
yeah yeah
0:34:12
i'm a little teapot that's right
0:34:16
okay so
0:34:17
it's an easter egg oh yeah
0:34:22
so results
0:34:24
i'm just
0:34:26
thinking where to call that function now
0:34:32
so i think if
0:34:35
the
0:34:36
uh in the handler
0:34:39
we're
0:34:40
gonna get the event.party
0:34:44
but
0:34:47
it's only going to say ping it's not
0:34:50
going to have the message or the board
0:34:52
id
0:34:54
on line 129
0:35:00
so we could we could then send the ping
0:35:05
in a message
0:35:07
object
0:35:10
and then we could say if
0:35:12
message equals ping then just call this
0:35:15
function
0:35:20
ah okay right right right
0:35:23
yeah if the if the key message the or i
0:35:27
mean the key
0:35:28
message its value is ping then we just
0:35:33
call that function and immediately like
0:35:36
exit out of the the lambda
0:35:39
so basically
0:35:56
and
0:36:11
[Music]
0:36:14
i think you meant triple equals
0:36:19
or double equals on the message equal
0:36:24
yeah i'm just looking for it at the
0:36:27
moment where did it go
0:36:29
oh there you go
0:36:44
okay
0:36:45
return
0:36:47
that on to what does this return
0:36:53
params person connection
0:36:58
would this work
0:37:00
do we need to return a status code of
0:37:02
200
0:37:07
after that scent
0:37:14
for the lambda
0:37:15
does it need a status code of 200
0:37:20
to be honest
0:37:22
if it's gonna return that the string
0:37:26
probably not
0:37:28
i think but i could be wrong here
0:37:30
because i'm doing this
0:37:32
the first time
0:37:33
return the string what string
0:37:39
oh it's um
0:37:41
so
0:37:42
i was confused about how that worked in
0:37:44
the beginning
0:37:45
so after
0:37:47
learning more about how it works so
0:37:50
that endpoint
0:37:52
in aws
0:37:54
that you see in api gateway and also the
0:37:56
one that you have
0:37:58
here that end point that
0:38:01
um you actually use this line on 143 to
0:38:05
send a post request
0:38:07
with that param data that you have there
0:38:10
the connection id and the data
0:38:12
and it actually sends like
0:38:14
essentially a post request to that
0:38:16
endpoint with these parameters
0:38:20
just like an ordinary http post request
0:38:23
and then from there i think
0:38:25
um
0:38:27
the aws
0:38:28
websocket api gateway whatever actually
0:38:32
then sends the message
0:38:35
from that post request back to the
0:38:38
connection id somehow
0:38:40
but it actually doesn't
0:38:42
the
0:38:43
client it
0:38:44
never gets anything back from this
0:38:47
lambda because this lambda is actually
0:38:49
triggered by
0:38:51
the websocket
0:38:54
connection
0:38:55
uh or the the aws
0:38:59
right websocket right not not the actual
0:39:02
client
0:39:03
so yeah that took me a long time to
0:39:06
understand but then i was like
0:39:09
okay
0:39:11
that actually
0:39:13
like that's what that's what happens
0:39:15
under the hood
0:39:17
so there's actually an endpoint too
0:39:20
um that you can you can see them in api
0:39:23
gateway and if you send a post request
0:39:25
to that
0:39:26
endpoint you'll actually get messages um
0:39:29
in a websocket if you send the right
0:39:32
connection id
0:39:35
like if you opened up the
0:39:37
the what was the other thing pi socket
0:39:41
yeah yeah you got that client's
0:39:43
connection id and then you opened up
0:39:45
postman and then you got that endpoint
0:39:47
and you sent them
0:39:49
um like a post request with data to that
0:39:52
endpoint with that connection id then in
0:39:55
pi socket that client would would get
0:39:57
the message
0:40:00
ah
0:40:01
right so
0:40:03
aws handles that somehow like they get
0:40:07
that post request and then they must do
0:40:09
something and
0:40:10
send it back to the client
0:40:13
right right right so if that's the case
0:40:16
then we can basically um
0:40:19
say that if the poster connection
0:40:22
returns a pong then basically just
0:40:25
return a
0:40:27
status active
0:40:30
or status okay
0:40:34
uh i don't know if you're gonna get
0:40:36
anything back from that post the
0:40:38
connection but maybe
0:40:40
that's a good question
0:40:44
that's actually not a bad
0:40:47
question to think about
0:40:50
but i don't think it's important because
0:40:52
i'm not doing that with the other
0:40:54
broadcast message function
0:40:57
i'm not waiting for a response and just
0:40:59
right
0:41:06
hmm i see
0:41:08
that is yeah that is a good question i
0:41:10
wonder what what you get back from that
0:41:12
post to connection
0:41:14
hang on but you are also returning it
0:41:17
the entire promise
0:41:22
yeah but i'm not like i don't i think
0:41:25
the only thing i'm doing is just
0:41:26
checking if
0:41:28
the promises
0:41:32
were successful or rejected and then
0:41:36
doing something else i can't remember
0:41:38
what
0:41:39
it's been a long time
0:41:41
yeah yeah it must have been to be honest
0:41:45
all right um in that case
0:41:49
at the moment what it's doing is
0:41:54
it's just um
0:41:56
going in the
0:41:57
event um this function
0:42:00
the module handler and then
0:42:04
is just checking if the message object
0:42:06
is ping
0:42:09
from the event
0:42:11
which is which would be coming from the
0:42:14
front end
0:42:15
if it's pink then is just returning
0:42:23
this
0:42:25
which sends a pong
0:42:27
back to the choir
0:42:34
all right
0:42:35
we can try this but i'll probably
0:42:39
try in my
0:42:42
in my own time
0:42:45
is it ap is the api gateway down
0:42:51
what'd you mean down
0:42:53
like did you take it did you take down
0:42:55
an api gateway
0:42:58
no i didn't take out
0:43:00
anything um
0:43:02
we could test it in pie socket then
0:43:06
actually yeah let's give that a try
0:43:11
and and don't forget then in the client
0:43:13
side that you need to
0:43:15
send the message
0:43:17
in
0:43:19
you know when you send the websocket you
0:43:21
need to put it in the message you need
0:43:23
to
0:43:25
put it in a message key key on your
0:43:28
object like
0:43:30
key message value yeah
0:43:38
what was it pi socket what
0:43:40
i think that's it i think there's just
0:43:42
like a tool
0:43:44
drop down or something
0:43:46
they're asking me for money which i
0:43:48
don't know it's free it's free
0:43:51
uh tools go to tools
0:43:55
i think it's the console oh there you go
0:43:57
yeah website
0:43:59
looks like a test right right i see
0:44:02
if we do that over here
0:44:06
and
0:44:09
and basically get the url from
0:44:14
our
0:44:19
front
0:44:20
end that's the euro here
0:44:34
okay connection is closed
0:44:38
did we take it down
0:44:41
oh i don't know did you
0:44:43
i have no idea let's have a look
0:44:54
so uh when it when is the national
0:44:55
evening the show
0:44:57
um
0:44:58
next
0:44:59
wednesday is this oh really
0:45:01
oh yeah
0:45:03
sadly
0:45:04
yeah that's thanks
0:45:06
[Music]
0:45:12
do you have do you have somebody
0:45:15
else who wants to join
0:45:17
might ask
0:45:19
someone that i haven't
0:45:21
mined and if they
0:45:24
are
0:45:25
keen on this
0:45:27
because
0:45:28
i can ask a friend too
0:45:31
if they wanted if they want to join if
0:45:33
if you want it's up to you
0:45:37
yeah man
0:45:39
that view was
0:45:40
similar because i think what we
0:45:43
need to get done is basically some of
0:45:45
the bugs
0:45:48
that's what i guess and the xss feature
0:45:54
isn't it
0:45:56
yeah
0:45:58
so
0:45:59
until we find out another
0:46:01
another problem
0:46:05
hey it's like free pen testing like free
0:46:08
yeah yeah free fantastic that's great
0:46:12
oh no why did i no no no no come on
0:46:16
objective says about time
0:46:21
do you think you think ganesha's moving
0:46:23
to greener pastures
0:46:31
okay that's my fault i was entering the
0:46:34
works passcodes
0:46:37
which is obviously not gonna work
0:46:46
definitely
0:46:51
but yeah i think this
0:46:54
this project is nearly there probably a
0:46:57
month
0:46:58
that's all
0:47:04
right
0:47:09
websocket
0:47:11
is still there
0:47:14
still there interesting
0:47:24
so why does it not zoom back socket
0:47:27
tester
0:47:28
yes
0:47:33
check the console for error occurred in
0:47:35
the comments
0:47:38
um
0:47:43
websockets failed events
0:47:47
we're talking
0:47:50
small settlement error
0:47:56
next
0:47:58
[Music]
0:48:00
fjs
0:48:05
current target
0:48:08
do you
0:48:09
can you share the link i'll try on my
0:48:11
computer
0:48:29
you sure the api gateway is up
0:48:34
i'm not sure about that either
0:48:38
oh yeah that must be up there that must
0:48:41
be
0:48:44
huh
0:48:48
it did did the on connect get changed
0:48:53
i don't think it did
0:48:57
yeah
0:48:58
mine failed too
0:49:05
oh
0:49:06
all right
0:49:08
um i'm connected and i get changed
0:49:11
i'm pretty sure it didn't get changed
0:49:15
you guys push anything up to aws
0:49:18
yesterday
0:49:20
we just pushed uh
0:49:22
actually
0:49:24
no i didn't
0:49:28
so you didn't run sam
0:49:31
deploy
0:49:34
yesterday no
0:49:36
we didn't
0:49:37
huh i think so
0:49:40
um
0:49:41
that's right
0:49:47
interesting
0:49:50
so
0:49:51
why would this be happening now
0:49:54
is it in cloud watch
0:49:56
or anything i'm gonna go and check there
0:50:02
[Music]
0:50:25
welcome on connect function
0:50:27
yeah might as well
0:50:31
this is 17th of jan well that's far
0:50:36
this is 15th of jan so we haven't got
0:50:39
any
0:50:40
latest one
0:50:42
websocket disconnects
0:50:44
website handler function okay
0:50:47
this is on the ninth
0:50:52
oh there are way too many
0:50:56
default on connect
0:50:59
can we get the date of these
0:51:06
oh well
0:51:08
i think i think i think gekdev wants the
0:51:11
more
0:51:13
host audience interactive show
0:51:18
if you know what i'm saying
0:51:21
i know exactly what you're saying which
0:51:23
is one of the reasons why
0:51:26
um
0:51:28
we're going for local hosts at the
0:51:30
moment
0:51:35
because we do want to get this project
0:51:37
finished
0:51:49
so that's not there
0:51:51
disconnect api
0:51:53
wraps up disconnect connect
0:51:57
ninth
0:51:58
second
0:51:59
so there are no there are no logs either
0:52:03
connect function
0:52:08
same app
0:52:09
not that is not the case
0:52:11
scrambling api stack
0:52:21
all right
0:52:23
looks like the websocket connection
0:52:26
handler function
0:52:28
was modified 11 this is the last
0:52:30
modified 11 days ago according to aws
0:52:33
lambda
0:52:36
all right
0:52:38
you
0:52:38
[Music]
0:52:40
i don't remember unless i've got bad
0:52:42
memory let me have a look it'll be hard
0:52:45
to remember for sure i never remember
0:52:51
monitor
0:52:54
roll card is that one
0:52:59
so
0:53:00
which one was it
0:53:03
um
0:53:04
it's here i'll actually send you the
0:53:07
link
0:53:08
yeah if you can that'd be great so did
0:53:11
it say
0:53:12
11 days ago right
0:53:15
uh yeah yeah that was from the
0:53:18
lambda console in aws
0:53:27
because i'm trying to look at the logs
0:53:28
of the recent invocations
0:53:34
and see if this actually is getting spun
0:53:36
up at all
0:53:39
i don't know why it's taking me forever
0:53:42
how dare you
0:53:44
oh yeah sorry
0:53:46
modified
0:53:47
uh well it was on the previous page but
0:53:50
if you go to the logs it looks like it
0:53:52
is running
0:53:57
because this is from today
0:54:01
[Music]
0:54:03
i think he ran but he gave the error
0:54:06
probably
0:54:07
yeah let me just go to the log itself
0:54:11
yeah
0:54:14
no no matters
0:54:16
and that's on
0:54:18
the 21st year
0:54:22
yeah there are no errors
0:54:30
so are those
0:54:44
wait um
0:54:45
with the
0:54:48
with the on connect
0:54:52
oh oh with the on connect you
0:54:57
what did i do
0:55:01
oh oh because if you look at the code
0:55:04
for the onconnect handler on line 34. i
0:55:07
forgot
0:55:08
you need to send the query string
0:55:10
parameter
0:55:11
in the websocket connection
0:55:14
for the board id so that
0:55:17
the onconnect handler knows which board
0:55:19
id you're connected to
0:55:21
and then and then puts that in dynamodb
0:55:24
along with the connection id
0:55:28
oh all right right right right right and
0:55:31
say i see i see that makes sense now who
0:55:34
wrote the documentation
0:55:39
um
0:55:40
okay so how about if you open a postman
0:55:43
and choose
0:55:44
all boards and just basically
0:55:50
i would like to see cartier come back to
0:55:52
the show
0:55:58
objective is asking for cartier
0:56:06
yeah i'll probably
0:56:08
ask him but i'd
0:56:09
doubt it because he he must be really
0:56:12
busy
0:56:13
great full-time projects and
0:56:16
uh full-time
0:56:17
work as well
0:56:19
so i'm not entirely sure but yeah okay
0:56:22
let's see how it goes
0:56:26
i think he said he's in india right now
0:56:28
huh
0:56:29
yeah
0:56:32
uh so that one board id
0:56:36
did you mean this way
0:56:40
um
0:56:42
pride and then query string and then
0:56:45
that
0:56:46
i think you need
0:56:50
honestly i don't remember but it's
0:56:52
definitely on the client side
0:56:54
i think i think you put board id
0:56:56
actually try board id
0:56:59
support id
0:57:01
yeah try that and then equal
0:57:05
ah yeah
0:57:12
so now what do i do
0:57:15
it's like dusting off old code
0:57:20
all right so we can connect so now we
0:57:23
want to spend a message with a pain
0:57:26
right
0:57:30
does it have to be in a body
0:57:33
huh
0:57:34
does it have to be inside of a body or
0:57:36
it takes care of that automatically i
0:57:38
don't remember let's find out
0:57:41
so where's the message here
0:57:44
one click this is
0:57:48
did you deploy this
0:57:50
no i didn't
0:57:51
oh
0:57:58
anyway we can come back tomorrow
0:58:00
cool
0:58:01
we can come back good progress good
0:58:03
progress i think it'll work
0:58:06
we're getting there
0:58:07
we can't almost it wasn't so bad
0:58:10
actually the heartbeat then i thought it
0:58:12
was
0:58:14
another
0:58:15
special api of the websocket api that
0:58:19
you use to do it but i guess not
0:58:22
yeah
0:58:23
yeah i thought it was going to be a lot
0:58:26
harder than this
0:58:28
uh
0:58:29
or
0:58:30
just kind of call-in
0:58:33
api and that would take the
0:58:37
or or the heavy lifting
0:58:39
for you but
0:58:40
yeah it wasn't that hard that at all if
0:58:43
this works
0:58:44
yeah this works
0:58:49
yeah exactly
0:58:51
all right man um do you wanna do the
0:58:53
honest
0:58:55
yeah so today we got to
0:58:58
uh work on the websocket heartbeat
0:59:01
um
0:59:03
we
0:59:04
are using a simple implementation of
0:59:07
just using a set interval
0:59:10
on the client side to send a ping to the
0:59:13
server
0:59:14
which is aws api gateway
0:59:18
and
0:59:19
in our
0:59:22
message lambda receiving messages we're
0:59:24
just looking for that ping
0:59:27
and then
0:59:28
we're just simply going to send back a
0:59:30
pong back to that connection id
0:59:33
uh in the lambda
0:59:37
featuring tomorrow we're gonna have a
0:59:38
lot of fun
0:59:41
testing in tomorrow's so if you wanna
0:59:45
be a part of the fun um join us
0:59:48
tomorrow's same time
0:59:50
same place and
0:59:52
the same task
0:59:56
exactly
0:59:58
all right guys have a good night and
1:00:01
evening wherever you are in the world
1:00:03
all right
1:00:04
bye for now
1:00:05
have a great night thank you everyone
1:00:08
have a great night
1:00:09
[Music]