An Internet of Things architecture comprising: a gateway including a first serial port; a first dongle (28; 30; 32) received by the first serial port and configured to communicate with a first wireless communication technology; a first wireless device (22; 24; 26) configured to communicate a first coded message to the first dongle using the first wireless communication technology; and a cloud platform including a network abstraction layer that includes a first communication technology module (64; 66; 68; 70) configured to receive the first coded message associated with the first wireless communication technology and output a first decoded message; a second dongle (28; 30; 32) received by a second serial port of the gateway, and configured to communicate with a second wireless communication technology different from the first wireless communication technology; and a second wireless device (22; 24; 26) configured to communicate a second coded message to the second dongle using the second wireless communication technology, wherein a communication technology identifier agent of the network abstraction layer is configured to differentiate between the first and second wireless communication technologies and send the first coded message to the first communication technology module (64; 66; 68; 70), and send the second coded message to a second communication technology module (64; 66; 68; 70) of the network abstraction layer for the output of a second decoded message; characterized in that the gateway includes an agent module and a database module, the agent module being configured to look up in the database module a coded message transmission associated to an automated action when the gateway loses cloud connectivity, or look up a response in the database module associated with an incoming message received from the first wireless device (22; 24; 26) when the gateway loses cloud connectivity. a gateway including a first serial port; a first dongle (28; 30; 32) received by the first serial port and configured to communicate with a first wireless communication technology; a first wireless device (22; 24; 26) configured to communicate a first coded message to the first dongle using the first wireless communication technology; and a cloud platform including a network abstraction layer that includes a first communication technology module (64; 66; 68; 70) configured to receive the first coded message associated with the first wireless communication technology and output a first decoded message; a second dongle (28; 30; 32) received by a second serial port of the gateway, and configured to communicate with a second wireless communication technology different from the first wireless communication technology; and a second wireless device (22; 24; 26) configured to communicate a second coded message to the second dongle using the second wireless communication technology, wherein a communication technology identifier agent of the network abstraction layer is configured to differentiate between the first and second wireless communication technologies and send the first coded message to the first communication technology module (64; 66; 68; 70), and send the second coded message to a second communication technology module (64; 66; 68; 70) of the network abstraction layer for the output of a second decoded message; characterized in that the gateway includes an agent module and a database module, the agent module being configured to look up in the database module a coded message transmission associated to an automated action when the gateway loses cloud connectivity, or look up a response in the database module associated with an incoming message received from the first wireless device (22; 24; 26) when the gateway loses cloud connectivity.