ESP8266

Hi I am new to arduino and could really use some help. I recently bought a Wemos D1 Mini and was trying to connect it with my Alexa so when I said Alexa light on the light on the board would turn on. I keep getting errors though and don't know if it is because I don't have the right libraries or something else.
Here is my code:
#include <WebSocketsServer.h>
#include <WebSocketsClient.h>
#include <WebSockets.h>

#include <ArduinoJson.h>

/*

// Uncomment the following line to enable serial debug output
#define ENABLE_DEBUG

#ifdef ENABLE_DEBUG
#define DEBUG_ESP_PORT Serial
#define NODEBUG_WEBSOCKETS
#define NDEBUG
#endif

#include <Arduino.h>
#ifdef ESP8266
#include <ESP8266WiFi.h>
#endif

#include <WiFi.h>

#include "SinricPro.h"
#include "SinricProSwitch.h"

#define WIFI_SSID "Fios-76N3L"
#define WIFI_PASS "add7387kick2466nor"
#define APP_KEY "9d089287-6021-4397-9837-e748a6b2f632" // Should look like "de0bxxxx-1x3x-4x3x-ax2x-5dabxxxxxxxx"
#define APP_SECRET "594c537e-4966-424e-9c05-672aa8b8d1d3-fa605572-4cfe-41ef-8c97-961db9da51db" // Should look like "5f36xxxx-x3x7-4x3x-xexe-e86724a9xxxx-4c4axxxx-3x3x-x5xe-x9x3-333d65xxxxxx"

#define light1 "5ed118eb76b86a477f5e44ec" // Should look like "5dc1564130xxxxxxxxxxxxxx"

#define BAUD_RATE 57600// Change baudrate to your need

bool onPowerState1(const String &deviceId, bool &state) {
Serial.printf("Device 1 turned %s\r\n", state?"on":"off");
return true; // request handled properly
}

// setup function for WiFi connection
void setupWiFi() {
Serial.printf("\r\n[Wifi]: Connecting");
WiFi.begin(WIFI_SSID, WIFI_PASS);

while (WiFi.status() != WL_CONNECTED) {
Serial.printf(".");
delay(250);
}

Serial.printf("connected!\r\n[WiFi]: IP-Address is %s\r\n", WiFi.localIP().toString().c_str());
}

// setup function for SinricPro

// setup SinricPro
SinricPro.onConnected({ Serial.printf("Connected to SinricPro\r\n"); });
SinricPro.onDisconnected({ Serial.printf("Disconnected from SinricPro\r\n"); });
SinricPro.begin(APP_KEY, APP_SECRET);
}

// main setup function
void setup() {
Serial.begin(BAUD_RATE); Serial.printf("\r\n\r\n");
setupWiFi();
//setupSinricPro();
}

void loop() {
SinricPro.handle();
}

and here are the errors I keep getting:

'SinricPro' does not name a type

and

Error compiling for board WeMos D1 R2 & mini.

I could really use help thanks!

Are there any other errors or warnings in the text box below your sketch?

^
/Users/zuhayr1/Documents/Arduino/libraries/ArduinoWebsockets/src/tiny_websockets/client.hpp:83:32: error: 'X509List' does not name a type
void setTrustAnchors(const X509List ta);
^
/Users/zuhayr1/Documents/Arduino/libraries/ArduinoWebsockets/src/tiny_websockets/client.hpp:83:42: error: ISO C++ forbids declaration of 'ta' with no type [-fpermissive]
void setTrustAnchors(const X509List ta);
^
/Users/zuhayr1/Documents/Arduino/libraries/ArduinoWebsockets/src/tiny_websockets/client.hpp:107:11: error: 'X509List' does not name a type
const X509List
_optional_ssl_trust_anchors = nullptr;
^
/Users/zuhayr1/Documents/Arduino/libraries/ArduinoWebsockets/src/tiny_websockets/client.hpp:108:11: error: 'X509List' does not name a type
const X509List
_optional_ssl_cert = nullptr;
^
/Users/zuhayr1/Documents/Arduino/libraries/ArduinoWebsockets/src/tiny_websockets/client.hpp:109:11: error: 'PrivateKey' does not name a type
const PrivateKey* _optional_ssl_private_key = nullptr;
^
In file included from /Users/zuhayr1/Documents/Arduino/libraries/SinricPro/src/SinricPro.h:13:0,
from /Users/zuhayr1/Documents/Arduino/examplessinric/examplessinric.ino:39:
/Users/zuhayr1/Documents/Arduino/libraries/SinricPro/src/SinricProWebsocket.h: In member function 'void websocketListener::setExtraHeaders()':
/Users/zuhayr1/Documents/Arduino/libraries/SinricPro/src/SinricProWebsocket.h:76:13: error: 'class WebSocketsClient' has no member named 'setExtraHeaders'
webSocket.setExtraHeaders(headers.c_str());
^
/Users/zuhayr1/Documents/Arduino/libraries/SinricPro/src/SinricProWebsocket.h: In member function 'void websocketListener::begin(String, String, String, SinricProQueue_t*)':
/Users/zuhayr1/Documents/Arduino/libraries/SinricPro/src/SinricProWebsocket.h:104:13: error: 'class WebSocketsClient' has no member named 'enableHeartbeat'
webSocket.enableHeartbeat(WEBSOCKET_PING_INTERVAL, WEBSOCKET_PING_TIMEOUT, WEBSOCKET_RETRY_COUNT);
^
exit status 1
Error compiling for board WeMos D1 R2 & mini.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Looks like the original error went away and you now have other types that are not declared. Did you follow the instructions in the original sketch?

 * If you encounter any issues:
 * - check the readme.md at https://github.com/sinricpro/esp8266-esp32-sdk/blob/master/README.md
 * - ensure all dependent libraries are installed
 *   - see https://github.com/sinricpro/esp8266-esp32-sdk/blob/master/README.md#arduinoide
 *   - see https://github.com/sinricpro/esp8266-esp32-sdk/blob/master/README.md#dependencies

Yes I followed them but I still can't get it to work.

roboticsclub9:
Yes I followed them but I still can't get it to work.

Then my guess is that one or more of the libraries has been "updated" since that sketch was written. It's going to be quite a learning experience for you.