添加爱牵挂相关文档

This commit is contained in:
Frank 2023-12-20 11:07:38 +08:00
parent 503f7930e8
commit 2f4eb0abf3
14 changed files with 3613 additions and 0 deletions

30
爱牵挂/HA02-HA10/auth.md Executable file
View File

@ -0,0 +1,30 @@
如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
# 登录
- 地址: /api/auth/login
- 方法: POST
- 响应对象: [person](./object.md#person) *简化*
- 请求参数:
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| username | 是 | string | 填用户名或手机号 |
| password | 是 | string | 填用户密码或短信密码 |
- 请求范例:
curl -v -A CURL -d "username=demo&password=admin" -c cookies.txt http://127.0.0.1:8888/api/auth/login
- 响应Cookie:
Set-Cookie: user="2|1:0|10:1407508841|4:user|8:YWRtaW4=|19bf2a8edd510eca173cecff546c446e3d800ae34ca3649ec56a566d2386e0de"; expires=Sun, 07 Sep 2014 14:40:41 GMT; Path=/
- 响应范例:
{
}

View File

@ -0,0 +1,57 @@
如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
社区信息
========
# 查看社区内所有NB设备的设备号IMEI号
- 地址: /api/community/gethomedevicelist/
- 方法: GET
- 验证方法: Cookie: user
- 响应对象: 返回单个对象,如果对应的数据项有数据,则返回数据对象;如果没有则返回'{}'
- 权限要求: superuser/operator角色 或 社区成员
- 响应对象: [Community](object.md#community)
- URL参数: device oid
- 请求参数:
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| communityid | 是 | string | 机构id |
- 请求范例:
curl -v -A CURL -b cookies.txt http://api.aiqiangua.com:8888/api/community/gethomedevicelist/?communityid=61a86a9b15f71628c6d11d95
> GET /api/community/gethomedevicelist/?communityid=61a86a9b15f71628c6d11d95 HTTP/1.1
> User-Agent: CURL
> Host: api.aiqiangua.com:8888
> Accept: */*
> Cookie: ""2|1:0|10:1502846059|4:user|8:YWRtaW4y|f92dad6929734b005ea153a4585f3c02ea9f7a70432a0410518df8a108030f7d""
- 响应范例:
{
"objs": [
{
"name": "",
"power_type": 1,
"chip_temperature_statu": 1,
"heart_beat_time": "24",
"community_id": "61a86a9b15f71628c6d11d95",
"version": "V4.2.3_NBSOB",
"maze_statu": 1,
"imei": "861964046796186",
"iccid": "89861121241012317411",
"type": "HA07",
"circuit_statu": 1
}
],
"page": {
"page_count": 1,
"rows_per_page": 20,
"total": 1,
"page_current": 1
},
"success": true,
"obj_name": "homedevice"
}

244
爱牵挂/HA02-HA10/pushdata.md Executable file
View File

@ -0,0 +1,244 @@
doc V1.1
适用机型HA02-HA09
数据发送用户按文档开发回调接口交由爱牵挂在设备产生相关数据时调用POST请求表单提交数据。
居家安全设备状态数据发送
- 地址: http://xxxxx/
- 方法: post
- content-type:application/x-www-form-urlencoded
- 参数规范
| 名称 | 必须 | 类型 | 触发机型 | 说明 |
| ---------------------- | ---- | ------------ | --------- | -----------------------------------------------------|
| imei | 是 | String | all | 15位设备唯一序号 |
| data_type | 是 | String | all | devicestatus |
| date_str | 是 | String | all | 触发时间YYYYmmDDHHMMSS |
| device_type | 否 | String | all | 机型devicestatus时一定存在 |
| power_type | 否 | String | all | 电量状态; 1 正常0 异常 devicestatus时一定存在 |
| version | 否 | String | all | 软件版本devicestatus时一定存在 |
| nb_signal | 否 | String | all | nb基站信号强度devicestatus时可能存在 |
| nb_cellid | 否 | String | all | nb基站cellid devicestatus时可能存在 |
| maze_statu | 否 | Int | HA02 | 迷宫状态,1正常 0异常devicestatus时可能存在 |
| circuit_statu | 否 | Int | HA02 | 电路状态,1正常 0异常devicestatus时可能存在 |
| chip_temperature_statu | 否 | Int | HA02 | 芯片温度状态,1正常 0异常devicestatus时可能存在 |
| temperature | 否 | String | HA02 | 环境温度devicestatus时可能存在 |
| people_in_area_statu | 否 | String | HA02 | 探测区域是否有人,1有人 0无人devicestatus时可能存在 |
| door_statu | 否 | String | HA03 | 门状态,1打开 0关闭devicestatus时一定存在 |
| water_immersion_statu | 否 | String | HA06 | 水浸状态,1有水 0无水devicestatus时一定存在 |
| humidity | 否 | String | HA10 | 环境湿度 |
| battery_voltage | 否 | String | HA10 | 电池电压 |
| gas_lel | 否 | Int | HA10 | 燃气浓度(% |
| theshold_temperature_h | 否 | Float | HA10 | 高温阈值 |
| theshold_temperature_l | 否 | Float | HA10 | 低温阈值 |
| theshold_humidity_h | 否 | Float | HA10 | 高湿阈值 |
| theshold_humidity_l | 否 | Float | HA10 | 低湿阈值 |
居家安全设备报警数据发送
- 地址: http://xxxxx/
- 方法: post
- content-type:application/x-www-form-urlencoded
- 参数规范
| 名称 | 必须 | 类型 | 触发机型 | 说明 |
| ---------------------- | ---- | ------------ | --------- | -----------------------------------------------------|
| imei | 是 | String | all | 15位设备唯一序号 |
| date_str | 是 | String | all | 触发时间YYYYmmDDHHMMSS |
| alarm_code | 否 | String | all | 报警编号,见报警编号列表alarm时一定存在 |
| alarm_type | 否 | String | all | 报警类型,见报警编号列表alarm时一定存在 |
| alarm_desc | 否 | String | all | 报警描述,见报警编号列表alarm时一定存在 |
机型列表
HA02 烟感温度红外三合一报警器
HA03 门磁感应器
HA04 燃气报警器
HA05 红外体感报警器
HA06 水浸报警器
HA07 一键呼叫按钮
HA08 烟雾报警器
HA09 一氧化碳报警
HA10 温湿度传感器
报警编号列表
device_type 为空表示目前机型暂不支持,后续新增可能支持; all表示全部机型触发
'111': {
'alarm_type': 'smoke_warn',
'desc': u'烟雾报警',
'device_type': ['HA02','HA08'],
},
'384': {
'alarm_type': 'low_power',
'desc': u'低电提醒',
'device_type': ['all'],
},
'993': {
'alarm_type': 'low_power',
'desc': u'底座烟感低电警告',
'device_type': [],
},
'992': {
'alarm_type': 'low_power',
'desc': u'NB底座低电警告',
'device_type': [],
},
'991': {
'alarm_type': 'gas_warn',
'desc': u'燃气报警',
'device_type': ['HA04'],
},
'990': {
'alarm_type': 'fire_warn',
'desc': u'消防报警',
'device_type': [],
},
'989': {
'alarm_type': 'door_open',
'desc': u'门打开',
'device_type': ['HA03'],
},
'988': {
'alarm_type': 'door_close',
'desc': u'门关闭',
'device_type': ['HA03'],
},
'986': {
'alarm_type': 'high_temp_env',
'desc': u'高温报警',
'device_type': ['HA02'],
},
'985': {
'alarm_type': 'leakage_warn',
'desc': u'漏电报警',
'device_type': [],
},
'984': {
'alarm_type': 'low_pressure',
'desc': u'低压警告',
'device_type': [],
},
'981': {
'alarm_type': 'offline',
'desc': u'设备离线',
'device_type': [],
},
'969': {
'alarm_type': 'water_immersion_warn',
'desc': u'水浸警告',
'device_type': ['HA06'],
},
'966': {
'alarm_type': 'shower_on',
'desc': u'喷淋打开',
'device_type': [],
},
'965': {
'alarm_type': 'shower_off',
'desc': u'喷淋关闭',
'device_type': [],
},
'963': {
'alarm_type': 'pull_down_warn',
'desc': u'拆除报警',
'device_type': ['HA02'],
},
'962': {
'alarm_type': 'normal',
'desc': u'恢复正常',
'device_type': ['HA02'],
},
'960': {
'alarm_type': 'alarm_test',
'desc': u'报警测试',
'device_type': ['all'],
},
'122': {
'alarm_type': 'sos',
'desc': u'紧急呼叫',
'device_type': [],
},
'955': {
'alarm_type': 'chip_temp_warn',
'desc': u'芯片温度报警',
'device_type': ['HA02'],
},
'954': {
'alarm_type': 'chip_temp_warn',
'desc': u'温度短路报警',
'device_type': ['HA02'],
},
'953': {
'alarm_type': 'chip_temp_warn',
'desc': u'温度开路报警',
'device_type': ['HA02'],
},
'938': {
'alarm_type': 'check_warn',
'desc': u'自检故障1',
'device_type': ['HA02'],
},
'937': {
'alarm_type': 'check_ok',
'desc': u'自检正常',
'device_type': ['HA02'],
},
'936': {
'alarm_type': 'power_on',
'desc': u'设备开机',
'device_type': ['ha02'],
},
'935': {
'alarm_type': 'human_out',
'desc': u'探测区域已无人',
'device_type': ['HA02'],
},
'934': {
'alarm_type': 'human_in',
'desc': u'探测区域有人',
'device_type': ['HA02'],
},
'933': {
'alarm_type': 'check_warn',
'desc': u'自检错误2',
'device_type': ['HA02'],
},
'932': {
'alarm_type': 'check_warn',
'desc': u'自检错误3',
'device_type': ['HA02'],
},
'1991': {
'alarm_type': 'co_warn',
'desc': u'一氧化碳报警',
'device_type': ['HA09'],
},
'1962': {
'alarm_type': 'normal',
'desc': u'一氧化碳恢复正常',
'device_type': ['HA09'],
},
'1901': {
'alarm_type': 'low_humidity',
'desc': u'低湿报警',
'device_type': ['HA10'],
},
'1902': {
'alarm_type': 'high_humidity',
'desc': u'高湿报警',
'device_type': ['HA10'],
},
'1903': {
'alarm_type': 'low_temp_env',
'desc': u'低温报警',
'device_type': ['HA10'],
},

View File

@ -0,0 +1 @@
HA02~HA10目前仅开放数据分发文档即回调文档。模式为用户按照文档要求开发API交由爱牵挂技术人员进行配置设备产生的相关数据由回调API实时分发到用户手中。后续会增加配置修改文档。

Binary file not shown.

View File

@ -0,0 +1,138 @@
如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
身份验证
========
# 登录
- 地址: /api/auth/login
- 方法: POST
- 响应对象: [person](./object.md#person) *简化*
- 请求参数:
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| username | 是 | string | 填用户名或手机号 |
| password | 是 | string | 填用户密码或短信密码 |
- 请求范例:
curl -v -A CURL -d "username=demo&password=admin" -c cookies.txt http://127.0.0.1:8888/api/auth/login
- 响应Cookie:
Set-Cookie: user="2|1:0|10:1407508841|4:user|8:YWRtaW4=|19bf2a8edd510eca173cecff546c446e3d800ae34ca3649ec56a566d2386e0de"; expires=Sun, 07 Sep 2014 14:40:41 GMT; Path=/
- 响应范例:
{
"obj": {
"_id": {
"$oid": "5bda53d2264251367f5a4385"
},
"username": "18838030850",
"nickname": "伟东",
"phone": "18838030850",
"devicetokens": [
{
"token_type": "android",
"token": "1a0018970a2e98b8f46",
"push_server": "jiguang",
"app": "aiqiangua2.0",
"is_enable_aliase": false,
"created_at": {
"$date": 1596816909955
}
},
{
"token_type": "android",
"token": "100d8559094809f80ca",
"push_server": "jiguang",
"uuid": "aiqiangua2.0|74ef4ed806e282ac",
"app": "aiqiangua2.0",
"brand": "motorola",
"phone_type": "xt1079",
"system_version": "21",
"is_enable_aliase": false,
"created_at": {
"$date": 1599846173229
}
},
{
"token_type": "ios",
"token": "191e35f7e029c78a600",
"push_server": "jiguang",
"uuid": "aiqiangua2.0|DBB4C34C-46F1-407C-B0B4-265FB438E3CF",
"app": "aiqiangua2.0",
"brand": "apple",
"phone_type": "iPhone12,5",
"system_version": "13.6.1",
"is_enable_aliase": false,
"created_at": {
"$date": 1603189431007
}
},
{
"token_type": "ios",
"token": "121c83f7604cef30bbb",
"push_server": "jiguang",
"uuid": "aiqiangua2.0|8F945CF7-31E5-4631-A93C-8B1A8F867C37",
"app": "aiqiangua2.0",
"brand": "apple",
"phone_type": "iPhone 5c (GSM)",
"system_version": "10.3.3",
"is_enable_aliase": false,
"created_at": {
"$date": 1603290768443
}
}
],
"weight": 80,
"height": 166,
"birthday": "2006-11-01",
"avatar": "18838030850.png",
"avatar_url": "/media/avatar/200/18838030850.jpg",
"community": {
"$oid": "5bed061726425171d55ab8a7"
},
"gender": "male",
"address": "科学城",
"location_enable": true,
"care_code": "32434385",
"devices": [],
"groups": [
{
"$oid": "5dc3cc002642513d1356da38"
},
{
"$oid": "5bdc212e26425136804939f0"
},
{
"$oid": "5cd902d626425177be24be3e"
},
{
"$oid": "5d52182c264251738f99f4ef"
},
{
"$oid": "5dcbc4e92642513d1356db10"
},
{
"$oid": "5f584f4c2642511f21c77c9f"
},
{
"$oid": "5f12c3762642517d70510f7d"
},
{
"$oid": "5f8eae282642510b4bd152f2"
}
],
"bluetoothdevices": [],
"sleepdevices": [
"d069e6fae982"
]
},
"success": true,
"obj_name": "person"
}

View File

@ -0,0 +1,165 @@
如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
社区信息
========
## 查看社区信息
- 地址: /api/community/[community id]
- 方法: GET
- 验证方法: Cookie: user
- 权限要求: superuser/operator角色 或 社区成员
- 响应对象: [Community](object.md#community)
- 请求范例
curl -v -A CURL -b cookies.txt http://127.0.0.1:8000/api/community/54a38233bf483c6ddfec4b79
- 响应范例
{
"obj":{
"_id":{
"$oid":"54a38233bf483c6ddfec4b79"
},
"name":"测试社区",
"email":"test@test.com",
"telephone":"13399999999",
"administrators":[
{
"$oid":"53f722d5bf483c5bd03d0a80"
}
],
"sos_url":"http://test.aiqiangua.com/12349xzOrgan/api/sos/happenSOSAction.do?",
"location_url":"",
"sosdata_url":"",
"heartratedata_url":"",
"pedometerdata_url":"",
"sleepdata_url":"",
"powerdata_url":"",
"falldata_url":"",
"token":"",
"created_at":{
"$date":1420030643432
},
"$administrators":[
{
"_id":{
"$oid":"53f722d5bf483c5bd03d0a80"
},
"username":"user01",
"password":"d5a99288b270b6c1989975fdb352425913c45e1640b35473ef9370fc",
"email":"user01@abc.com",
"nickname":"管理员",
"phone":"12345612349",
"telephone":"020-183849339",
"app":"aiqiangua2.0",
"devicetokens":[
],
"weight":65,
"step":60,
"age":50,
"height":175,
"avatar":"user01.tmp",
"avatar_url":"/media/avatar/200/user01.jpg",
"community":{
"$oid":"54a38233bf483c6ddfec4b79"
},
"role":"user",
"gender":"male",
"address":"广州",
"created_at":{
"$date":1408734037917
},
"updated_at":{
"$date":1408734037913
},
"lastlogin_ip":"183.61.80.249",
"lastlogin_at":{
"$date":1473846870019
},
"lastlogin_by":"Java/1.6.0_25",
"enable":true,
"email_is_checked":false,
"phone_is_checked":false,
"push_sos_enable":false,
"push_fence_enable":false,
"push_abnormal_enable":false,
"push_message_enable":false,
"push_lowpower_enable":false,
"push_system_enable":false,
"push_fall_enable":true,
"push_env_enable":true,
"auth_updated_at":{
"$date":1473846882861
},
"is_device_owner":false,
"devices":[
"868219000223161"
],
"groups":[
{
"$oid":"579e0267264251061974b349"
}
]
}
]
},
"success":true,
"obj_name":"community"
}
# 查看社区内所有设备设备号,昵称,在线状态、地址以及位置点
- 地址: /api/community/community id/devicesloc/
- 方法: GET
- 验证方法: Cookie: user
- 响应对象: 返回单个对象,如果对应的数据项有数据,则返回数据对象;如果没有则返回'{}'
- 权限要求: superuser/operator角色 或 社区成员
- 响应对象: [Community](object.md#community)
- URL参数: device oid
- 请求参数:
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| cid | 是 | string | 机构id |
- 请求范例:
curl -v -A CURL -b cookies.txt http://127.0.0.1:8888/api/community/59718dfa264251292a48b5c2/devicesloc/
> GET /api/community/59718dfa264251292a48b5c2/devicesloc/ HTTP/1.1
> User-Agent: CURL
> Host: 127.0.0.1:8888
> Accept: */*
> Cookie: ""2|1:0|10:1502846059|4:user|8:YWRtaW4y|f92dad6929734b005ea153a4585f3c02ea9f7a70432a0410518df8a108030f7d""
- 响应范例:
{
"objs": [
{
"point": {
"type": "Point",
"coordinates": [
113.4560004,
23.1663146
]
},
"online": true,
"date": {
"$date": 1502901949303
},
"address": "广东省 广州市 黄埔区 育星路 靠近广州科学城创新大厦C2",
"imei": "869426020070147",
"nickname": "二踢脚"
}
],
"page": "",
"success": true,
"obj_name": "devices_location"
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,146 @@
API概述
=======
目录
----
- [请求格式](#请求格式)
- [GET](#GET)
- [POST](#POST)
- [对象输出参数](#对象输出参数)
- [分页参数](#分页参数)
- [嵌套参数](#嵌套参数)
- [简化参数](#简化参数)
- [排序参数](#排序参数)
- [响应格式](#响应格式)
- [返回单个对象](#返回单个对象)
- [返回多个对象](#返回多个对象)
- [返回失败](#返回失败)
- [错误码定义](#错误码定义)
# 请求格式
## GET
GET请求时参数必须放在URL中
> GET /api/posturedata/?device=466970701492096 HTTP/1.1
> Host: 203.195.166.239:8888
> Accept: */*
## POST
POST命令参数可放在URL也可放在BODY中
> POST /api/account/login HTTP/1.1
> Host: 203.195.166.239:8888
> Accept: */*
> Content-Length: 29
> Content-Type: application/x-www-form-urlencoded
> para1=value1&para2=value2
# 对象输出参数
## 分页参数
当返回对象列表时,可以对列表进行分页
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| page | 否 | int | 页数1~N缺省1 |
| rows_per_page| 否 | int | 每页行数缺省20 |
## 嵌套参数
返回对象中有引用类型Reference的属性时可以将被引用的对象嵌套到返回中。
- 原属性输出为ObjectID方式
- 新增一个以$开头的属性,形如"$[attr_name]", 其中attr_name为原属性名其内容是完整的json对象。
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| depth | 否 | int | 嵌套层数(1-4)缺省2 |
## 简化参数
输出简化后的对象只包含特定的属性。必须在定义对象时指出简化对象包含哪些属性如未指定则输出对象的前10个属性。
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| small | 否 | int | 1-完整0-简化。缺省为1 |
## 排序参数
当返回对象列表时,可以对列表进行排序。指定按哪几个属性进行排序。
| 名称 | 必须 | 类型 | 说明 |
| ------------ | ---- | ------------ | ------------------------------ |
| order_by | 否 | string | 需要排序的属性名, 逆序用'-', 多个属性用','连接。如:'order_by=email,-username'表示先按email字典序然后按username逆序 |
# 响应格式
返回内容统一是json格式。
## 返回单个对象
当返回单个对象时,返回格式。 范例:
{
"success": true, // 成功标志
"obj_name": "obj name", // 对象名
"obj": {"key1":"val1", "key2":"val2", ...} // 返回的对象内容
}
## 返回多个对象
当返回多个对象时,返回格式。范例:
{
"success": true, // 成功标志
"obj_name": "obj name", // 对象名
"objs": [{obj1}, {obj2}, ...] // 对象列表
"page": { // 分页信息
"rows_per_page": intval // 每页行数
"total": intval, // 总数
"page_count": intval, // 分页数
"page_current": intval, // 当前页号
}
}
## 返回失败
失败时返回错误码和出错信息。 范例:
{
"success": false, // 成功标志
"error_code": 1, // 错误码
"error_desc": "error description", // 错误描述
"error_url": "/api/account/login", // 错误URL
}
# 错误码定义
| 返回码 | 错误信息 | 说明 |
| ------------ | -------- | ------------------------------ |
| 0 | 成功 | |
| 1 | 错误 | |
| 101 | 未授权 | 需登录 |
| 102 | 没有操作权限 | 没有相应的操作权限,不需重新登录 |
| 103 | 用户不存在 | |
| 104 | 用户已存在 | |
| 105 | 登录验证失败 | |
| 106 | 设备不在线 | |
| 201 | 缺少必填参数 | |
| 202 | 参数格式错误 | |
| 203 | 对象不存在 | |
| 204 | 参数取值错误 | |
| 301 | 数据库错误 | |
| 302 | 数据唯一性错误 | |
| 401 | 数据同步失败 | |
| 999 | 其它错误 | |

View File

@ -0,0 +1,452 @@
如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
对象定义
========
__目录__
- [BloodOxygenData](#bloodoxygendata) 血氧数据
- [BloodPressureData](#bloodpressuredata) 血压数据
- [CELL](#cell) 基站标识
- [Device](#device) 设备信息(注意区分device实体全部参数以及device实体可修改参数)
- [DeviceToken](#devicetoken) app用户推送token
- [Group](#group) 家庭圈
- [HeartRateData](#heartratedata) 心率数据
- [LocationData](#locationdata) 定位数据
- [Member](#member) 小组成员
- [PedometerData](#pedometerdata) 计步数据
- [Person](#person) 人员信息
- [PowerData](#powerdata) 开机数据
- [SettingAlert](#settingalert) 事件提醒
- [SettingFence](#settingfence) 围栏
- [SettingSosnumber](#settingsosnumber) 亲情号码
- [SleepData](#sleepdata) 睡眠数据
- [SosData](#sosdata) 呼叫数据
- [WIFI](#wifi) 基站标识
- [DeviceEnvVoice](#deviceenvvoice) 环境录音记录
- [ReplyData](#replydata) 答复数据
# bloodoxygendata
血氧数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| bloodoxygendata | 血氧百分比 | Int | | | False | 0 | |
| measure_type | 测量类型 | Int | | | False | 0 | 0 定时测量、 1 硬件手动测量、 2 远程指令测量 |
# bloodpressuredata
血压数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| dbp | 舒张压 | Int | | | False | 0 | |
| sbp | 收缩压 | Int | | | False | 0 | |
# cell
基站标识 -- LocationData 内嵌对象
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| mcc | MCC | String | | 3 | False | 000 | |
| mnc | MNC | String | | 3 | False | 000 | |
| lac | LAC | Int | | | False | 0 | |
| cid | CELLID | Int | | | False | 0 | |
| rssi | RSSI | Int | | | False | 0 | |
# device
device实体可修改参数 -- X8 (开关类型的参数以0,1传参代表关闭和打开
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
| sos_dial_cycle_times | 轮播次数1-9 | Int | | | True | 1 | SOS触发以后拨打SOS号码的循环次数,1是循环一次9是无限循环 |
| frequency_location | 位置上报频率 | Int | | | True | 60 | 单位分钟不建议低于10min |
| frequency_step | 记步上报频率 | Int | | | True | 30 | 单位分钟不建议低于30min |默认是30分钟
| frequency_heartrate | 心率、血压、血氧上报频率 | Int | | | True | 60 | 单位分钟不建议低于10min |
| theshold_heartrate_h | 心率上限 | Int | | | True | 140 | |
| theshold_heartrate_l | 心率下限 | Int | | | True | 40 | |
| incoming_restriction | 呼入限制 | Boolean | | | True | False | |
| profile | 情景模式 | Int | | | True | 2 | 1:振动 2:铃声 3:震动+铃声 4.无振无声 |
| sleep_period_begin | 睡眠开始时间 | String | | 14 | True | | 格式YYYYMMDDHHMMSS其中YYYYMMDD都用0填充实例00000000083000,8点30am |
| sleep_period_end | 睡眠结束时间 | String | | 14 | True | | 同上 |
| step_objective | 计步目标 | Int | | | True | 3000 | |
| pedometer_enable | 计步数据开关 | Boolean | | | False | False | |
| sleep_enable | 睡眠数据开关 | Boolean | | | False | False | |
| sim_phone | 移动用户卡号 | String | | 16 | False | | |
| fall_enable | 跌倒判断开关 | Boolean | | | False | 0 |
| track_enable | 轨迹开关 | Boolean | | | False | 0 |
| heartrate_enable | 心率定时测量开关 | Boolean | | | False | False | |
| bloodoxygen_enable | 血氧定时测量开关 | Boolean | | | False | False | |
| bloodpressure_enable | 血压定时测量开关 | Boolean | | | False | False | |
| heartrate_enable | 心率、血氧、血压定时测量开关 | Boolean | | | False | False | |
| power_down_enable | 智能省电模式 (该模式打开以后,定时测量全部关闭) | Boolean | | | False | False | |
| short_message_enable | 短信上传开关 | Boolean | | | False | False | |
| gps_enable | GPS模块开关 | Boolean | | | False | True | |
| alertreply_enable | 提醒答复开关 | Boolean | | | False | True | |
| theshold_bloodoxygen_h | 血氧上限 | Int | | | False | 98 | |
| theshold_bloodoxygen_l | 血氧下限 | Int | | | False | 93 | |
| systolic_pressure_h | 收缩压上限 | Int | | | False | 140 | |
| diastolic_pressure_l | 舒张压下限 | Int | | | False | 60 | |
| callmode | 来电接听模式 | Int | | | True | 0 | 0 禁止自动接听 1 来电立即自动接听 2 响铃30s后自动接听 3 响铃15s后自动接听 |
| sim_phone | 移动用户卡号 | String | | 16 | False | | |
| sim_phone_type | 移动用户卡类型 | String | | 8 | False | unicom | unicom:中国联通; cmcc:中国移动; ctcc:中国电信 |
| name | 设备名称 | String | | 32 | False | | |
| theshold_low_battery | 低电门限 | Int | | | True | 15 | |
| sos_sendmail | 紧急呼叫是否发送短信 | Boolean | | | True | False | |
| exercise_heartrate_h| 运动心率上限阈值默认180|int| | |True|180| |
| exercise_heartrate_l |运动心率下限阈值默认40 |int| | |True|40 | |
# device01
device实体全部参数
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| did | 设备编号 | String | | 64 | True | None | |
| alerts | 提醒 | List: Embedded [SettingAlert](#settingalert) | | | False | | |
| sos_numbers | 亲情号码 | List: Embedded [SettingSosNumber](#settingsosnumber) | | | False | | |
| sos_dial_cycle_times | 轮播次数1-9 | Int | | | True | 1 | SOS触发以后拨打SOS号码的循环次数,1是循环一次9是无限循环 |
| sos_sendmail | 紧急呼叫是否发送短信 | Boolean | | | True | False | |
| sos_readmail | 紧急呼叫短信是否自动弹出 | Boolean | | | True | False | 其他设备参数,忽略 |
| sos_dial_cycle_mode | 轮播模式 | Int | | | True | 0 | 0仅拨打SOS号码 |
| frequency_location | 位置上报频率 | Int | | | True | 30 | 单位分钟不建议低于10min |
| frequency_step | 记步上报频率 | Int | | | True | 30 | 单位分钟不建议低于10mi |
| frequency_heartrate | 心率上报频率 | Int | | | True | 30 | 单位分钟不建议低于10mi |
| theshold_heartrate_h | 心率上限 | Int | | | True | 140 | |
| theshold_heartrate_l | 心率下限 | Int | | | True | 40 | |
| incoming_restriction | 呼入限制 | Boolean | | | True | False | |
| bluetooth_enable | 蓝牙开关 | Boolean | | | True | False | 仅在适配好的血压计同步功能上有用 |
| bluetooth_devices | 蓝牙设备 | String | | 256 | True | | 暂时废弃 |
| profile | 情景模式 | Int | | | True | 0 | 0铃声1震动2震动+铃声3无震无声S2系列无震动曲奇有 |
| sleep_period_begin | 睡眠开始时间 | String | | 14 | True | | 格式YYYYMMDDHHMMSS其中YYYYMMDD都用0填充实例00000000083000,8点30am |
| sleep_period_end | 睡眠结束时间 | String | | 14 | True | | 同上 |
| step_objective | 计步目标 | Int | | | True | 3000 | |
| theshold_sit | 久坐门限 | Int | | | True | 60 | |
| theshold_low_battery | 低电门限 | Int | | | True | 20 | |
| fences | 电子围栏 | List: Embedded [SettingFence](#settingfence) | | | False | | |
| pedometer_enable | 计步数据开关 | Boolean | | | False | False | |
| sleep_enable | 睡眠数据开关 | Boolean | | | False | False | |
| imei | 移动设备识别码 | String | | 16 | False | | |
| imsi | 移动用户识别码 | String | | 16 | False | | |
| type | 设备类型 | String | | 20 | False | BY102 | |
| sim_phone | 移动用户卡号 | String | | 16 | False | | |
| sim_phone_type | 移动用户卡类型 | String | | 8 | False | unicom | unicom:中国联通; cmcc:中国移动; ctcc:中国电信 |
| owner | 拥有人 | Reference: [Person](#person) | | | False | None | |
| name | 设备名称 | String | | 32 | False | | |
| created_at | 创建时间 | DateTime | | | True | now() | |
| updated_at | 更新时间 | DateTime | | | True | now() | |
| lastlogin_ip | 最近联网地址 | String | | 16 | False | | |
| lastlogin_at | 最近联网时间 | DateTime | | | False | now() | |
| active | 激活状态 | Boolean | | | True | False | | 建立家庭圈绑定了设备才显示true没有绑定设备显示false
| active_at | 首次激活时间 | DateTime | | | False | None | |
| online | 联网状态 | Boolean | | | True | False | |
| location_updated | 坐标更新 | Boolean | | | True | False | |
| location_updated_at | 坐标更新时间 | DateTime | | | True | | |
| last_location | 最新坐标 | Point | | | True | | |
| last_city | 城市 | String | | | True | | |
| last_address | 地址 | String | | | True | | |
| wear_flag | 佩戴状态 | Int | | | False | None | |
| wear_updated_at | 佩戴状态更新时间 | DateTime | | | False | None | 1未佩戴0已佩戴仅在测量心率的时候更新状态终端自己测量不会更新 |
| remaining_power | 剩余电量(% | Int | | | False | 0 | |
| remaining_power_updated_at | 电量状态更新时间 | DateTime | | | False | None | |
| wifi | WIFI | List: Embedded [WIFI](#wifi) | | | False | | |
| software_version | 软件版本 | String | | 48 | False | | |
| iccid1 | 移动用户iccid号1 | String | | 21 | False | None | |
| iccid2 | 移动用户iccid号2 | String | | 21 | False | None | |
| fence_notification_updated_at | 围栏通知更新时间 | DateTime | | | False | None | |
| fall_model | 跌倒模式设置 | String | | | False | 0 | |
| fall_enable | 跌倒判断开关 | Boolean | | | False | 0 |
| track_enable | 轨迹开关 | Boolean | | | False | 0 |
| heartrate_enable | 心率开关 | Boolean | | | False | False | |
| power_down_enable | 智能省电模式 | Boolean | | | False | False | |
| exercise_heartrate_h| 运动心率上限阈值默认180|int| | |True|180| |
| exercise_heartrate_l |运动心率下限阈值默认40 |int| | |True|40 | |
# devicetoken
终端标识 -- Person内嵌对象(爱牵挂用户体系
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| token_type | 设备类型 | String | | 10 | True | ios | ios:ios; android:android |
| token | 设备标识 | String | | 128 | True | None | |
| is_enable_aliase | 别名是否可用 | Boolean | | | True | False | |
| created_at | 创建时间 | DateTime | | | True | now() | |
# group
家庭圈 (爱牵挂用户体系
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| owner | 拥有人 | Reference: [Person](#person) | | | True | None | |
| name | 组名称 | String | | | True | | |
| community | 社区 | Reference: [Community](#community) | | | False | None | |
| created_at | 创建时间 | DateTime | | | False | now() | |
| is_public | 是否公开 | Boolean | | | False | False | |
| members | 成员列表 | List: [Member](#member) | | | | | |
# heartratedata
心率数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| heartrate | 心率 | Int | | | False | 0 | |
# locationdata
定位数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| type | 类型 | String | | | False | 0 | 0:Gps定位; 1:基站定位; 2基站定位CDMA; 99:纯wifi |
| is_reply | 是否为响应 | Boolean | | | False | False | |
| city | 城市 | String | | 16 | False | | |
| address | 地址 | String | | 128 | False | | |
| point | 坐标 | Point | | | False | None | |
| cell | CELL | List: Embedded [CELL](#cell) | | | False | | |
| wifi | WIFI | List: Embedded [WIFI](#wifi) | | | False | | |
# member
小组成员 -- Person 通过 Member 跟 Group进行关联 (爱牵挂用户体系
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| group | 组 | Reference: [Group](#group) | | | True | None | |
| person | 成员 | Reference: [Person](#person) | | | True | None | |
| member_name | 关系 | String | | | False | | |
| is_default | 是缺省组 | Int | | | False | 0 | |
# pedometerdata
计步数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| value | 累计步数 | Int | | | False | 0 | |
# person
人员信息 (爱牵挂用户体系
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| username | 用户名 | String | | 16 | True | None | |
| password | 用户口令 | String | | 64 | True | None | |
| email | 注册邮箱 | Email | | 64 | False | None | |
| nickname | 别名 | String | | 64 | False | None | |
| phone | 手机号码 | String | | 15 | False | None | |
| telephone | 电话号码 | String | | 15 | False | None | |
| app | 服务名 | String | | 30 | True | aiqiangua | 标识登陆的app |
| devicetokens | 终端标识列表 | List: Embedded [DeviceToken](#devicetoken) | | | False | | |
| weight | 体重KG | Int | | | False | 0 | |
| step | 步长CM | Int | | | False | 0 | |
| age | 年龄(岁) | Int | | | False | 0 | |
| height | 身高CM | Int | | | False | 0 | |
| avatar | 头像文件 | String | | | False | None | |
| avatar_url | 头像 | String | | | False | /media/avatar/200/male.png | |
| community | 社区 | Reference: [Community](#community) | | | False | None | |
| role | 角色 | String | | 10 | True | user | user:用户; operator:操作员; superuser:超级管理员 |
| gender | 性别 | String | | 10 | True | male | male:男 ; female:女 |
| address | 地址 | String | | 64 | False | None | |
| created_at | 创建时间 | DateTime | | | True | now() | |
| updated_at | 更新时间 | DateTime | | | True | now() | |
| lastlogin_ip | 最近登录地址 | String | | 16 | False | None | |
| lastlogin_at | 最近登录时间 | DateTime | | | False | None | |
| lastlogin_by | 登录设备 | String | | | True | | |
| enable | 启用 | Boolean | | | False | False | 暂时没有使用 |
| email_is_checked | 邮箱已验证 | Boolean | | | False | False | |
| phone_is_checked | 手机已验证 | Boolean | | | False | False | |
| push_sos_enable | 允许SOS推送 | Boolean | | | False | False | |
| push_fence_enable | 允许电子围栏推送 | Boolean | | | False | False | |
| push_abnormal_enable | 允许健康数据推送 | Boolean | | | False | False | |
| push_message_enable | 允许家庭圈消息推送 | Boolean | | | False | False | |
| push_lowpower_enable | 允许低电推送 | Boolean | | | False | False | |
| push_system_enable | 允许系统消息推送 | Boolean | | | False | False | |
| auth_type | 授权类型 | String | | 10 | False | None | weibo:weibo; qq:qq; weixin:weixin |
| auth_uid | 授权唯一标识 | String | | 256 | False | None | |
| auth_updated_at | 更新时间 | DateTime | | | True | now() | |
| home | Home | String | | | False | None | |
| home_wifi | Home Wifi | String | | 32 | False | None | |
| devices | 设备列表 | List: [Device](#device) | | | | | |
| groups | 小组列表 | List: [Group](#group) | | | | | |
# powerdata
开机数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| type | 开/关机类型 | String | | | False | 0 | 0:开机; 1:关机; 2:电量上报; 3:低电通知 |
| remaining_power | 剩余电量(% | Int | | | False | 0 | |
| location | 低电时位置 | Reference: [LocationData](#locationdata) | | | False | None | |
# settingalert
事件提醒 -- 内嵌对象
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| reply_enable 答复开关 Boolean | True | False | | 但是掉用接口使用 0,1 0是关闭1是打开
| seqid | 序号 | Int | | | True | None | |
| enable | 启用 | Boolean | | | True | False | |
| is_medicine | 用药 | Boolean | | | True | False | 仅用于app标识无实际意义 |
| name | 名称 | String | | 40 | True | | |
| alert_type | 提醒类型 | Int | | | True | 1 | 0、周期性提醒类似手机工作日闹钟类型 1、一次性提醒设定日期 |
| cycle | 周期 | Int | | | True | 1 | 1、以星期为周期对应上面的0,2、以日期为周期对应上面的1 |
| time | 时间 | String | | 14 | False | | 当alert_type=0时格式为 1001101+21+30+ 意义前7位对应周日、周一……周六需要提醒的那些天后面是HHMM中间用+号分割和结尾当alert_type=1时格式为YYYYMMDDHHMMSS 20150313213000 |
| media_length | 语音文件长度 | Int | | | False | 0 | 上传前需检查文件大小最大不得超过10KB建议在5K~8K之间否则会报错不需要传递这个参数服务器计算 |
| file_checksum | 语音文件(校验和) | Int | | | False | 0 | 服务器产生 |
| filename | 语音文件名 | String | | 64 | False | None | |
| url | 下载地址 | String | | 128 | False | None | 服务器产生 |
| created_at | 创建时间 | DateTime | | | False | None | |
# settingfence
围栏 -- 内嵌对象
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| seqid | 序号 | Int | | | True | None | |
| freq | 每天 | Boolean | | | False | True | |
| enable | 启用 | Boolean | | | True | False | |
| name | 名称 | String | | 40 | True | | |
| time_begin | 起始时间 | Int | | | True | 0 | |
| time_end | 终止时间 | Int | | | True | 0 | |
| safe_area | 安全区域 | int | | | False | None | |
# settingsosnumber
亲情号码 -- 内嵌对象
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| seqid | 序号 | Int | | | True | None | |
| name | 名称 | String | | 32 | True | | |
| num | 号码 | String | | 16 | True | | |
| dial_flag | 是否呼叫 | Boolean | | | True | False | 是否将亲情号码设置为SOS号码即在设备SOS时加入拨打循环 |
# sleepdata
睡眠数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| time_end | 截止时间 | DateTime | | | False | None | |
| interval | 检测间隔 | Int | | | False | 30 | |
| total | 检测次数 | Int | | | False | 0 | |
| data | 睡眠数据 | List: Embedded [SleepDataSleep](#sleepdatasleep) | | | False | [] | X1无详细睡眠数据忽略此参数 |
| deep_sleep | 是 | Sting | 深睡时长单位小时str(float) |
| light_sleep | 是 | Sting | 浅睡时长单位小时str(float) |
| awake_time | 是 | Sting | 清醒时长单位小时str(float) |
| total_sleep | 是 | Sting | 睡眠总时长单位小时str(float) |
# sosdata
呼叫数据
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| id | | ObjectId | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| created_at | 记录时间 | DateTime | | | False | now() | |
| time_begin | 发生时间 | DateTime | | | False | None | |
| type | 类型 | String | | | False | 0 | 0:Gps定位; 1:基站定位 |
| city | 城市 | String | | 16 | False | | |
| address | 地址 | String | | 128 | False | | |
| point | 坐标 | Point | | | False | None | |
| cell | CELL | List: Embedded [CELL](#cell) | | | False | | |
| wifi | WIFI | List: Embedded [WIFI](#wifi) | | | False | | |
| heartrate | 心率值 | Int | | | False | None | X1无此参数 |
| is_removed | 是否消除 | Boolean | | | False | False | |
#DeviceEnvVoice
设备环境音
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
|------- | ---- | ---- | -------- | -------- | -------- | ------ | ---- |
| user | 用户 | Reference: [Person](#person) | | | False | None | |
| device | 设备 | Reference: [Device](#device) | | | False | None | |
| group | 拥有组 | Reference: [Group](#group) | | | False | None | |
| voice_time | 拾音时间 | DateTime | | | False | | |
| voice_type | 文件类型 | Int | | |False | 0 | |
| media_length | 长度 | Int | | | False | 0 | |
| filename | 文件名 | String | | 64 | False | | |
| url | 下载地址 | String | | 128 | False | | |
| created_at | 记录时间 | DateTime | | | False | now() | |
#replydata
答复数据 -- settingalert中reply_enable打开device中alertreply_enable打开硬件会将对应alert的处理结果答复上来
| 字段名 | 说明 | 类型 | 最小长度 | 最大长度 | 必填字段 | 缺省值 | 备注 |
| id | | ObjectId | | | True | None | |
| device | 设备 | Device | | | True | None | |
| time_begin | 发生时间 | DateTime | | | True | None | |
| reply_type | 答复类型 | Int | | | True | 0 | 0广播答复1提醒答复 |
| alert_name | 提醒名称 | string | | | False | None | 提醒的文本内容当reply=1时携带 |
| result | 答复结果 | Int | | | True | 0 | 0 用户未处理 1 用户已处理 |
| advert_id | 广播ID | | | | False | None | 当reply_type=0时携带 |
| advert_text| 广播文本 | | | | False | None | 当reply_type=0时携带 |
| created_at | 创建时间 | DateTime | | | True | None | |

View File

@ -0,0 +1,139 @@
用户信息
========
# 查看账号信息
- 地址: /api/person/self 或 /api/person/[person oid]
- 方法: GET
- 验证方法: Cookie: user
- 响应对象: [person](./object.md#person)
- URL参数: person oid
- 请求范例
curl -v -A CURL -b cookies.txt http://127.0.0.1:8888/api/person/self
> GET /api/person/self HTTP/1.1
> User-Agent: CURL
> Host: 127.0.0.1:8888
> Accept: */*
> Cookie: "user="2|1:0|10:1473817034|4:user|16:MTg2ODA1NTUwNzA=|2768bb77396815e5a7ca9fe3c65dc8060943c57aeb078c746faf56036533aa12""
- 响应范例
{
"obj":{
"_id":{
"$oid":"565ba619bf483c7369e5b4a3"
},
"username":"18680555070",
"password":"f8cdb04495ded47615258f9dc6a3f4707fd2405434fefc3cbf4ef4e6",
"nickname":"2222",
"phone":"18680555070",
"telephone":"",
"app":"aiqiangua2.0",
"devicetokens":[
{
"token_type":"ios",
"token":"9dc0aa1154ad3c10d28bcbd21dbaa26d0fbc2135b1a6e2a2844517eb5fe5468b",
"is_enable_aliase":false,
"created_at":{
"$date":1473671277244
}
},
{
"token_type":"android",
"token":"22dde87aa7bbfde548179ef3933cb60f249592c2",
"is_enable_aliase":false,
"created_at":{
"$date":1473772757489
}
}
],
"weight":0,
"step":0,
"age":0,
"height":0,
"avatar":"18680555070.png",
"avatar_url":"/media/avatar/200/18680555070.jpg",
"role":"user",
"gender":"male",
"created_at":{
"$date":1448875673502
},
"updated_at":{
"$date":1448875673502
},
"lastlogin_ip":"121.32.197.247",
"lastlogin_at":{
"$date":1473772757475
},
"lastlogin_by":"",
"enable":false,
"email_is_checked":false,
"phone_is_checked":true,
"push_sos_enable":true,
"push_fence_enable":true,
"push_abnormal_enable":true,
"push_message_enable":true,
"push_lowpower_enable":true,
"push_system_enable":true,
"push_fall_enable":true,
"push_env_enable":true,
"auth_type":"weixin",
"auth_uid":"oXm9utw5vTIi4PV4bZtcFFeFJqS8",
"auth_updated_at":{
"$date":1448875673502
},
"register_app":"",
"is_device_owner":false,
"devices":[
],
"groups":[
{
"$oid":"565ba687bf483c7369e5b4a4"
}
],
"$community":{
},
"$devices":[
],
"$groups":[
{
"_id":{
"$oid":"565ba687bf483c7369e5b4a4"
},
"owner":{
"$oid":"565ba619bf483c7369e5b4a3"
},
"name":"18680555070家",
"created_at":{
"$date":1448875783707
},
"is_public":false,
"members":[
{
"$oid":"565ba687bf483c7369e5b4a5"
},
{
"$oid":"578f41442642511a2446b9f0"
},
{
"$oid":"57a40ebe2642514b25a49076"
},
{
"$oid":"57d108c4264251061d083074"
},
{
"$oid":"57d6144126425121e8b81865"
}
]
}
]
},
"success":true,
"obj_name":"person"
}

View File

@ -0,0 +1,195 @@
数据发送机构给出接口我们主动调用POST请求表单提交数据。
如果客户具有调试谷歌定位的开发能力,可以通知爱牵挂对接技术人员,采用获取原始定位数据的形式获取位置信息。采用原始定位数据时,不再发送高德坐标,原始数据主要为基站信息+wifi/GPS
位置数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| is_reply | 是 | Boolean | 是否为响应 |
| is_track | 是 | Boolean | 是否轨迹 |
| city | 是 | String | 城市 |
| address | 是 | String | 地址 |
| lon | 是 | double | 经度 |
| lat | 是 | double | 纬度 |
| type | 是 | int | 类型 0:Gps定位; 1:基站定位(移动/联通版定位) 2电信基站版定位 99:纯WIFI定位 |
SOS数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| heartrate | 是 | int | 心率 | 发送数据一直为 None
| city | 是 | String | 城市 |
| address | 是 | String | 地址 |
| lon | 是 | double | 经度 |
| lat | 是 | double | 纬度 |
| type | 是 | int | 类型 0:Gps定位; 1:移动基站定位2是电信的LBS(基站定位) | |
心率数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| heartrate | 是 | Int | 心率 |
| theshold_heartrate_h | 是 | Int | 心率阈值上限 |
| theshold_heartrate_l | 是 | Int | 心率阈值下限 |
计步数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| value | 是 | Int | 步数 |
开关机数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| type | 是 | int | 开/关机类型 0:开机; 1:关机; 2:电量上报; 3:低电通知 | (设备没电自动关机的时候是没有关机报文的)
| remaining_power | 是 | Int | 剩余电量(% |
血压数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| dbp | 是 | int | 舒张压 |
| dbp_l | 是 | int | 舒张压报警下限 |
| sbp | 是 | int | 收缩压|
| sbp_h | 是 | int | 收缩压报警上限 |
跌倒数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ---------------------------------- |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| city | 是 | String | 城市 |
| address | 是 | String | 地址 |
| lon | 是 | double | 经度 |
| lat | 是 | double | 纬度 |
| type | 是 | int | 类型 0:Gps定位; 1:基站定位 |
提醒答复数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| reply_type | 是 | int | 答复类型 |当reply_type=0时为广播答复不返回alert_id和alert_name
| advert_id | 否 | String | |当reply_type=1时为语音提醒答复不返回advert_id和advert_text
| advert_text | 否 | String | |
| alert_id | 否 | String | 提醒ID |
| alert_name | 否 | String | 提醒名称 |
| reply_result | 是 | int | 答复结果 |0未处理 1 已处理
血氧数据发送
- 地址: http://xxxxx/
- 方法: post
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| device_type | 是 | String | 设备型号 |
| imei | 是 | String | 15位设备唯一序号 |
| time_begin_str | 是 | String | 时间YYYYmmDDHHMMSS显示将time_begin按YYYYmmDDHHMMSS格式化字符串长度固定14 |
| time_begin | 否 | DateTime | 发生时间YYYY-MM-DD HH:mm:SS 备注采用json格式提交时该字段不会传 |
| bloodoxygen | 是 | int | 血氧百分比 |
| bloodoxygen_h | 是 | int | 血氧报警上限 |
| bloodoxygen_l | 是 | int | 血氧报警下限 |
消息通知
- 地址: http://xxxxx/
- 方法: get
- 参数规范
| 名称 | 必须 | 类型 | 说明 |
| --------------- | ---- | ------------ | ------------------------------ |
| device_type | 是 | String | 设备型号 |
| type | 是 | int | type=1 SOStype=3 new 新成员加入 type=4 电子围栏触发, type=5 设备低电type=6 环境音 ''' type=8 运动心率异常
| deviceid | 是 | String | 15位设备唯一序号 |
| communityid | 是 | String | 机构ID |
| url | 是 | String | 环境音下载地址 |只有环境音type=6为必填其他type都为非必填
| name | 是 | String | 设备名称 |
根据type来定义给用户推送提示 type=1 SOStype=4 电子围栏触发, type=5 设备低电type=6 环境音''' type=8 运动心率异常
备注电子围栏触发时新增了point参数string高德坐标经度在前纬度在后如:123.11,23.44
新增了address参数stringunicode编码

View File

@ -0,0 +1,24 @@
1、联调方案爱牵挂提供数据分发的途径以及一个管理员权限账号(需通过爱牵挂销售人员进行申请)贵司开发监听接口给爱牵挂调用接受数据并进行本地化。设备配置修改或者在线操作指令通过贵司服务器调用API完成操作。避免双方用户体系冲突问题。用户和设备的关系由贵司服务器自行构建爱牵挂提供硬件和贵司服务器连接的通道。
2、调通auth.md中的登陆接口登陆状态建议由服务器保持。然后进行device.md中的设备数据查询设备配置修改指令发送的调试。如果贵司APP需要执行在线指令服务器内部封装接口提供给客户端由保持登陆状态的服务器调用爱牵挂服务器的相关接口。
3、按照pushdata写好接口给爱牵挂人员进行配置就会同步推数据但是设备设置参数的修改以及指令命令需要调接口。
注意——登陆状态保持:
1.调用auth.md里的login接口登录成功后返回一个cookie ,往后请求其它接口的时候在请求头的设置里加上这个cookie cookie时效24小时。如果cookie未携带或失效将无法对账号权限内的设备进行修改或在线操作。
2.“省电开关”打开后,心率、跌倒、轨迹、计步、血氧、血压,开关都是“关闭”状态(想打开心率、跌倒、轨迹、计步、血氧、血压开关,要先关闭“省电开关”)

View File

@ -0,0 +1,168 @@
数据对接思路:
1、爱牵挂作为提供连接硬件的通道负责将设备产生的数据实时分发给贵司同时提供指令和修改API让贵司对设备进行下行处理对接不涉及任何用户体系兼容仅作为上下行通路。。
2、数据分发部分请贵司参照pushdata.md文件开发数据接收API(HTTP),交给爱牵挂技术支持人员进行配置。
3、应对接收API的鉴权建议使用IP白名单的方式爱牵挂提供发送服务器的IP列表贵司进行匹配也可以使用登陆鉴权或其他类似令牌的方案需要额外开发工期会产生开发费用及后续维护成本。
4、数据接收API的请求参数可以采用POST 表单提交 以及 POST JSON 数据发送两种类型默认为POST表单提交如果需采用JSON数据发送请联系安牵挂技术人员进行配置。
5、下行的请求处理需要对接口进行鉴权(auth.md 中的 login方法),相关权限账号由爱牵挂技术人员进行授权提供。
6、常用的下行处理主要为配置项的变更以及指令操作(device.md),如修改亲情号码,发起实时定位等。
7、非常不推荐使用轮询的方式获取数据。爱牵挂服务对同一IP每秒请求次数为10次弹性考虑到并发以及负载尽量将QPS给予修改和下行的指令。
数据产生分发逻辑
M1必须设置紧急联系人才能按SOS进行报警
1.位置定位有两种,(1).一种是主动定位实时定位这种不需要打开轨迹开关。只需要调实时定位的接口这个接口在device文档下是个指令性接口给硬件下发一个定位指令设备开始定位。前提是设备必须在线不在线则不能调这个接口
(2).一种是轨迹定位,需要打开开关,设备根据设定的频率自动定位 默认测量间隔是1小时如果需要更改可以在出厂时告知对接人员按需求初始化配置。建议不要低于16分钟
2.心率;一种是手动测量心率,这种不需要打开开关,测量数据就会推送,手动测量就是手动操作设备
一种是自动测量心率这种需要打开开关根据设定的频率自动测量测量完毕之后推送数据硬件要求最低频率不得低于5分钟
3.计步需要打开开关默认是半小时可以更改频率但是不建议更改来决定上传的步数没有打开开关就不能产生步数数据每晚的0点计步数据清0
4.开关机:默认是一个小时推送一次。
5.跌倒:打开开关,设备产生数据然后推送数据,没有打开开关就不产生跌倒数据
6.血压:测一次血压,推送一次数据,自动测量是跟心率一起测量。 贵司自己开发血压阈值,我司只发血压数据,贵司自行判断是否异常,自行报警
血氧:心率,血压,血氧测量是一起测量的,自动测量也是一起测量的。
7.智能省电模式 (该模式打开以后,定时测量全部关闭)跌倒等开关修改(心率、跌倒、轨迹、计步、血氧、血压,都会忽略)
8.打开设备开关和修改设备自动上传频率需要调我们的接口先登录API里有登录接口在auth文档获取cookie在response header获取cookie然后调device文档的修改接口 + object文档的device参数。 这个接口只需要修改开关和上传的频率才用,
设置亲情号码设置语音提醒设置电子围栏远程操作等相关的接口都在device文档下。
远程操作接口的原理:前提:设备必须在线。 接口是指令性接口
调接口给硬件下发指令硬件开始进行相关的操作。然后硬件得到的数据上传我们的服务器然后同步发送到你们相对应的URL下
9.查看设备在不在线调device文档里面的指定设备这个接口查看返回参数中的online这个参数如果为true为在线反之不在线。如果查看全部机构内的设备在不在线查看community文档下的接口和device文档下批量获取设备在离线状态这个接口一般使用的是这个
后台M1设备的状态变化是16分钟。例如在线变成离线是16分钟才会改变。 离线变在线是,设备联网立马就改变。
10.紧急呼叫发送短信是开关控制的默认是关闭只有打开SOS报警的时候才会发短信给紧急号码反之则不会发送
11.语音答复开关默认是打开的所以设置语音提醒的时候必然会有语音答复数据如果不想要语音答复数据只想简单的语音提醒就需要调接口把语音答复开关关闭修改的参数是alertreply_enable
带文件的特殊提醒amr文件Content-Type :(用 multipart/form-data其他用application/x-www-form-urlencoded
12.如果接口打开了省电开关,那所有调功能开关的接口都不能成功,返回错误数据是“缺少参数”。必须关闭省电开关才可以正常调功能开关的接口。
13.M1没有广播功能
14.我们发过去的数据是表单的格式 默认是Content-Type: application/x-www-form-urlencoded如果是from-data需要单独进行一下设置解析
15.设备采用的是4G流量消耗不可预控。
16.调电子围栏的接口传坐标是传5个坐标最后一个坐标是第一个坐标形成一个回环。
轨迹关闭,电子围栏打开,在电子围栏生效的时间段内,设备也会根据轨迹频率定位的。然后判断设备是否在围栏内从而是否报警
轨迹和电子围栏打开不受电子围栏时间段的限制是属于全天定位的。行走没到300步功基站位置没变是不会有新的定位的加了一个定位的省电机制
只有围栏和轨迹同时关闭,设备才不会自动定位。
17.电子围栏是配合轨迹定位一起使用的,自动定位的时候,会判断他在不在围栏内,不在就不报警。必须是自动定位才可以。
18.在pushdata文档下is_reply是响应也就是主动定位
is_track是轨迹也就是自动定位。 只有is_track为true的时候必须为自动定位电子围栏才起作用。
19.设备必须在贵司的机构下才拥有修改的权限如果调接口显示无操作权限就是设备不在机构下在我们机构web端平台上进行添加或者让爱牵挂人员进行添加。
20.我们只传硬件数据,与设备的绑定关系需要贵司自行定义
21.只需要这四个文档就可以authdeviceobjectpushdata
22.我司发的是高德坐标,如果你们使用的是百度坐标,需要你们自己转换,我们是火星坐标系
23.是否佩戴这个状态调我司device文档下指定设备这个接口查看wear_flag这个参数判断是否佩戴
佩戴状态是有变化在改变,没有变化不会改变的,自动测量的时候一直能测到心率,那状态就是现实已佩戴状态,有个心率没有测到,佩戴状态就会变成未佩戴。这个时候佩戴的更新时间才会改变。
24.一个服务器调我们的接口1秒钟不能超过10次
25.调我司的接口返回的数据中时间戳需要进行转换转换后需要减8小时。
26.在community文档里面的community id获取方法调登录接口的时候返回的body中有community对应的就是community id
27.如果是post请求把参数带到body里面禁止写到URL后面。URL后面带参数的全是get请求。 我们的测试服虽然get和post请求都可以使用但是要是用规范改post请求的时候必须post请求并且把参数放到body下不要放到URL后面。我们的正式服因为换过架构所以会更加规范修改接口必须是post且放到body下进行请求
28.语音提醒调我们接口语音提醒接口upfile参数要导入文件流把整个文件发送给我们。查看语音文件的地址格式为url + '/media/alerts/' + imei + '/' + alertid + '.amr'。 例http://api.aiqiangua.com:8888/media/alerts/868219000099988/1.amr
答复开关是在修改配置参数alertreply_enable默认是打开的
语音播报是按任何键会结束提醒,上传答复数据是已处理
语音播报超过3分钟没有按任何按键上传的答复数据是未处理。
29.url 测试服:http://120.24.56.48:8889
正式服:http://api.aiqiangua.com:8888
30.硬件的管理后台http://manager.aiqiangua.com/organS2/loginAction!login.do
账号密码是当时注册APP作为超管的账号密码
如果输入的账号正确但是还是出现账号不存在那就是密码错了需要在APP上重置一下密码在登录
31.把设备导入到贵司的机构账号下:两种方式
1让我司的技术人员进行导入
2登录我司的机构web端平台http://manager.aiqiangua.com/organS2/loginAction!login.do
使用批量添加,下载模板:
1、在表格中输入设备号deviceid只需要输入设备IMEI号就可以了后面的那些可不输入。
2、选中所有要录入的设备
3、在工具栏上选择数据
4、点击分列
5、点击下一步下一步
6、选择列数据类型为文本
7、点击完成
前提:设备必须是以前没有加入到机构的设备
尽量使用批量导入不要使用单个添加因为单个添加有限制必须是连过网并且从来没有绑定过我司APP的设备才可以添加成功
32.我们配置URL只能配置一个。如果你们以后必须要设置两个URL的话
有两种方案1.我们这边创建两个机构设备属于哪个机构的就划分到哪个机构下设备数据只能传到对应机构URL下。缺点需要加强和爱牵挂这边的沟通设备更换机构从A机构拉到B机构需要爱牵挂这边进行操作。调我们的接口的时候需要对应不同的账号。
2.只创建一个机构配置一个URL所有的设备加入到这个机构下数据到你们那你们那边保存到数据库至于怎么转发你们那边就可以根据自己的需求进行转发。优点节省了两边的操作维护性更高。调我们的接口只需要一个账号就可以了。 缺点:增加了开发的时间
33.贵司收不到数据,从以下几点排查:
(1.设备在不在线.设备不在线肯定上传不了数据。
(2.设备在线相关功能开关有没有打开有没有设置好频率默认频率是60分钟没有打开就不能产生数据也就没有数据上传更不可能分发。
(3.设备上传数据到我们服务器,发送给贵司的时候,请求贵司的接口出现问题,请求接口失败,这种需要贵司自行排查接口
(4.设备不在贵司的机构下。需要联系爱牵挂支持人员,将设备添加到贵司的机构账号下。
均可在我司的平台上查看相关数据是否上传或者以前绑定了我司的APP就可以查看数据。、
http://manager.aiqiangua.com/organS2/loginAction!login.do
34.前期测试阶段,修改设备参数,从以下三点:
1.如果绑定了我司的APP可以使用我司的APP进行修改
2.可以登录我司的机构web端平台找到对应的设备进行修改 3.调接口进行修改
35.数据分发请求接口规则:
我司规则是请求接口超过3次3次都没有响应或超时(5s),就会把这个接口暂时过滤掉,半小时之后才能通,重新调这个接口。
我司调接口是5秒这个5秒是一个事务的时间请求/返回。
36.我司的对接规则是首先贵司按照对接文档提供信息我司按照信息在我司硬件服务器给贵司创建一个机构然后把贵司采购的设备IMEI号加入到这个机构下然后贵司提供接收数据的URL设备产生数据就发送到你们的这个接口下贵司自行保存数据不在这个机构下的设备产生就不能发送到这个接口下。修改设备参数需要调我司的接口先登录用你们创建机构的时候提供的管理员账号登录这个是你们机构的超管拥有修改贵司机构下所有设备参数的权限如果调接口提示无权限就是设备不在贵司机构下需要添加进去
37.出现APP绑定没有激活的情况
1.设备没有激活(从来没有联网过),如果是机构用户,可能是设备没有导入到机构账号下。
2.检查输入的IMEI号或者包装盒上面的二维码是否与设备播报的IMEI号一致
3.下载我司的APP正式服和测试服有没有跟设备对应设备也有正式服和测试服。
38.我司的APP家庭圈内的非管理员报警异常中低电心率体温答复提醒是收不到异常的。
39.我司的APP如果设备在机构下在我司的APP里是不能解绑的。以下方面解决
1.在我司提供的机构web端平台上上面有解绑按钮
2.在我们公众号下询问里面的客服进行解绑也可在对接的微信群里提供解绑APP
40.172148的卡在联网后电话那条报文会上传一串0000000. 正常的SIM不会有这些问题只有公司使用的物联网卡才会有这些问题
41.当计步开关开启,设备关机重启,重新联网的时候,设备会报上来计步数据,有时候会这样
42.上不了网、检查这几方面:
1.检查卡的资费,流量,
2.检查设备是否有电量 。
3.设备是否有语音播报,“设备联网成功”
4.在设备菜单——设备信息——查看设备的IMEI号与包装盒上面的IMEI号是否一致
43.测量心率血压出现失败:
1.请确认看看设备是否低电最好电量在30%以上。
2.设备关机重启一下,重新联网试试 3.查看设备测量的时候是否紧贴皮肤。
4.换一个人测一下。
44. 项目 标准(良好网络的情况下)
定位时间(秒) 60秒以内
1、室外理论定位精度10-30米左右
定位偏差(米) 2、室内有稳定良好WIFI信号理论精度是20-50米精度
3、室内无GPS无稳定WIFI情况下定位精度在200-2000米。
45.备注:定位精度说明:
1、在室外场景下设备可获取到卫星信号设备通过接收卫星发射的带有时间和位置信息的无线电信号计算出佩戴者所在位置的具体经纬度根据设备所处区域能够接收到的卫星信号数量和强度理论定位精度在10-30米左右。如果室外受到大楼、天桥、树木等遮挡或者天气原因、云层较厚等导致信号较弱时会影响定位时间和定位精度。
?
2、而在室内情况下由于大多房屋都采用钢架结构那么卫星受到一定程度的屏蔽影响导致无法获取那么此时会自动切换成室内定位模式即LBS基站定位+WIFIWIFI定位LBS是指移动运营商的基站信号根据您使用设在所在区域周围基站覆盖的密度而定基站数量越多则越准基站数量少则出现较大误差定位精度在200-2000米此时APP定位页面显示网络定位。除此之外设备还会搜索您家里或周围的WIFI热点辅助定位这需要周边有信号比较好且在高德地图资源库有地址备案的WIFI来辅助设备进行室内定位。如果设备获取到稳定且高德地图资源库有地址备案的WIFI理论精度是20-50米精度。如果周边无WIFI信号、WIFI信号较弱或WIFI没有在高德地图资源库有地址备案、或者该WIFI信号是特殊、大型的WIFI等原因会自动切换成LBS基站定位和影响定位精度。
46.M1做了一个机制在同一个地方行走没到300步功基站位置没变是不会有新的定位的加了一个定位的省电机制获取的所有基站是一模一样的就不上传定位数据了所以会看到的就产生了一个定位数据 。只有基站产生了变化,定位才会上传。该功能是为了延长续航,如果贵司更需要按时发送的定位数据,可以联系爱牵挂支持人员,在设备出厂时将该功能关闭。