SIM800x မော်ဂျူးများ၏ GSM တည်နေရာဝန်ဆောင်မှုနှင့် ၎င်း၏ Yandex.Locator API နှင့် အလုပ်လုပ်သည်။

SIM800x မော်ဂျူးများ၏ GSM တည်နေရာဝန်ဆောင်မှုနှင့် ၎င်း၏ Yandex.Locator API နှင့် အလုပ်လုပ်သည်။

Google သည် ကံမကောင်းစွာဖြင့်၊ GSM module များ၏အသုံးပြုသူအများအပြားအတွက်၊ လွန်ခဲ့သော 2-3 လက module မှမြင်ရသောဆဲလ်တာဝါတိုင်များ၏သြဒိနိတ်များကိုအခြေခံ၍တည်နေရာသတ်မှတ်ခြင်းအတွက် API ကို အခကြေးငွေပေးချေသည့်အခြေခံသို့ လွှဲပြောင်းပေးခဲ့သည်။ ထို့အတွက်ကြောင့် SIM800 စီးရီးမော်ဂျူးများကို ထုတ်လုပ်ခဲ့သည်။ SIMCom ကြိုးမဲ့ဖြေရှင်းချက်AT+CIPGSMLOC ကွန်မန်း၏ လုပ်ဆောင်နိုင်စွမ်းသည် အလုပ်မလုပ်တော့ပါ။ ဤဆောင်းပါးတွင် Yandex မှပေးသော အလားတူဝန်ဆောင်မှုကို အသုံးပြုခြင်းဖြင့် ဤပြဿနာကို သင်မည်သို့ဖြေရှင်းနိုင်သည်ကို ကျွန်ုပ်ပြောပြပါမည်။ Yandex.Locator.

Yandex သည် ဆဲလ်တာဝါတိုင်များ၏ သြဒီနိတ်များကို မည်သို့လက်ခံသည်ကို ကျော်လိုက်ကြပါစို့၊ အဓိကအချက်မှာ ကျွန်ုပ်တို့သည် ဤအခမဲ့ဝန်ဆောင်မှုကို အသုံးပြုနိုင်ပြီး အောက်ပါဒေတာများကို ရရှိနိုင်သည်- လတ္တီတွဒ်၊ လောင်ဂျီကျု၊ အမြင့်ပေနှင့် ကန့်သတ်ချက်တစ်ခုစီအတွက် အနီးစပ်ဆုံး အမှားအယွင်းများဖြစ်သည်။ ဆောင်းပါး၏အဓိကရည်ရွယ်ချက်မှာ Google မှမရနိုင်တော့သောဝန်ဆောင်မှုအစား Yandex API သို့ လျင်မြန်စွာပြောင်းလဲခြင်းဆိုင်ရာ သင်ခန်းစာတိုတိုကို ပေးရန်ဖြစ်သည်။

အောက်တွင် ဥပမာအနေဖြင့်၊ ကျွန်ုပ်တို့သည် module တည်နေရာ၏ လတ္တီတွဒ်နှင့် လောင်ဂျီတွဒ်တို့ကိုသာ ပြပါမည်။

ဒါဆို စလိုက်ရအောင်

ပထမဦးစွာ သင်သည် အသုံးပြုသူသဘောတူညီချက်ကို ဖတ်ရန် လိုအပ်သည်- yandex.ru/legal/locator_api. အပိုဒ် ၃.၆ ကို အထူးဂရုပြုသင့်သည်။ ဤအသုံးပြုသူသဘောတူညီချက်၊ ၎င်းကိုဖော်ပြထားသည်။ Yandex သည် ကြိုတင်သတိပေးခြင်းမရှိဘဲ Yandex.Locator API ကို အချိန်မရွေး ပြောင်းလဲ/ပြင်ဆင်ရန် သို့မဟုတ် အပ်ဒိတ်လုပ်ပိုင်ခွင့်ကို လက်ဝယ်ရှိပါသည်။.

လိပ်စာသို့သွားပါ။ yandex.ru/dev/locator/keys/get သင်၏ယခင်ဖန်တီးထားသော Yandex အကောင့်ကို ဖွံ့ဖြိုးတိုးတက်ရေးအုပ်စုသို့ ထည့်ပါ။ ဤအဆင့်များသည် ဤဝန်ဆောင်မှုကိုဝင်ရောက်ရန် သော့တစ်ခုရရှိရန် သင့်အားခွင့်ပြုမည်ဖြစ်ပါသည်။

SIM800x မော်ဂျူးများ၏ GSM တည်နေရာဝန်ဆောင်မှုနှင့် ၎င်း၏ Yandex.Locator API နှင့် အလုပ်လုပ်သည်။
သင်လက်ခံရရှိသောသော့ကို ချရေးပါ သို့မဟုတ် အခြားနည်းဖြင့် သိမ်းဆည်းပါ။

ဤအဆင့်များပြီးပါက၊ သင်သည် စာမျက်နှာသို့ ဝင်ရောက်နိုင်မည်ဖြစ်သည်။ yandex.ru/dev/locator/doc/dg/api/geolocation-api-docpage Yandex.Locator ၀ န်ဆောင်မှု၏လည်ပတ်မှုယန္တရားနှင့်ပတ်သက်သောအခြေခံအချက်အလက်များကိုပေးသည့်နေရာတွင်။

Yandex.Locator ဝန်ဆောင်မှုများသို့ cURL ဖော်မတ်ဖြင့် XML တောင်းဆိုချက်တစ်ခုကို ထုတ်ပေးရန်အတွက်၊ သင်သည် ဆဲလ်တာဝါတိုင်များရှိ အချက်အလက်များကို မော်ဂျူးမှ "မြင်နိုင်သည်" ကို ရယူရန် လိုအပ်သည်-

  • countrycode – နိုင်ငံကုဒ်
  • operatorid – မိုဘိုင်းကွန်ရက်ကုဒ်
  • cellid - ဆဲလ်အမှတ်အသား
  • lac – တည်နေရာကုဒ်

'AT+CNETSCAN' အမိန့်ကို ပေးပို့ခြင်းဖြင့် ဤအချက်အလက်ကို module မှ ရယူနိုင်ပါသည်။

module မှရရှိသောအချက်အလက်များ

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>

နောက်ပိုင်းတွင် သင်သည် module ၏ Cellid နှင့် Lac တုံ့ပြန်မှုမှ ဒေတာကို hexadecimal မှ decimal သို့ ပြောင်းရန် အရေးကြီးကြောင်း သတိပြုရန် အရေးကြီးပါသည်။

ယခု ကျွန်ုပ်တို့သည် Yandex ဆာဗာကို ဆက်သွယ်ရန်အတွက် XML ဒေတာကို ထုတ်လုပ်ရန် လိုအပ်ပြီး ၎င်းသည် နောက်ပိုင်းတွင် ဒြပ်စင်တစ်ခုအဖြစ် ပေါင်းစပ်သွားမည်ဖြစ်သည်။

ဒေတာဇယား

ဒေတာ
မှတ်ချက်

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

...
၎င်းတွင် Yandex မှရရှိသော 88 ဂဏန်းသော့ပါရှိသင့်သည်။

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

နိုင်ငံကုဒ် (MCC)

</countrycode><operatorid>
2

အော်ပရေတာကုဒ် (MNC)

</operatorid><cellid>
8453

module မှလက်ခံရရှိသောစာရင်းမှပထမဆုံးမျှော်စင်၏ cellid နှင့် base 16 ပါသောနံပါတ်တစ်ခုမှ base 10 နံပါတ်တစ်ခုသို့ပြောင်းလဲခဲ့သည် ( module မှရရှိသောတန်ဖိုးသည် 2105 ဖြစ်သည်)

</cellid><lac>
7838

ပထမမျှော်စင်၏ Lac သည် အခြေခံ 16 နံပါတ်မှ အခြေခံ 10 နံပါတ်သို့ ပြောင်းခဲ့သည် ( module မှရရှိသောတန်ဖိုးမှာ 1E9E ဖြစ်သည်)

</lac></cell>
...

သီးခြားတည်နေရာတစ်ခု၏ ယုံကြည်စိတ်ချရမှုကို တိုးမြင့်ရန်အတွက် ဆဲလ်တဂ်ဖြင့် ပေါင်းစည်းထားသော အဖွဲ့တစ်ဖွဲ့ကို လိုအပ်သလို အကြိမ်များစွာ ထပ်လုပ်နိုင်ပါသည်။

</gsm_cells>
<ip><address_v4>
10.137.92.60

GPRS အကြောင်းအရာကို ဖွင့်ပြီးနောက် ကွန်ရက်မှ မော်ဂျူးအတွက် သတ်မှတ်ထားသော IP လိပ်စာကို မော်ဂျူးသို့ 'AT+SAPBR=2,1' ဟူသော အမိန့်ကို ပေးပို့ခြင်းဖြင့် ရရှိနိုင်သည် - အောက်တွင် ကြည့်ပါ

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

၎င်းသည် အောက်ပါအတိုင်းရှည်လျားသော XML မက်ဆေ့ဂျ် 1304 စာလုံးကို ထုတ်ပေးလိမ့်မည်-

မက်ဆေ့ခ်ျကို

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>

Megafon အော်ပရေတာ၏ဆဲလ်တာဝါတိုင်များပေါ်ရှိဒေတာများကိုအခြေခံ၍ ဤမက်ဆေ့ချ်ကိုထုတ်ပေးသည်၊ ၎င်းကိုဒေတာအပါအဝင်၊ ဖြည့်စွက်နိုင်သည်- ထုတ်ပေးထားသော သြဒီနိတ်များ၏ ယုံကြည်စိတ်ချရမှုကို တိုးမြင့်လာစေရန်အတွက် 'AT+CNETSCAN' ညွှန်ကြားချက်ကို အသုံးပြု၍ လက်ခံရရှိသည့် အခြားသော မော်ဂျူး-မြင်ရသော တာဝါတိုင်များအတွက်။

module နှင့်အလုပ်လုပ်ပြီးလက်ရှိသြဒိနိတ်များကိုရယူပါ။

module နှင့်အတူအလုပ်လုပ်၏ AT-log

>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

ထို့ကြောင့် module ၏လက်ရှိသြဒီနိတ်များကိုလက်ခံရရှိ: 60.0330963, 30.2484304.
ဆဲလ်တာဝါတိုင်များမှ ပေးပို့သည့် ဒေတာအရေအတွက် တိုးလာသည်နှင့်အမျှ တည်နေရာသတ်မှတ်ခြင်း၏ တိကျမှုသည် အချိုးကျ တိုးလာမည်ဖြစ်သည်။

Yandex.Locator ဝန်ဆောင်မှုမှ တုံ့ပြန်မှုအကြောင်းအရာနှင့် သင်လိုအပ်သော ဒေတာရွေးချယ်မှုဆိုင်ရာ အသေးစိတ်အချက်အလက်များကို လင့်ခ်တွင် ဖတ်ရှုနိုင်သည်- yandex.ru/dev/locator/doc/dg/api/xml-reply-docpageAPI->XML->တုံ့ပြန်မှုကဏ္ဍတွင်၊

ကောက်ချက်

ဤအကြောင်းအရာသည် developer များအတွက် ကောင်းသောအကူအညီဖြစ်မည်ဟု မျှော်လင့်ပါသည်။ မင်းရဲ့မေးခွန်းတွေကို comment မှာဖြေဖို့ ငါအဆင်သင့်ပါပဲ။

source: www.habr.com

မှတ်ချက် Add