Friday, December 21, 2018

Mike's Interview on NCKToday 12-14-2018

As a Concordia High School Graduate the local radio station often interview alumni to see what they have done since high school.  Here is my interview from 12/14/2018:
NCKToday Interview Link

Friday, September 28, 2018

Amazon Connect training

I recently attended a partner training session for the Amazon Connect product.  This pay as you go call center product has the potential to disrupt the call center industry as it matures.  You can build a fully functional call center in minutes using this product.  I really enjoyed this class and I recommend it to Amazon partners and customers.  

The class was hosted by Angela Krisinger and Milos Cosic and they were absolutely wonderful instructors.  

Overview of Amazon Connect:
  • Announced in March of 2016 at Enterprise Connect https://www.nojitter.com/post/240172527/aws-announces-amazon-connect
  • Amazon created it to meet their contact center needs and internally called GACD or Global Automatic Call Distribution
  • Amazon's internal product also supports messaging, so expect that as a future feature
  • Lex Chatbots are based upon Amazon Alexa's backend services, so the call center is AI ready
  • Connect user Polly for Text to speech
  • Lambda is used for all function calls and supports various programming languages
  • DynamoDB is typically used for a Database, but many other options are available
  • S3 and Glacier are the storage medium
  • Quick Starts are easy integrations that AWS makes publicly available for use.  They use CloudFormation to quickly deploy code, set permissions, and build infrastructure.  https://aws.amazon.com/quickstart/connect/
  • Amazon Connect is an "API first" platform, but many features have not been exposed as of yet.
  • The connect softphone interface is WebRTC based
  • There is NO support for SIP endpoints
  • There is NO support for BYOT, but they do support agents logging into a desk/cell phone via a PSTN number
  • All numbers use E.164 format in the platform
  • Call Recording is supported out of the box and does 3 options for recording
    • Agent Only
    • Customer Only
    • Both
  • Support for many compliance standards including GDPR

Please create an AWS Account in advance, as you’ll be using your own account for
Lab exercises (modules) or this course. Make sure that you have full access to the
following AWS services: Amazon Connect, Amazon S3, AWS Lambda, Amazon
DynamoDB, Amazon Polly and Amazon Lex
.
AWS CLI is also required, installed and

configured in advance. The instructions are given in the following section.
During the course, we are going to use us-east-1 region for all Lab exercises
(modules). This is mandatory as all required services are available in this region.
AWS Command Line Interface (CLI)

Permissions
You will need to give Amazon Connect permission to execute your AWS Lambda
functions. This action is performed through the AWS CLI. You will need to have the
AWS CLI installed and configured through the aws configure command.
Note: please be sure to configure the AWS CLI for the same region as your Amazon
Connect instance, in our case us-east-1.
For AWS CLI installation instructions, please reference:
http://docs.aws.amazon.com/cli/latest/userguide/installing.html

For AWS CLI configuration instructions, please reference:
http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html

Creating Crypto Keys
To configure AWS CLI, you need an Access Key, which consists of an Access Key ID
and Secret Access Key. If you don’t have access keys, you can create them by using
AWS IAM from your AWS Management Console.
Note: We recommend that you use IAM access keys instead of AWS root account access
keys. To create access keys, you must have permissions to perform the required IAM
actions.
To obtain your access keys:
1. Open the IAM console
2. In the navigation pane, choose Users
3. Choose your IAM User Name (not the checkbox)
4. Choose the Security Credentials tab and then choose Create Access Key
5. To see your access key, choose Show User Security Credentials. Your
credentials will look something like this:
a. Access Key ID: AKIAIOSFODNN7EXAMPLE
b. Secret Access Key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
6. Choose Download Credentials, and store the keys in a secure location
Your secret key will no longer be available through the AWS Management Console;
you will have the only copy. Keep it confidential in order to protect your account, and
never email it. Do not share it outside your organization, even if an inquiry appears to
come from AWS or Amazon.com. No one who legitimately represents Amazon will
ever ask you for your secret key.

Using AWS Lambda to grant permissionsOptionally, you can use a Lambda function to grant permissions for Amazon Connect
to Invoke another Lambda Function. In this case, AWS CLI is not required. Please
implement this Lambda function in advance.
1. Open the AWS Console
2. Select US East (N. Virginia) region
3. Select AWS Lambda from services menu
4. Select Create function
5. Select Author from scratch
6. Name: AmazonConnect_GrantPermission
7. Runtime: Node.js 6.10
8. Role: Create a custom role
9. In the pop-up form, set Role Name:
Lambda_AmazonConnect_GrantPermission
10. Expand View Policy Document
11. Select Edit
12. Edit the policy by adding “lambda:AddPermission”
13. Review the form and select Create function
14. Below is sample code for the Lambda function:
15. Save the function
16. You can test you function by creating a test event payload, with the function
name:
17. At this point, your Lambda function would fail, as “TestLambdaFunction”
function does not exist yet. We are going to use this event, with proper
function name, later in the Lab exercises.

Once Prerequisites are complete begin lab...

Begin Lab Here
AWS Connect Lab (PDF)
Table of Contents
Introduction .........................................................................................................................4
Case Study ...........................................................................................................................5
Hands-on Module 1: Amazon Connect basic setup ..........................................................6
Create your Amazon Connect instance ..........................................................................6
Amazon Connect Queues and Routing Profiles ..........................................................15
Contact Flow Design ......................................................................................................17
Permissions ....................................................................................................................19
Receive the First Call......................................................................................................26
Hands-on Module 2: Amazon Connect Dynamic Contact Flow .....................................28
AWS Lambda role and policy for Amazon DynamoDB access ...................................28
Creating and configuring the DynamoDB table ..........................................................30
AWS Lambda Integration ..............................................................................................31
Giving Amazon Connect permission to invoke your Lambda function ......................39
Employee Authentication Contact Flow.......................................................................41
Hands-on Module 3: Amazon Connect and Amazon Lex ...............................................56
Build your Lex bot ..........................................................................................................57
Integrate Your Lex Bot with Amazon Connect ............................................................65
Testing it all together ....................................................................................................73
Hands-on Module 4: Amazon Lex Enhanced ...................................................................74
Build your Lambda function..........................................................................................74
Creating and configuring the DynamoDB table ..........................................................79
Reconfigure your Lex bot .................................................................................................79
Read booking price in your Amazon Connect Contact Flow ..............................................84
Testing it all together ....................................................................................................85
Adding Lex Variables to your Contact Flow .................................................................85
Hands-on Module 5 – Send a SMS Confirmation ............................................................87
AWS Lambda role and policy for AWS SNS Publish ....................................................87
Giving Amazon Connect permission to invoke your Lambda function ......................92
Update Amazon Connect Contact Flow .......................................................................94
Hands-on Module 6 – Integrate CCP into a custom web page .................................... 100
Amazon Connect Streams .............................................................................................. 101
Getting Started – Downloading Streams ........................................................................ 105
Initialization ................................................................................................................... 105
Event Subscription ......................................................................................................... 106
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Page 3 of 116
Amazon Connect Bootcamp Lab Guide v2.0
Simple – Serverless – Custom CCP.................................................................................. 106
Hands-on Module 7 – Trying it all Together .................................................................. 116


Additional Link to examples:
https://www.connectdemo.com/index.html

Friday, August 24, 2018

Windows 10 IOT LTSB Updates

Because I spent hours trying to find these updates between Dell and Microsoft....Here is the link that I found to download the patches I needed.
http://www.catalog.update.microsoft.com/Search.aspx?q=Windows%2010%20LTSB

Saturday, June 23, 2018

New BioHack NR

As we age it has been scientifically proven that NAD levels in the body decrease dramatically with age.  Recently a startup company has created a new form of Vitamin B3 called Nicotinimide Ribosome or NR.  This molecule is currently patented and sold under the brand name Niagin.  Biohackers are using it as a tool to increase your healthspan.  After 30 days of taking Niagin they claim that it increases your NAD levels in the body by up to 40%. 

I have had my doubts as to the validity of these studies, but I have began testing this myself to see if it has any positive effects on me.  So far after 30 days, I have noticed slight weight loss of about 5 lbs with no exercise.  I also notice that I have more energy and my skin seems softer.  I haven't ruled out other factors, but just my observations as of now. 

I also found this article interesting from the bulletproof blog from one of the inventors of Niagen:
https://blog.bulletproof.com/charles-brenner/

Don't confuse Vitamin B3 (Niacin) with Vitamin B3 (NR) because I have taken Niacin in the past and it causes my skin to flush red and my heart to race with supplementation.

I am interested in learning more about bio-hacking and anti-aging products.  I have read several books on the topic and I have found this hack very promising with little risk.  Some other topics that are of interest to me are intermittent fasting, keto diets, and the gut microbiome. 

After going through cancer treatments, I have learned the importance of food on your overall health and food is by far the best medicine. 

I will continue to experiment with biohacking and tracking my results through uBiome, my weight, and other lifestyle qualitative attributes.

Thursday, May 24, 2018

The new Helium blockchain whitepaper is very interesting to me, because it uses what is called Proof-of-Coverage and Proof-of-Serialization instead of proof of work as a verification method.  I look forward to seeing some proof of concepts using this technology for IoT.

Helium Blog
https://blog.helium.com/tagged/blockchain
https://blog.helium.com/tagged/blockchain

Helium Whitepaper
http://whitepaper.helium.com/
http://whitepaper.helium.com/

Saturday, March 17, 2018

Avaya's New Zang.io

I am interested to see how this new offering from Avaya called Zang.io will work out.  I have seen it used in the Enterprise Connect Hack-a-Thon, but I am curious how real customers will use it.  I will need to follow up on this.  Avaya is really trying to make a comeback, but it may be a bit late.  We will see.

Monday, February 26, 2018

Saturday, February 17, 2018

Wifi OnAir Sign

Wifi OnAir Sign

Electronics:
http://www.instructables.com/id/ESP8266-Led-Strip-MQTT-Control-Lights-WS2812/

Useful for pin mapping:
static const uint8_t D0 = 16;
static const uint8_t D1   = 5;
static const uint8_t D2   = 4;
static const uint8_t D3   = 0;
static const uint8_t D4   = 2;
static const uint8_t D5   = 14;
static const uint8_t D6   = 12;
static const uint8_t D7   = 13;
static const uint8_t D8   = 15;
static const uint8_t D9   = 3;
static const uint8_t D10  = 1;

// Assign Arduino Friendly Names to GPIO pins
#define D0 16
#define D1 5
#define D2 4
#define D3 0
#define D4 2
#define D5 14
#define D6 12
#define D7 13


Testing the LED Strip Arduino code
=======================================
// NeoPixel Ring simple sketch (c) 2013 Shae Erisson
// released under the GPLv3 license to match the rest of the AdaFruit NeoPixel library
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
  #include <avr/power.h>
#endif
// Which pin on the Arduino is connected to the NeoPixels?
// On a Trinket or Gemma we suggest changing this to 1
#define PIN            0
// How many NeoPixels are attached to the Arduino?
#define NUMPIXELS      50
// When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals.
// Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest
// example for more information on possible values.
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
int delayval = 500; // delay for half a second
void setup() {
  // This is for Trinket 5V 16MHz, you can remove these three lines if you are not using a Trinket
#if defined (__AVR_ATtiny85__)
  if (F_CPU == 16000000) clock_prescale_set(clock_div_1);
#endif
  // End of trinket special code
  pixels.begin(); // This initializes the NeoPixel library.
}
void loop() {
  // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one.
  for(int i=0;i<NUMPIXELS;i++){
    // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255
    pixels.setPixelColor(i, pixels.Color(0,111,0)); // Moderately bright green color.
    pixels.show(); // This sends the updated pixel color to the hardware.
    delay(delayval); // Delay for a period of time (in milliseconds).
  }
}
======================================================
3d printed sign





Friday, February 16, 2018

Microsoft IoT Notes

Jeremy Foster is a senior programmer at Microsoft that does extensive development on Azure and on IoT devices.

His site has some great information:
Jeremy Foster's Blog
http://www.codefoster.com

Introduction to Azure IoT from Microsoft Virtual Academy
https://mva.microsoft.com/en-US/training-courses/introduction-to-azure-iot-17611

His GitHubs for code samples:
http://github.com/codefoster
http://github.com/Azure/azure-iot-gateway-sdk
http://github.com/17minds/gateway/


Partner Learning Portal (Requires partner account)
https://learningportal.microsoft.com/

Tuesday, January 16, 2018

Hacking Embedded hardware video

I am trying to learn more about how hackers might be able to compromise factory IoT devices in an attempt to help find ways to prevent these types of attacks and I found this interesting video from a 34C3 presentation.

How to Hack SCADA from 34C3: https://youtu.be/Itgwb3rn7gE

34C3 - SCADA - Gateway to (s)hell




Hacking industrial control gateways

Small gateways connect all kinds of field busses to IP systems. This talk will look at the (in)security of those gateways, starting with simple vulnerabilities, and then deep diving into reverse-engineering the firmware and breaking the encryption of firmware upgrades. The found vulnerabilities will then be demonstrated live on a portable SCADA system.

Companies often utilize small gateway devices to connect the different field-busses used in industrial control systems (such as Modbus, RS232 etc) to TCP/IP networks. Under the hood, these devices are mostly comprised of ARM-based mini computers, running  either custom, tiny operating systems or uClinux/Linux. The talk will look at the security aspects of these gateways by examining known and unfixed vulnerabilities like unchangeable default credentials, protocols that do not support authentication, and reverse engineering and breaking the encryption of firmware upgrades of certain gateways.

The talk will consist of a theoretical part, an introduction on how to reverse-engineer and find vulnerabilities in a firmware-blob of unknown format, and a practical part, showcasing a live ICS environment that utilizes gateways, from both the IP and  the field-bus side, to pivot through an industrial control system environment: Demonstrating how to potentially pivot from a station in the field up to the SCADA headquarters, permanently modifying the firmware of the gateways on the way.

Thomas Roth

Monday, January 8, 2018

Friday, January 5, 2018

Cool Application on Google AIY Voice Kit

My good friend Yuibi shared his new Github creation that uses Google's AIY Voice kit and machine learning to play back Japanese music on his "Google Home".  Pretty cool project!

https://github.com/yuibi/homemade_pi3

Thanks for sharing Yuibi!

Thursday, January 4, 2018

My ESP8266 Notes

The ESP8266 module is one of my favorite IoT modules to play with, because of its low price and ease of use.  Right now you can get one for as low as $2/board with everything you need.  Ordering on Amazon will cost you around $8-$20, but I bought one to experiment with from Amazon before making a bulk order from China on ebay to get better pricing.

http://www.esp8266.com/

http://everythingesp.com/

My favorite board and instructions:
http://www.instructables.com/id/Programming-the-ESP8266-12E-using-Arduino-software/

Get the Serial Driver for Windows!!!


Firmware Flasher for bin files:

  • https://github.com/nodemcu/nodemcu-flasher
  • https://github.com/espressif/esptool
  • https://github.com/marcelstoer/nodemcu-pyflasher/releases (Nice!)
  • https://nodemcu.readthedocs.io/en/master/en/flash/
Where do I get the firmware?
  • Build your own:
    • https://nodemcu-build.com/faq.php
  • Find someone else's build and download it or use the default old image from devkit
    • https://github.com/nodemcu/nodemcu-devkit-v1.0

What do I flash?
  • bin/0x00000.bin to 0x00000
  • bin/0x10000.bin to 0x10000
  • Your custom firmware using the nodemcu-build.com and pyflasher

Setup Arduino Libraries for ESP8266 and IRController blueprint (source)

  1. Install Arduino IDE
  2. Install ESP8266 Arduino Core
  3. Install the following libraries from the Arduino IDE Library Manager: ESP8266WebServer ESP8266WiFi ArduinoJson WiFiManager NTPClient IRremoteESP8266 as well as Cryptosuite which is not on the IDE
  4. Load the IRController.ino blueprint from this repository
  5. Upload blueprint to your ESP8266 (the .ino file). Monitor via serial at 115200 baud rate
  6. Device will boot into WiFi access point mode initially with SSID IRBlaster Configuration, IP address 192.168.4.1. Connect to this and configure your access point settings using WiFi Manager. If your router supports mDNS/Bonjour you can now access your device on your local network via the hostname you specified (http://hostname.local:port/), otherwise via its local IP address (this IP address is displayed on the serial output)
  7. Forward whichever port your ESP8266 web server is running on so that it can be accessed from outside your local network, this is critical since Alexa commands come from Amazon's servers, not locally
  8. Download the IR Controller Alexa skill and start creating your devices. Each IR command will require a URL which can be saved. Choose whichever functionality you desire. Information on creating the URLs can be found below

Wednesday, January 3, 2018

I am posting this great newsletter that I receive from Chris Sandovall monthly.  He does a great job of keeping his ear to the latest trends. 

Some great reads here from his newsletter below:

I hope you find value from this newsletter. If it was forwarded to you and you want on the list, let me know.
Don’t want it? I’ll take you off the list, no hard feelings. I’m always open to feedback. Enjoy! – chris sandoval
I’m closing out 2017 (and kicking off 2018) by taking a look back at the most interesting stuff of the last year. Everything in this issue was a MUST READ or MUST WATCH in the second half of 2017. All killer, no filler!! Looking forward to an interesting 2018 – Happy New Year!

Trends
“Nearly half of middle-class workers may be forced to live on food budget of as little as $5/day when they retire”

“‘I’m going to work until I die,’ says one 74-year-old in a generation finding it too costly to retire.”

“what the dollar stores are betting on in a large way is that we are going to have a permanent underclass in America”

More Trends:

Innovation Stuff
“Creativity’s broadly distributed. Opportunity isn’t”

Internet Stuff
“The new deregulation of the internet is a loss, but it doesn’t have to be a permanent one, unless we let it.”

“Without net neutrality, service providers could easily prioritize their own content over competitors”

Think & Work Differently
“Steve Ballmer is loading volumes of government data onto a website. Maybe divided America will use it to find common ground.”

“We put monkeys to shame when it comes to the psychological vagaries of dividing the world into Us and Them.”

“providing some of the most compelling evidence yet of the positive effects of bestowing unconditional sums of cash on the poor”

“The younger generation uses technology the same ways as older people — and no better at multitasking.”

“we should be paying as much attention to the cheapest technologies as to the most sophisticated”

More Think & Work Differently:

Future of Cars Stuff
“It had a good run. But the end is in sight for the machine that changed the world”

More Future of Cars Stuff:

Puerto Rico Stuff
“The situation is still some people don’t even have food. He’s all that’s keeping them from starving.”

“Ethan and José's arrival felt like a movie”

“longest and largest major power outage in modern US history” Amazingly well-designed feature.

More Puerto Rico Stuff:

Security, Privacy & Fraud Stuff
“anyone who is applying for federal student aid or has a child who applied should strongly consider taking several steps”

“Andrew Therrien wanted payback. He got it—and uncovered a conspiracy.”

More Security, Privacy & Fraud Stuff:

Disruption & Transformation Stuff
“This is going to take a complete, from the ground up, rethink of every product in the business as we re-task it for real-time engagement, and it has already started.”

“there is a direct correlation between Digital IQ and financial performance”

More Disruption & Transformation Stuff:

Customer Experience Stuff
“To make this transition from UX designer to “product designer,” there are three important things to understand: strategy, growth, and marketing.”

“they build things that deliberately change the world in the way they want it to be changed”

“While many believe the success of Amazon Prime revolves around free shipping, it’s the removal of friction and focus on experience that sets it apart.”

More Customer Experience Stuff:

Facebook Stuff
“Violators can face tens of thousands of dollars in fines. Every single ad was approved within minutes.”

Military Stuff
“Four siblings wrote hundreds of letters to each other during WWII. The story they tell of service, sacrifice and trauma was hidden away in an abandoned storage unit — until now.”

“If you can't treat someone with dignity and respect, then get out

More Military Stuff:

TED2017 Stuff
·      Courage is contagious

Wildfire Stuff

Hurricane Stuff

Magic Box

BBQ Stuff

6-Word Movie Reviews
·      Blade Runner 2049 – Vast. Deep. Absolutely stunning. MUST SEE
·      Coco – Amazingly good. Every detail was perfect.
·      The Big Sick – incredibly funny and touching. SEE IT.
·      Atomic Blonde – Maximum intense action. Charlize Theron rules!

Universe Stuff

Blade Runner Stuff

Animal Stuff
·      Stick ‘em up!

Game of Thrones Stuff

Diversions
·      PAPYRUS!!!
·      Dude can SPIN!
·      Short Trip

Nightmare Fuel
·      Survivalist



Classification: Public Information