Seirbheis GSM Location de mhodalan SIM800x agus an obair aige leis an Yandex.Locator API

Seirbheis GSM Location de mhodalan SIM800x agus an obair aige leis an Yandex.Locator API

Gu mì-fhortanach, airson mòran de luchd-cleachdaidh mhodalan GSM, chuir Google bacadh air agus ghluais e gu bunait pàighte an API airson a bhith a 'dearbhadh àite stèidhichte air co-chomharran nan tùir cealla a tha follaiseach don mhodal. Air sgàth seo, air modalan sreath SIM2 air an toirt a-mach Fuasglaidhean gun uèir SIMCom, sguir gnìomhachd an àithne AT + CIPGSMLOC ag obair. San artaigil seo innsidh mi dhut mar as urrainn dhut an duilgheadas seo fhuasgladh le bhith a ’cleachdadh seirbheis coltach ri Yandex - Yandex.Locator.

Leigamaid sùil air mar a gheibh Yandex co-chomharran tùir cealla, is e am prìomh rud gun urrainn dhuinn an t-seirbheis an-asgaidh seo a chleachdadh agus an dàta a leanas fhaighinn: Latitude, Domhanfhad, Àirde, a bharrachd air a’ mhearachd tuairmseach airson gach paramadair. Is e prìomh adhbhar an artaigil oideachadh goirid a thoirt seachad mu bhith ag atharrachadh gu luath gu Yandex API, an àite an t-seirbheis nach eil ri fhaighinn bho Google tuilleadh.

Gu h-ìosal, mar eisimpleir, cha sheall sinn ach leud is domhan-leud suidheachadh a’ mhodal.

Mar sin leig leinn tòiseachadh

An toiseach feumaidh tu an aonta cleachdaiche a tha suidhichte aig: yandex.ru/legal/locator_api. Bu chòir aire shònraichte a thoirt do chlàs 3.6. an aonta cleachdaiche seo, a tha ag innse sin Bidh Yandex a’ gleidheadh ​​​​na còrach an API Yandex.Locator atharrachadh / a cheartachadh no ùrachadh aig àm sam bith, gun fios ro-làimh..

Rach gu seòladh yandex.ru/dev/locator/keys/get agus cuir do chunntas Yandex a chaidh a chruthachadh roimhe seo ris a’ bhuidheann leasachaidh. Leigidh na ceumannan seo leat iuchair fhaighinn airson faighinn chun t-seirbheis seo.

Seirbheis GSM Location de mhodalan SIM800x agus an obair aige leis an Yandex.Locator API
Sgrìobh sìos no sàbhail an iuchair a gheibh thu.

Às deidh na ceumannan seo a chrìochnachadh, bidh cothrom agad air an duilleag yandex.ru/dev/locator/doc/dg/api/geolocation-api-docpage far a bheil fiosrachadh bunaiteach mu dhòigh-obrach seirbheis Yandex.Locator air a thoirt seachad.

Gus iarrtas XML a ghineadh ann an cruth cURL gu seirbheisean Yandex.Locator, feumaidh tu fiosrachadh fhaighinn mu thùir cealla “ri fhaicinn” leis a’ mhodal:

  • còd dùthcha - còd dùthcha
  • Operaid - còd lìonra gluasadach
  • cellid - aithnichear cealla
  • lac - còd suidheachaidh

Gheibhear am fiosrachadh seo bhon mhodal le bhith a’ cur an àithne ‘AT + CNETSCAN’.

Fiosrachadh air fhaighinn bhon mhodal

Operator:"MegaFon",MCC:250,MNC:02,Rxlev:59,Cellid:2105,Arfcn:96,Lac:1E9E,Bsic:31<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:54,Cellid:2107,Arfcn:18,Lac:1E9E,Bsic:3A<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:45,Cellid:10A9,Arfcn:97,Lac:1E9E,Bsic:11<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:41,Cellid:2108,Arfcn:814,Lac:1E9E,Bsic:1F<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:43,Cellid:5100,Arfcn:13,Lac:1E9E,Bsic:2B<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:39,Cellid:5102,Arfcn:839,Lac:1E9E,Bsic:1A<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:38,Cellid:2106,Arfcn:104,Lac:1E9E,Bsic:0A<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:37,Cellid:0FE7,Arfcn:12,Lac:1E9E,Bsic:24<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:44,Cellid:14C8,Arfcn:91,Lac:1E9E,Bsic:24<CR><LF>
Operator:"MegaFon",MCC:250,MNC:02,Rxlev:37,Cellid:04B3,Arfcn:105,Lac:1E9E,Bsic:3A<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:47,Cellid:29A0,Arfcn:70,Lac:39BA,Bsic:09<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:43,Cellid:0FDD,Arfcn:590,Lac:39BA,Bsic:09<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:44,Cellid:29A1,Arfcn:84,Lac:39BA,Bsic:10<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:40,Cellid:8F95,Arfcn:81,Lac:39BA,Bsic:03<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:43,Cellid:0FDF,Arfcn:855,Lac:39BA,Bsic:24<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:37,Cellid:299C,Arfcn:851,Lac:39BA,Bsic:17<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:37,Cellid:0FDE,Arfcn:852,Lac:39BA,Bsic:1B<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:35,Cellid:299F,Arfcn:72,Lac:39BA,Bsic:10<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:33,Cellid:28A5,Arfcn:66,Lac:396D,Bsic:25<CR><LF>
Operator:"Bee Line GSM",MCC:250,MNC:99,Rxlev:33,Cellid:2A8F,Arfcn:71,Lac:39BA,Bsic:23<CR><LF>
Operator:"MOTIV",MCC:250,MNC:20,Rxlev:46,Cellid:39D2,Arfcn:865,Lac:4D0D,Bsic:14<CR><LF>
Operator:"MOTIV",MCC:250,MNC:20,Rxlev:36,Cellid:09EE,Arfcn:866,Lac:4D0D,Bsic:25<CR><LF>
Operator:"MOTIV",MCC:250,MNC:20,Rxlev:28,Cellid:09ED,Arfcn:869,Lac:4D0D,Bsic:22<CR><LF>
Operator:"MOTIV",MCC:250,MNC:20,Rxlev:28,Cellid:09EF,Arfcn:861,Lac:4D0D,Bsic:17<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:66,Cellid:58FE,Arfcn:1021,Lac:00EC,Bsic:0A<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:50,Cellid:58FD,Arfcn:1016,Lac:00EC,Bsic:08<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:49,Cellid:58FF,Arfcn:1023,Lac:00EC,Bsic:09<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:46,Cellid:F93B,Arfcn:59,Lac:00EC,Bsic:20<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:50,Cellid:381B,Arfcn:1020,Lac:00EC,Bsic:0A<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:37,Cellid:3819,Arfcn:42,Lac:00EC,Bsic:08<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:34,Cellid:4C0F,Arfcn:43,Lac:00EC,Bsic:0A<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:33,Cellid:0817,Arfcn:26,Lac:00EC,Bsic:27<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:34,Cellid:3A5D,Arfcn:1017,Lac:00E9,Bsic:34<CR><LF>
Operator:"MTS",MCC:250,MNC:01,Rxlev:33,Cellid:3D05,Arfcn:1018,Lac:00EC,Bsic:1F<CR><LF>

Tha e cudromach cuimhneachadh gum feum thu an dàta bho fhreagairt Cellid and Lac a’ mhodal a thionndadh bho hexadecimal gu deicheach.

A-nis feumaidh sinn dàta XML a ghineadh gus fios a chuir gu frithealaiche Yandex, a thèid a chur còmhla ann an aon eileamaid às deidh sin.

Clàr dàta

dàta
beachd

xml=<ya_lbs_request><common><version>1.0</version><api_key>

...
Bu chòir an iuchair 88-fhigearach a fhuaireadh bho Yandex a bhith ann

</api_key></common>
<gsm_cells>
<cell><countrycode>
250

Còd na Dùthcha (MCC)

</countrycode><operatorid>
2

Còd gnìomhaiche (MNC)

</operatorid><cellid>
8453

Cellid den chiad tùr bhon liosta a fhuaireadh bhon mhodal agus air a thionndadh bho àireamh le bonn 16 gu àireamh le bonn 10 (is e an luach a gheibhear bhon mhodal 2105)

</cellid><lac>
7838

Lac den chiad tùr, cuideachd air a thionndadh bho àireamh bonn 16 gu àireamh bonn 10 (is e an luach a gheibhear bhon mhodal 1E9E)

</lac></cell>
...

Faodar buidheann aonaichte leis an tag cealla ath-aithris cho tric ‘s a dh’ fheumar gus earbsachd àite sònraichte a mheudachadh

</gsm_cells>
<ip><address_v4>
10.137.92.60

Gheibhear an seòladh IP a chaidh a shònrachadh don mhodal leis an lìonra às deidh dha co-theacs GPRS fhosgladh le bhith a’ cur an àithne ‘AT + SAPBR = 2,1’ chun mhodal - faic gu h-ìosal

</address_v4></ip></ya_lbs_request>

Ginidh seo teachdaireachd XML 1304 caractar fada mar a leanas:

teachdaireachd

xml=<ya_lbs_request><common><version>1.0</version><api_key>{здесь необходимо указать свой ключ}</api_key></common><gsm_cells><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>8453</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>8455</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>4265</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>8456</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>20736</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>20738</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>8454</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>4071</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>5320</cellid><lac>7838</lac></cell><cell><countrycode>250</countrycode><operatorid>2</operatorid><cellid>1203</cellid><lac>7838</lac></cell></gsm_cells><ip><address_v4>10.137.92.60</address_v4></ip></ya_lbs_request>

Tha an teachdaireachd seo air a chruthachadh air bunait dàta air tùir cealla gnìomhaiche Megafon, faodar a chuir ris le dàta, a’ gabhail a-steach: air tùir eile a chithear don mhodal a fhuaireadh a’ cleachdadh an àithne ‘AT + CNETSCAN’ gus earbsachd nan co-chomharran a chaidh a thoirt a-mach àrdachadh.

Ag obair leis a’ mhodal agus a’ faighinn co-chomharran gnàthach

AT-log obrach leis a’ mhodal

>AT+SAPBR=3,1,”Contype”,”GPRS” // конфигурирование профиля доступа в Интернет
<OK
>AT+SAPBR=3,1,”APN”,”internet” // конфигурирование APN 
<OK
>AT+SAPBR=1,1 // запрос на открытие GPRS контекста
<OK // контекст открыт
>AT+SAPBR=2,1 // запрос текущего IP адреса присвоенного оператором сотовой связи
<+SAPBR: 1,1,”10.137.92.60” // данный IP адрес потребуется вставить в XML-сообщение
<
<OK
>AT+HTTPINIT
<OK
>AT+HTTPPARA=”CID”,1
<OK
>AT+HTTPPARA=”URL”,”http://api.lbs.yandex.net/geolocation”
<OK
>AT+HTTPDATA=1304,10000 // первое число – длина сформированного XML-сообщения
<DOWNLOAD // приглашение к вводу XML-сообщения
< // вводим сформированное нами XML-сообщение
<OK
>AT+HTTPACTION=1
<OK
<
<+HTTPACTION: 1,200,303 // 200 – сообщение отправлено, 303 – получено 303 байт данных
>AT+HTTPREAD=81,10
<+HTTPREAD: 10
<60.0330963 // широта на которой расположен модуль
<OK
>AT+HTTPREAD=116,10
<+HTTPREAD: 10
<30.2484303 // долгота на которой расположен модуль
>AT+HTTPTERM
<OK

Mar sin, fhuair sinn na co-chomharran gnàthach den mhodal: 60.0330963, 30.2484304.
Mar a bhios an àireamh de dhàta a thèid a chuir tro thùir cealla a’ dol am meud, meudaichidh neo-mhearachdachd dearbhadh àite a rèir co-rèireach.

Faodar fiosrachadh nas mionaidiche mu shusbaint an fhreagairt bhon t-seirbheis Yandex.Locator agus an taghadh den dàta a dh ’fheumas tu a leughadh aig a’ cheangal: yandex.ru/dev/locator/doc/dg/api/xml-reply-docpage, anns an roinn API-> XML-> Freagairt

co-dhùnadh

Tha mi an dòchas gum bi an stuth seo na chuideachadh math do luchd-leasachaidh. Tha mi deiseil airson do cheistean a fhreagairt anns na beachdan.

Source: www.habr.com

Cuir beachd ann