Kit Desenvolvimento IoT
Esse Kit foi desenvolvido pela Telefonica VIVO para estimular desenvolvedores a entrar no mundo do "Internet of Things" .
Documentação
Instalação
MacOS
Softwares necessários:
Arduino IDE link
XCode (com Command Line Tools instalado) link
Node.JS 0.10 ou superior link
Linux
Softwares necessários:
Arduino IDE link
Build Essentials:
sudo apt-get install build-essential
Node.JS 0.10 ou superior link
Windows
OBS: compatível apenas com o Windows 7 SP1 ou superior!
Softwares necessários:
Arduino IDE link
Visual Studio 2013 Express ou superior link
Node.JS 0.10 ou superior link
Python 2.7.6 ou superior link
Depois de instalado
Para instalar o Kit IoT, conecte o cabo usb no computador e na placa arduino e digite no terminal:
$ npm install kit-iot -g
Para inicia-lo novamente, digite no terminal:
$ kit-iot
API Rest
Para acessar as informações do seu Kit utilize a API Rest da nossa cloud. Lembre-se de substituir {token} pelo token enviado ao seu email no início do Hackathon.
GET: services/{token}/
Informações detalhadas do serviço.
URL : http://dca.telefonicabeta.com/m2m/v2/services/{token}/
Exemplo JSON de retorno:
{
" data " : {
" GENERATED_UNIQUE_IDENTIFIER " : " mz35b7lee217 " ,
" acl " : {
" user " : " ApplicationManager " ,
" description " : " Deny All " ,
" export " : false ,
" subscription " : false ,
" command " : false ,
" query " : false ,
" whiteList " : [ ] ,
" blackList " : [ ] ,
" waitingList " : [ ] ,
" creationTime " : " 2014-01-24T08:21:25Z "
} ,
" actions " : [ ] ,
" config " : {
" defaultStats " : false ,
" normalizedParams " : true ,
" notification " : true ,
" qualityOfService " : 1 ,
" ruleEngine " : " " ,
" storage " : {
" expiryTime " : 1000 ,
" measures " : true ,
" xml " : false
} ,
" status " : 1 ,
" activate " : " 1 " ,
" rushIntervals " : [
3000 ,
8000 ,
15000
] ,
" accumulateBy " : [ ]
} ,
" creationTime " : " 2014-01-24T08:21:25Z " ,
" description " : " mz35b7lee217 " ,
" legacy " : {
" groupByUC " : false
} ,
" name " : " mz35b7lee216 " ,
" organizationId " : " mz35b7lee217 " ,
" updateTime " : " 2014-01-24T08:21:25Z " ,
" stats " : {
" devicesRegistered " : 1 ,
" trafficMessages " : 84037 ,
" storageSpaceMB " : 11.14
} ,
" appId " : 5161
}
}
GET: services/{token}/assets/{token}/
Retorna informações de um determinado asset de um determinado serviço.
URL : http://dca.telefonicabeta.com/m2m/v2/services/{token}/assets/{token}/
Exemplo JSON de retorno:
{
" data " : {
" DeviceProps " : {
" commandURL " : " http://localhost/ " ,
" manufacturer " : " " ,
" model " : " " ,
" serialNumber " : " " ,
" version " : " " ,
" lastIP " : " 200.158.222.39 " ,
" commands " : true
} ,
" asset " : {
" name " : " mz35b7lee217 " ,
" UserProps " : [ {
" name " : " nome " ,
" value " : " Vitor "
} , {
" name " : " email " ,
" value " : " vitor@teste.com "
} , {
" name " : " tel " ,
" value " : " 11942178564 "
} ] ,
" location " : {
" altitude " : " " ,
" latitude " : " " ,
" longitude " : " "
}
} ,
" creationTime " : " 2014-01-24T08:21:25Z " ,
" isConcentrator " : false ,
" model " : " KITiot " ,
" name " : " mz35b7lee217 " ,
" registrationTime " : " 2014-01-24T08:21:25Z " ,
" status " : " Active " ,
" sensorData " : [ {
" st " : " 2014-09-26T17:23:46Z " ,
" ms " : {
" v " : 877 ,
" p " : " sound " ,
" u " : " cubicMeter "
}
} , {
" ms " : {
" v " : 27 ,
" p " : " temperature " ,
" u " : " kelvin "
} ,
" st " : " 2014-09-26T17:23:46Z "
} , {
" st " : " 2014-09-26T17:23:46Z " ,
" ms " : {
" v " : 36 ,
" p " : " relativeHumidity " ,
" u " : " dimensionless "
}
} , {
" st " : " 2014-09-26T17:23:46Z " ,
" ms " : {
" v " : 0 ,
" p " : " amount " ,
" u " : " unit "
}
} , {
" st " : " 2014-09-26T17:23:46Z " ,
" ms " : {
" v " : 679 ,
" p " : " luminousIntensity " ,
" u " : " candela "
}
} ]
}
}
GET: services/{token}/assets/{token}/data/
Retorna o histórico de dados recebidos de um determinado asset de um determinado serviço.
URL : http://dca.telefonicabeta.com/m2m/v2/services/{token}/assets/{token}/data/
parametros
limit *opcional
Total de registros para retornar por página. Caso não seja especificado, a API retornará todos os dados recebidos
sortBy *opcional
Ordena os dados (ascendente ou descendente) utilizando o campo informado. Os campos disponíveis são: assetName, assetType, ou registrationTime.
Exemplos:
sortBy=registrationTime
sortBy=!registrationTime
Exemplo JSON de retorno:
{
" data " : [ {
" st " : " 2014-03-13T18:30:04Z " ,
" ms " : {
" v " : 695 ,
" p " : " luminousIntensity " ,
" u " : " candela "
} ,
" pms " : [ {
" v " : " 1 " ,
" p " : " QoS " ,
" u " : " "
} ]
} ] ,
" asset " : " mz35b7lee217 " ,
" count " : 84037
}