日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

設備通過發送HTTP請求到設備位置服務來進行輔助定位,本文介紹設備如何將移動基站、Wi-Fi AP、IP地址信息上報到設備位置服務。

前提條件

  • 已在物聯網平臺創建產品和設備,并添加自定義設備的位置屬性(GeoLocation)。具體操作,請參見使用流程的步驟1和步驟2。

  • 設備已獲取Token。 具體操作,請參見獲取設備的Token

背景信息

設備定位是物聯網平臺提供的免費增值服務,可根據設備提供的移動基站、WiFi AP、IP地址等信息,來獲取設備的位置信息。具體說明,請參見服務簡介

HTTP請求格式

設備通過發送HTTP請求,在設備位置服務中上報位置數據。HTTP請求只支持POST方式,URL格式為:

https://${YourEndPoint}/topic/sys/${ProductKey}/${DeviceName}/_thing/service/post

您需將${YourEndPoint}替換為設備的實際地域,${ProductKey}替換為產品名稱,${DeviceName}替換為設備名稱。

HTTPS請求示例:

https://iot-as-http.cn-shanghai.aliyuncs.com/topic/sys/a1GFjLP****/device123/_thing/service/post

HTTP Header格式

POST /topic/${topic} HTTP/1.1
Host: ${YourEndpoint}
password:${token}
Content-Type: application/octet-stream
body: ${your_data}

參數

說明

POST

${topic}替換為具體Topic,設備將數據上報到具體Topic中來實現消息通信。

Topic格式為:sys/${ProductKey}/${DeviceName}/_thing/service/post

請將Topic格式中的${ProductKey}${DeviceName}替換為實際設備信息。

Host

${YourEndpoint}替換為HTTPS接入的域名,設備實際地域的接入域名,請參見查看實例終端節點

password

${token}替換為調用設備認證接口auth返回的token值。

Content-Type

設備發送給物聯網平臺的上行數據的編碼格式,目前僅支持application/octet-stream。若使用其他編碼格式,會返回參數錯誤。

body

數據格式根據定位方式有所不同。詳細內容,請參見下文HTTP body示例

HTTP Body格式

{
  "id": "xxx",
  "version": "1.0",
  "params": {
    "identifier": "Location.Position",
    "serviceParams": {params}
  },
  "method": "_thing.service.post"
}

參數

說明

id

數字,用于標識請求的ID,取值自定義。

version

版本號,固定為1.0

identifier

固定為Location.Position

serviceParams

設備發送的具體位置信息,移動基站定位、Wi-Fi AP和設備IP地址的格式不同,詳細內容,請參見下文HTTP body示例

method

固定為_thing.service.post

HTTP Body示例

  • 移動基站定位

    當設備發送的是移動基站信息時,下面是一個完整的HTTP Body示例:

    {
        "id":"1234",
        "version":"1.0",
        "params":{
            "identifier":"Location.Position",
            "serviceParams":{
                "type":"base",
                "imei":"35231505283****",
                "smac":"E0:DB:55:E4:**:**",
                "cdma":"0",
                "bts":"4*0,01,4****,22****9,-65",
                "nearbts":"460,01,4***7,22***09,-65|460,01,40 977,22****9,-65|460,01,40977,22****9,-65"
            }
        },
        "method":"_thing.service.post"
    }

    移動基站定位serviceParams參數說明如下:

    參數

    是否必填

    說明

    type

    定位方式,固定為base

    可不填,默認為移動基站定位。

    imei

    手機IMEI號。

    用于提高定位精準度和排查問題。

    說明

    若無手機IMEI號,可換成設備的唯一識別碼。

    smac

    手機MAC碼。

    用于提高定位精準度和排查問題。

    imsi

    移動用戶識別碼。

    用于提高定位精準度和排查問題。

    cdma

    是否為CDMA。

    • 1:是CDMA。

    • 0:非CDMA。

    bts

    接入設備的移動基站信息。

    • 是CDMA,bts格式:sid,nid,bid,lon,lat,signal

      其中lonlat可以為空,當為空時格式:sid,nid,bid,,,signal

    • 非CDMA,bts格式:mcc,mnc,lac,cellid,signal

    nearbts

    周邊移動基站信息(不含接入基站信息),格式為:基站信息 1|基站信息 2|基站信息 3.....

    說明

    建議填寫以提高定位精準度。

    bts參數說明如下:

    參數

    是否必填

    說明

    mcc

    當cdma=0時,必填。

    移動用戶所屬國家代碼,十進制,默認值為460。

    mnc

    當cdma=0時,必填。

    通信網號。

    • 0:中國移動。

    • 1:中國聯通。

    lac

    當cdma=0時,必填。

    位置區域碼,十進制,取值范圍:0~65535。

    cellid

    當cdma=0時,必填。

    基站小區編號,十進制,取值范圍:0~65535,0~268435455。

    其中0、65535和268435455不能使用,當小區編號大于65535時,移動基站為3G基站。

    signal

    當cdma=0時,必填。

    信號強度,取值范圍:0~113dbm。

    若獲得信號強度為正數,請按照以下公式進行轉換:獲得的正信號強度*2-113

    sid

    當cdma=1時,必填。

    CDMA系統識別碼。

    nid

    當cdma=1時,必填。

    CDMA網絡識別碼。

    bid

    當cdma=1時,必填。

    CDMA小區唯一識別碼。

    lon

    CDMA經度值,手機平臺接口讀出的數值。

    lat

    CDMA緯度值,手機平臺接口讀出的數值。

  • WiFi AP定位

    當設備發送的是WiFi AP信息時,下面是一個完整的HTTP Body示例:

    {
      "id": "123",
      "version": "1.0",
      "params": {
        "identifier": "Location.Position",
        "serviceParams": {
          "type": "wifi",
          "mmac": "4c:*8:da:2*:ea:*9,-56,alibaba-inc",
          "macs": "4c:*8:*a:**:ea:d8,-56,alibaba-guest|e6:a4:**:6e:45:83,-58,DIRECT-RIDESKTOP-P0FPLV4mshO"
         }
      },
      "method": "_thing.service.post"
    }

    WiFi AP定位serviceParams參數說明如下:

    參數

    是否必填

    說明

    type

    定位方式,固定為wifi

    imei

    手機IMEI號。

    用于提高定位精準度和排查問題。

    說明

    使用高德地圖時必填。若無,可以換成設備的唯一識別碼。

    idfa

    使用iOS系統手機的idfa。

    用于提高定位精準度和排查問題。

    smac

    手機MAC碼。

    用于提高定位精準度和排查問題。

    imsi

    移動用戶識別碼。

    用于提高定位精準度和排查問題。

    tel

    手機號碼。

    mmac

    已連接熱點的MAC信息。

    格式為:mac,signal,ssid

    示例:f0:7d:68:9e:7d:18,-41,TPLink

    說明

    建議填寫該參數,用于提高定位精準度。

    macs

    Wi-Fi AP列表。

    • MAC之間使用豎線(|)進行分隔。

    • 必須填寫2(含)~30 個以內的MAC信息,方可正常定位。

    • 不能包含移動Wi-Fi信息,否則會報錯。

  • 設備IP地址定位

    當設備發送的是IP地址信息時,下面是使用IPv4地址和IPv6地址定位時完整的HTTP Body示例。

    • 使用IPv4地址定位

      {
        "id": "123",
        "version": "1.0",
        "params": {
          "identifier": "Location.Position",
          "serviceParams": {
            "type":"ip",
            "ip": "10.1.1.1"
          }
        },
       "method": "_thing.service.post"
      }
    • 使用IPv6地址定位

      {
        "id": "123",
        "version": "1.0",
        "params": {
          "identifier": "Location.Position",
          "serviceParams": {
            "type":"ip",
            "ip": "2001:db8:1:1:1:1:1:1"
          }
        },
       "method": "_thing.service.post"
      }

    IP地址定位serviceParams參數說明如下:

    參數

    是否必填

    說明

    type

    定位方式為ip

    ip

    需要定位的IP地址,支持IPv4和IPv6格式。

返回數據

返回數據示例:

{
  "code": 0,
  "info": {
    "altitude": 0,
    "CoordinateSystem": 2,
    "latitude": 39.9****51,
    "longitude": 116.4***718
  },
  "message": "success"
}

參數說明如下:

參數

數據類型

說明

altitude

double

高度。

CoordinateSystem

enum

坐標類型。

  • 1:國際經緯度坐標系統(WGS_84)。

  • 2:由國測局制定,是對地理位置進行加密后的一種坐標系統(GCJ_02)。

latitude

double

緯度。

longitude

double

經度。

錯誤碼說明如下:

錯誤碼

說明

0

返回成功。

10000

未知錯誤。

10001

請求參數異常。檢查請求體中的如下參數(包括但不限于):

  • Topic格式是否為:sys/${ProductKey}/${DeviceName}/_thing/service/post

  • identifier是否為Location.Position

  • method是否為_thing.service.post

20001

無效token,認證失敗,請檢查token。

30002

平臺內部錯誤。

40000

請求次數過多,流控限制。

6731

定位失敗(網絡異常、系統異常、服務不可訪問等)。

6732

定位參數不合法。

6733

無法定位(提供的移動基站或WiFi AP數據不在定位數據庫中)。

6734

IPv6定位不支持。

6735

IP格式不正確。

6736

IP無法定位。

其他錯誤碼

查詢HTTP連接通信中的錯誤碼定義。

后續操作

設備上報位置信息后,您可調用QueryDevicePropertyData接口查詢設備的屬性GeoLocation)值,獲取設備的位置信息。

物聯網平臺云端API使用方法,請參見云端開發指南

更多獲取設備上報物模型數據的方法,請參見如何獲取設備上報的物模型數據