Sonata - uwar garken samar da SIP

Ban san abin da zan kwatanta tanadi da shi ba. Wataƙila tare da cat? Yana da alama zai yiwu ba tare da shi ba, amma tare da shi yana da ɗan kyau. Musamman idan yana aiki))

Tsarin matsalar:

  1. Ina so in saita wayoyin SIP da sauri, cikin sauƙi, da aminci. Lokacin shigar da waya, da ma fiye da haka lokacin sake saita ta.
  2. Yawancin dillalai suna da nasu tsarin saiti, nasu abubuwan amfani don samar da saiti, da nasu hanyoyin kare tsarin saiti. Kuma ba na son yin hulɗa da kowa da kowa.
  3. Yawancin hanyoyin samar da kayayyaki, a) suna mai da hankali kan mai siyarwa ɗaya ko tsarin tarho ɗaya, b) suna da wahalar aiwatarwa, yawancin rubutun, sigogi, brrr ...

Game da batu 3, zan yi sharhi cewa akwai kyakkyawan tsarin samar da kayayyaki don FreePBX, don FusionPBX, za Kazo, inda samfuran wayoyi daga dillalai daban-daban ke samuwa a bainar jama'a. Akwai hanyoyin kasuwanci inda zaku iya daidaita aikin wayoyi daga masana'anta daban-daban a cikin tsarin samarwa, misali, Yeastar PBX.

Har ila yau Habré yana cike da girke-girke kan yadda ake saita na'urori daga masu siyarwa daban-daban: sau, два. Amma kamar yadda suke faɗa, duk tsarin suna da aibi mai mutuwa. Don haka za mu yi namu babur.

tsarin ku

Kamar yadda suke faɗa a xkcd, idan ba kwa son yin mu'amala da tsari guda 14 - zo da 15th. Don haka, muna amfani da saitunan gabaɗaya don kowace waya kuma muna yin namu tsarin json config.

Wani abu kamar haka:

{
   "key": "sdgjdeu9443908",
   "token": "590sfdsf8u984",
   "model": "gxp1620",
   "vendor": "grandstream",
   "mac": "001565113af8",
   "timezone_offset": "GMT+03",
   "ntp_server": "pool.ntp.org",
   "status": true,
   "accounts": [
      {
         "name": "Мобилон",
         "line": 1,
         "sip_register": "sip.mobilonsip.ru",
         "sip_name": "sip102",
         "sip_user": "sip102",
         "sip_password": "4321",
         "sip_auth": "sip102"
      }
   ]
}

Don haka, a kowace waya kuna buƙatar saita lokacin gida da layukan SIP. Komai yana da sauki a nan. Kuna iya ganin ƙarin misalai a nan.

tanadin uwar garken ku

A cikin littattafan masana'anta yawanci akwai wurin da ya ce: ɗauki csv, rubuta adireshin shiga-password-mac-address, samar da fayiloli ta amfani da rubutun mallakar mu, sanya su ƙarƙashin sabar gidan yanar gizon Apache kuma komai zai yi kyau.

Sakin layi na gaba na jagorar yawanci yana gaya muku cewa zaku iya ɓoye fayil ɗin daidaitawar da aka samar.

Amma waɗannan duk kayan gargajiya ne. Hanyar zamani tare da santsi da Twitter ya ce kuna buƙatar yin sabar gidan yanar gizon da aka shirya wanda ba zai zama mai ƙarfi kamar Apache ba, amma zai yi ƙaramin abu ɗaya kawai. Ƙirƙira kuma aika saiti ta amfani da hanyar haɗi.

Bari mu tsaya a nan kuma mu tuna cewa kusan duk wayoyin SIP yanzu suna iya karɓar saiti ta hanyar http/https, don haka ba ma la'akari da wasu aiwatarwa (ftp, tftp, ftps). Sannan, kowace waya ta san adireshin MAC nata. Saboda haka, za mu yi biyu links: daya na sirri - dangane da na'urar key, na biyu general, wanda ke aiki ta amfani da hade da na kowa alama da MAC address.

Hakanan, ba zan zauna akan sifili-config ba, i.e. saita wayar daga karce, watau. kun saka shi a cikin hanyar sadarwar kuma ya fara aiki. A'a, a cikin yanayi na, kun shigar da shi a cikin hanyar sadarwa, yi saitin farko (saita shi don karɓar tsarin daga uwar garken tanadi), sannan ku sha pina colada kuma ku sake saita wayar kamar yadda ake buƙata ta hanyar samarwa. Zabin Rarraba 66 shine alhakin uwar garken DHCP.

Af, na gaji gaba daya da faɗin "bayarwa", don haka an taƙaita kalmar zuwa "sabis", don Allah kar a kora ni.

Kuma wani abu guda: uwar garken samar da mu bashi da UI, watau. mai amfani dubawa. Wataƙila, a yanzu, amma ban tabbata ba, saboda ... Bana bukata. Amma akwai API don adanawa / share saituna, samun jerin masu siyarwa masu goyan baya, samfura, an kwatanta komai bisa ga canons na ƙayyadaddun swagger.

Me yasa API kuma ba UI ba? Domin Na riga na mallaki tsarin wayar kaina, sannan ina da tushen bayanan shaidar, inda kawai nake buƙatar ɗaukar wannan bayanan, in tattara json ɗin da ake buƙata kuma in buga su akan uwar garken samarwa. Kuma uwar garken tanadi, bisa ga ka'idojin da aka kayyade a cikin json fayil, za su ba wa na'urar da ake buƙata tsarinta ko kuma ba za ta ba ta ba idan na'urar ba ta daidai ba ko kuma ba ta cika ka'idodin da aka ƙayyade a cikin wannan json ba.

Sonata - uwar garken samar da SIP

Wannan shine yadda microservice na samarwa ya kasance. An kira sonata, akwai lambar tushe akan GitHub, akwai kuma shirin docker image, docker misali a nan.

Babban fasali:

  • a kowane hali, iyakance damar yin amfani da saitin ta lokaci, ta tsohuwa mintuna 10. Idan kana son sake samun saitin saitin, sake buga tsarin.

  • tsari ɗaya don duk dillalai, an cire duk gyare-gyare a cikin sonata, zaku aika daidaitattun json, saita kowane kayan aiki da ke akwai.

  • Ana shigar da duk saitunan da aka ba wa na'urori, ana iya duba duk wuraren matsala a cikin log ɗin kuma ana iya ganin kurakurai

  • Yana yiwuwa a yi amfani da mahaɗin gama gari guda ɗaya tare da alama; kowace waya tana karɓar nata tsarin ta hanyar tantance adireshin mac. Ko hanyar haɗin kai ta hanyar maɓalli.

  • APIs don gudanarwa (gudanarwa) da samar da saiti zuwa wayoyi (samarwa) an raba su ta tashoshin jiragen ruwa.

  • Gwaji. Yana da mahimmanci a gare ni in gyara tsarin tsarin da aka bayar kuma in rufe duk yanayin da aka saba na ba da saiti tare da gwaje-gwaje. Don haka duk wannan yana aiki a fili.

Fursunoni:

Ya zuwa yanzu, ba a amfani da ɓoyewa ta kowace hanya a cikin Sonata. Wadancan. Kuna iya fara amfani da https ta hanyar sanya nginx a gaban sonata misali. Amma har yanzu ba a yi amfani da hanyoyin mallakar mallaka ba. Me yasa? Aikin har yanzu matashi ne, ya kaddamar da na'urorinsa dari na farko. Kuma, ba shakka, Ina tattara ra'ayoyi da ra'ayoyi. Bugu da ari, don tabbatar da duk abin da yake amintacce, don haka ba za a iya yin amfani da saitunan akan hanyar sadarwa ba, tabbas yana da kyau a damu da maɓallin ɓoyewa, tls da hedgehog tare da su, amma wannan zai zama ci gaba.

Rashin UI. Wataƙila wannan babban hasara ne ga mai amfani na ƙarshe, amma ga mai gudanar da tsarin, kayan aikin na'ura mai kwakwalwa yana da mahimmanci fiye da cikakken aikace-aikacen. Akwai shirye-shiryen yin kayan aikin wasan bidiyo, amma ban tabbata ko ana buƙata ba?

Mene ne a karshen?

Ƙaramin sabar gidan yanar gizo mai sauƙi don samar da samfuran waya da yawa tare da API don gudanarwa.

Har yanzu, ta yaya wannan zai yi aiki?

  1. Sanya sonata.
  2. Muna ƙirƙirar tsarin json kuma mu buga shi a cikin sonata.
  3. Sa'an nan kuma mu sami hanyar haɗi na tanadi daga sonata.
  4. Sa'an nan kuma mu nuna wannan mahada a cikin tarho.
  5. Na'urar tana loda saitin

Akwai matakai biyu kacal a cikin aiki na gaba:

  1. Muna ƙirƙirar tsarin json kuma mu buga shi a cikin sonata
  2. Na'urar tana loda saitin

Wadanne wayoyi ne za a tallata?

Dillalai Grandstream, Fanvil, Yealink. Saitunan da ke cikin mai siyarwa sun fi ko žasa iri ɗaya, amma suna iya bambanta dangane da firmware - yana iya zama dole don gwada ƙari.

Wadanne dokoki za ku iya kafa?

By lokaci. Kuna iya ƙididdige lokacin har sai lokacin da tsarin zai kasance.
Da adireshin mac. Lokacin ƙaddamar da saitin ta hanyar haɗin kai na na'urar, adireshin mac ɗin kuma za a bincika.
Ta hanyar ip. Ta hanyar adireshin IP daga inda aka yi buƙatar.

Yadda ake hulɗa da sonata?

Ta API, yin buƙatun http. API ɗin zai kasance a cikin shigarwar ku. Domin API ɗin yana goyan bayan ƙayyadaddun swagger, zaku iya amfani da su online mai amfani don buƙatun gwaji zuwa API.

Yayi, mai girma. Cool kaya, yaya game da gwada shi?

Hanya mafi sauƙi ita ce a tura hoton docker bisa ma'ajiya sonata-sample. Wurin ajiya ya ƙunshi umarnin shigarwa.

Idan na san node.js fa?

Idan kuna da gogewa ta amfani da JavaScript, to zaku iya gano yadda komai ke aiki nan da nan.

Shin za a sami ci gaban Sonata?

A wani bangare na cimma burina. Ƙarin ci gaba al'amari ne na ayyuka na akan batun saitin waya ta atomatik. Har ila yau, akwai damar da za a fadada saitunan don saita maɓallin waya, ƙara tanadin littafin adireshi, watakila wani abu dabam, rubuta a cikin sharhi.

Takaitawa da godiya

Zan yi farin cikin samun ingantattun shawarwari / ra'ayoyi / sharhi da tambayoyi, saboda ... Yana iya yiwuwa ya kwatanta wani abu da rashin fahimta.

Ina kuma nuna godiyata ga duk abokan aikina da suka taimaka, ba da shawara, gwadawa, da bayar da gudummawar wayoyi don gwaje-gwaje. A hakikanin gaskiya, mutane da yawa waɗanda na yi magana da su a wurin aiki suna shiga cikin aikin zuwa digiri daban-daban, AsterConfe, a cikin hira da imel. Godiya ga ra'ayoyi da tunani.

source: www.habr.com

Add a comment