Blynk library for embedded hardware. Works with Arduino, ESP8266, Raspberry Pi, Intel Edison/Galileo, LinkIt ONE, Particle Core/Photon, Energia, ARM mbed, etc. http://www.blynk.cc/

Dependents:   Blynk_RBL_BLE_Nano Blynk_MicroBit Blynk_Serial Blynk_RBL_BLE_Nano

Revision:
0:58b20b438383
Child:
7:8879692d4e6c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Blynk/BlynkProtocolDefs.h	Sat May 07 08:02:50 2016 +0000
@@ -0,0 +1,126 @@
+/**
+ * @file       BlynkProtocolDefs.h
+ * @author     Volodymyr Shymanskyy
+ * @license    This project is released under the MIT License (MIT)
+ * @copyright  Copyright (c) 2015 Volodymyr Shymanskyy
+ * @date       Jan 2015
+ * @brief      Blynk protocol definitions
+ *
+ */
+
+#ifndef BlynkProtocolDefs_h
+#define BlynkProtocolDefs_h
+
+enum BlynkCmd
+{
+    BLYNK_CMD_RESPONSE       = 0,
+    BLYNK_CMD_REGISTER       = 1,
+    BLYNK_CMD_LOGIN          = 2,
+    BLYNK_CMD_SAVE_PROF      = 3,
+    BLYNK_CMD_LOAD_PROF      = 4,
+    BLYNK_CMD_GET_TOKEN      = 5,
+    BLYNK_CMD_PING           = 6,
+    BLYNK_CMD_ACTIVATE       = 7,
+    BLYNK_CMD_DEACTIVATE     = 8,
+    BLYNK_CMD_REFRESH        = 9,
+    BLYNK_CMD_GET_GRAPH_DATA = 10,
+    BLYNK_CMD_GET_GRAPH_DATA_RESPONSE = 11,
+
+    BLYNK_CMD_TWEET          = 12,
+    BLYNK_CMD_EMAIL          = 13,
+    BLYNK_CMD_NOTIFY         = 14,
+    BLYNK_CMD_BRIDGE         = 15,
+    BLYNK_CMD_HARDWARE_SYNC  = 16,
+    BLYNK_CMD_HARDWARE_INFO  = 17,
+	BLYNK_CMD_SMS            = 18,
+    BLYNK_CMD_HARDWARE       = 20,
+
+    BLYNK_CMD_CREATE_DASH    = 21,
+    BLYNK_CMD_SAVE_DASH      = 22,
+    BLYNK_CMD_DELETE_DASH    = 23,
+    BLYNK_CMD_LOAD_PROF_GZ   = 24,
+    BLYNK_CMD_SYNC           = 25,
+    BLYNK_CMD_SHARING        = 26,
+    BLYNK_CMD_ADD_PUSH_TOKEN = 27,
+
+    //sharing commands
+    BLYNK_CMD_GET_SHARED_DASH = 29,
+    BLYNK_CMD_GET_SHARE_TOKEN = 30,
+    BLYNK_CMD_REFRESH_SHARE_TOKEN = 31,
+    BLYNK_CMD_SHARE_LOGIN     = 32
+};
+
+enum BlynkStatus
+{
+    BLYNK_SUCCESS                = 200,
+    BLYNK_QUOTA_LIMIT_EXCEPTION  = 1,
+    BLYNK_ILLEGAL_COMMAND        = 2,
+    BLYNK_NOT_REGISTERED         = 3,
+    BLYNK_ALREADY_REGISTERED     = 4,
+    BLYNK_NOT_AUTHENTICATED      = 5,
+    BLYNK_NOT_ALLOWED            = 6,
+    BLYNK_NO_CONNECTION          = 7,
+    BLYNK_NO_ACTIVE_DASHBOARD    = 8,
+    BLYNK_INVALID_TOKEN          = 9,
+    BLYNK_DEVICE_WENT_OFFLINE    = 10,
+    BLYNK_ALREADY_LOGGED_IN      = 11,
+    BLYNK_GET_GRAPH_DATA_EXCEPTION = 12,
+    BLYNK_NO_DATA_EXCEPTION      = 17,
+    BLYNK_DEVICE_WENT_OFFLINE_2  = 18,
+    BLYNK_SERVER_EXCEPTION       = 19,
+
+    BLYNK_NTF_INVALID_BODY       = 13,
+    BLYNK_NTF_NOT_AUTHORIZED     = 14,
+    BLYNK_NTF_ECXEPTION          = 15,
+
+    BLYNK_TIMEOUT                = 16
+};
+
+struct BlynkHeader
+{
+    uint8_t  type;
+    uint16_t msg_id;
+    uint16_t length;
+}
+BLYNK_ATTR_PACKED;
+
+#if defined(ARDUINO) || defined(ESP8266) || defined(PARTICLE) || defined(MBED_LIBRARY_VERSION)
+    #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+        #define htons(x) ( ((x)<<8) | (((x)>>8)&0xFF) )
+        #define htonl(x) ( ((x)<<24 & 0xFF000000UL) | \
+                           ((x)<< 8 & 0x00FF0000UL) | \
+                           ((x)>> 8 & 0x0000FF00UL) | \
+                           ((x)>>24 & 0x000000FFUL) )
+        #define ntohs(x) htons(x)
+        #define ntohl(x) htonl(x)
+    #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+        #define htons(x) (x)
+        #define htonl(x) (x)
+        #define ntohs(x) (x)
+        #define ntohl(x) (x)
+    #else
+        #error byte order problem
+    #endif
+#endif
+
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+    #define BLYNK_HW_PM (('p' << 0) | ('m' << 8))
+    #define BLYNK_HW_DW (('d' << 0) | ('w' << 8))
+    #define BLYNK_HW_DR (('d' << 0) | ('r' << 8))
+    #define BLYNK_HW_AW (('a' << 0) | ('w' << 8))
+    #define BLYNK_HW_AR (('a' << 0) | ('r' << 8))
+    #define BLYNK_HW_VW (('v' << 0) | ('w' << 8))
+    #define BLYNK_HW_VR (('v' << 0) | ('r' << 8))
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+    #define BLYNK_HW_PM (('p' << 8) | ('m' << 0))
+    #define BLYNK_HW_DW (('d' << 8) | ('w' << 0))
+    #define BLYNK_HW_DR (('d' << 8) | ('r' << 0))
+    #define BLYNK_HW_AW (('a' << 8) | ('w' << 0))
+    #define BLYNK_HW_AR (('a' << 8) | ('r' << 0))
+    #define BLYNK_HW_VW (('v' << 8) | ('w' << 0))
+    #define BLYNK_HW_VR (('v' << 8) | ('r' << 0))
+#else
+    #error byte order problem
+#endif
+
+#endif