ΠΠ΅ Π·Π½Π°Ρ Ρ ΡΠ΅ΠΌ ΡΡΠ°Π²Π½ΠΈΡΡ provisioning. ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ Ρ ΠΊΠΎΡΠΎΠΌ? ΠΡΠΎΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ, Π½ΠΎ Ρ Π½ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΡΡΠ΅. ΠΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ))
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
- Π₯ΠΎΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ SIP-ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ Π±ΡΡΡΡΠΎ, ΠΏΡΠΎΡΡΠΎ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ. ΠΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΈ ΡΠΆ ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.
- ΠΠ½ΠΎΠ³ΠΈΠ΅ Π²Π΅Π½Π΄ΠΎΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΡΠΌΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΠΎΠ², ΡΠ²ΠΎΠΈ ΡΡΠΈΠ»ΠΈΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΠΎΠ², ΡΠ²ΠΎΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΠΎΠ². Π ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π½Π΅ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠ΅ΡΡΡ.
- ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎ provisioning, Π°) ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Π΅Π½Π΄ΠΎΡΠ° ΠΈΠ»ΠΈ ΠΎΠ΄Π½Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, Π±) Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π³ΡΠΎΠΌΠΎΠ·Π΄ΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ, ΠΊΡΡΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ², ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π±Ρ-Ρ…
ΠΠΎ ΠΏΡΠ½ΠΊΡΡ 3 ΡΠ΄Π΅Π»Π°Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΡΡΠΎ Π΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π°
ΠΠ° Π₯Π°Π±ΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π½ΠΎ ΡΠ΅ΡΠ΅ΠΏΡΠΎΠ² ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
Π²Π΅Π½Π΄ΠΎΡΠΎΠ²:
ΡΠ²ΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ
ΠΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ Π² xkcd, Π½Π΅ Ρ
ΠΎΡΠ΅ΡΡ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Ρ 14 ΡΠΎΡΠΌΠ°ΡΠ°ΠΌΠΈ β
ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ:
{
"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"
}
]
}
Π’Π°ΠΊ Π²ΠΎΡ, Π² Π»ΡΠ±ΠΎΠΌ ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅ Π½Π΅ΠΎΠ±Ρ
Π΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, sip-Π»ΠΈΠ½ΠΈΠΈ. Π’ΡΡ Π²ΡΠ΅ ΠΏΡΠΎΡΡΠΎ. ΠΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ
cΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π°
Π ΠΌΠ°Π½ΡΠ°Π»Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π΅ΡΡΡ ΠΏΡΠ½ΠΊΡ, Π³Π΄Π΅ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ: Π²ΠΎΠ·ΡΠΌΠΈΡΠ΅ csv, Π·Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΠ°ΠΌ Π»ΠΎΠ³ΠΈΠ½-ΠΏΠ°ΡΠΎΠ»Ρ-ΠΌΠ°ΠΊ-Π°Π΄ΡΠ΅Ρ, Π½Π°ΡΠΈΠΌ ΡΠΈΡΠΌΠ΅Π½Π½ΡΠΌ ΡΠΊΡΠΈΠΏΡΠΎΠΌ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΈΠΊΠΈ, ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅ ΠΈΡ ΠΏΠΎΠ΄ Π²Π΅Π±ΡΠ΅ΡΠ²Π΅Ρ Apache ΠΈ Π±ΡΠ΄Π΅Ρ Ρ ΠΎΡΠΎΡΠΎ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠ½ΠΊΡΠ΅ ΠΌΠ°Π½ΡΠ°Π»Π° ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΡΠΎ Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ»ΠΈΠΊ ΠΊΠΎΠ½ΡΠΈΠ³Π°.
ΠΠΎ ΡΡΠΎ Π²ΡΠ΅ ΠΊΠ»Π°ΡΡΠΈΠΊΠ°. Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠΎ ΡΠΌΡΠ·ΠΈ ΠΈ ΡΠ²ΠΈΡΡΠ΅ΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ Π²Π΅Π±ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠ°ΠΊΠΎΠΉ ΠΌΠΎΡΠ½ΡΠΉ ΠΊΠ°ΠΊ Apache, Π° Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΎΠ΅ Π΄Π΅Π»ΠΎ. Π€ΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΡΠ΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.
Π’ΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΡΡ ΠΈ Π²ΡΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ SIP-ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ ΡΠ΅ΠΉΡΠ°Ρ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ ΠΏΠΎ http/https, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠ½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ (ftp, tftp, ftps) ΠΌΡ Π½Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ. ΠΠ°ΡΠ΅ΠΌ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π·Π½Π°Π΅Ρ ΡΠ²ΠΎΠΉ ΠΌΠ°ΠΊ-Π°Π΄ΡΠ΅Ρ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ ΡΠ΄Π΅Π»Π°Π΅ΠΌ Π΄Π²Π΅ ΡΡΡΠ»ΠΊΠΈ: ΠΎΠ΄Π½Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½Π°Ρ β ΠΏΠΎ ΠΊΠ»ΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π²ΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ°Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΠ²ΡΠ·ΠΊΠ΅ ΠΎΠ±ΡΠΈΠΉ ΡΠΎΠΊΠ΅Π½ ΠΈ ΠΌΠ°ΠΊ-Π°Π΄ΡΠ΅Ρ.
Π’Π°ΠΊΠΆΠ΅ Ρ Π½Π΅ Π±ΡΠ΄Ρ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π° zero-config’Π΅, Ρ.Π΅. Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° «Ρ Π½ΡΠ»Ρ», Ρ.Π΅. Π²Ρ Π²ΠΎΡΠΊΠ½ΡΠ»ΠΈ Π΅Π³ΠΎ Π² ΡΠ΅ΡΡ ΠΈ ΠΎΠ½ Ρ ΠΎΠΏ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π». ΠΠ΅Ρ, Π² ΠΌΠΎΠ΅ΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π²Ρ Π²ΠΎΡΠΊΠ½ΡΠ»ΠΈ Π² ΡΠ΅ΡΡ, ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ (Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π°), Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠ΅ΡΠ΅ ΠΏΠΈΠ½ΠΎΠΊΠΎΠ»Π°Π΄Ρ ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ²ΠΈΠΆΠ½. Π Π°Π·Π΄Π°Π²Π°ΡΡ Option 66 β ΡΡΠΎ Π·Π°Π±ΠΎΡΠ° DHCP-ΡΠ΅ΡΠ²Π΅ΡΠ°.
ΠΡΡΠ°ΡΠΈ, ΡΠΎΠ²ΡΠ΅ΠΌ Π·Π°ΠΌΡΡΠΈΠ»ΡΡ Π³ΠΎΠ²ΠΎΡΠΈΡΡ «provisioning», ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ»ΠΎΠ²ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΠ»ΠΎΡΡ Π΄ΠΎ «ΠΏΡΠΎΠ²ΠΈΠΆΠ½», Π½Π΅ ΠΏΠΈΠ½Π°ΠΉΡΠ΅, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π½ΠΎΠ³Π°ΠΌΠΈ.
Π Π΅ΡΠ΅: Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π° Π½Π΅Ρ UI, Ρ.Π΅. ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΠΊΠ°, Π½ΠΎ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, Ρ.ΠΊ. ΠΌΠ½Π΅ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΠ°ΡΠΎ Π΅ΡΡΡ API Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ/ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π²Π΅Π½Π΄ΠΎΡΠΎΠ², ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π²ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΠΏΠΎ ΠΊΠ°Π½ΠΎΠ½Π°ΠΌ swagger ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠΎΡΠ΅ΠΌΡ API, Π° Π½Π΅ UI? Π’.ΠΊ. Ρ ΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΠ²ΠΎΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠΎ, Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ , Π³Π΄Π΅ ΠΌΠ½Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π·ΡΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅, ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°ΡΡ Π½ΡΠΆΠ½ΡΠΉ json ΠΈ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π°. Π ΡΠΆΠ΅ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π° ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π² json-ΡΠ°ΠΉΠ»Π΅, Π²ΡΠ΄Π°ΡΡ Π½ΡΠΆΠ½ΠΎΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈΠ»ΠΈ Π½Π΅ Π²ΡΠ΄Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π΅ ΡΠΎ, ΠΈΠ»ΠΈ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΠ°ΠΊΠΆΠ΅ Π² ΡΡΠΎΠΌ json’Π΅.
ΠΠΎΡ ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π° ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ. ΠΠ°Π·ΡΠ²Π°Π΅ΡΡΡ
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠΈΡΠΊΠΈ:
-
Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ³Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 10 ΠΌΠΈΠ½ΡΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π΅ΡΠ΅ ΡΠ°Π· ΠΊΠΎΠ½ΡΠΈΠ³ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ β ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π²Π½ΠΎΠ²Ρ.
-
ΠΎΠ΄ΠΈΠ½ ΡΠΎΡΠΌΠ°Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ Π²Π΅Π½Π΄ΠΎΡΠΎΠ², Π²ΡΡ ΠΏΠΎΠ΄ΡΡΡΠΎΠΉΠΊΠ° ΡΠ±ΡΠ°Π½Π° Π² sonata, ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ json, Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡ Π»ΡΠ±ΠΎΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠ΅ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅.
-
Π²ΡΠ΅ Π²ΡΠ΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌ Π»ΠΎΠ³ΠΈΡΡΡΡΡΡ, Π²ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² Π»ΠΎΠ³Π΅ ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ
-
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΉ ΡΡΡΠ»ΠΊΠΈ Ρ token, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³, ΡΠΊΠ°Π·Π°Π² mac-Π°Π΄ΡΠ΅Ρ. ΠΠΈΠ±ΠΎ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΡΡΠ»ΠΊΡ ΠΏΠΎ key.
-
API Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (management) ΠΈ Π²ΡΠ΄Π°ΡΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΠΎΠ² ΡΠ΅Π»Π΅ΡΠΎΠ½Π°ΠΌ (provisioning) ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ ΠΏΠΎ ΠΏΠΎΡΡΠ°ΠΌ
-
Π’Π΅ΡΡΡ. ΠΠ»Ρ ΠΌΠ΅Π½Ρ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΠΌΠ°Ρ Π²ΡΠ΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³Π° ΠΈ Π²ΡΠ΅ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π²ΡΠ΄Π°ΡΠΈ ΠΊΠΎΠ½ΡΠΈΠ³Π° ΠΏΠΎΠΊΡΡΠ²Π°ΡΡ ΡΠ΅ΡΡΠ°ΠΌΠΈ. Π§ΡΠΎΠ±Ρ ΡΡΠΎ Π²ΡΠ΅ ΡΠ΅ΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ.
ΠΠΈΠ½ΡΡΡ:
ΠΠΎΠΊΠ° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΌΠΊΠ°Ρ sonata. Π’.Π΅. Π²Ρ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ https, ΠΏΠΎΡΡΠ°Π²ΠΈΠ² ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, nginx, ΠΏΠ΅ΡΠ΅Π΄ sonata. ΠΠΎ Π²ΠΎΡ ΡΠΈΡΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ° Π΅ΡΠ΅ Π½Π΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Ρ. ΠΠΎΡΠ΅ΠΌΡ? ΠΡΠΎΠ΅ΠΊΡ Π΅ΡΠ΅ ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ, Π·Π°ΠΏΡΠΎΠ²ΠΈΠΆΠ½ΠΈΠ» ΡΠ²ΠΎΡ Π΅Π΄Π²Π° Π»ΠΈ ΠΏΠ΅ΡΠ²ΡΡ ΡΠΎΡΠ½Ρ ΡΡΡΡΠΎΠΉΡΡΠ². Π, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠΎΠ±ΠΈΡΠ°Ρ ΠΈΠ΄Π΅ΠΈ, ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ. ΠΠ°Π»Π΅Π΅, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ»ΠΎ ΠΏΠΎΡΠ½ΠΈΡΠ°ΡΡ Π² ΡΠ΅ΡΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠΎΠΈΡ Π·Π°ΠΌΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° ΠΊΠ»ΡΡΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, tls ΠΈ Π΅ΠΆΠ΅ Ρ Π½ΠΈΠΌΠΈ, Π½ΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ UI. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠΈΠ½ΡΡ Π΄Π»Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½ΠΎ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΡΠΊΠΎΡΠ΅Π΅ Π²Π°ΠΆΠ½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ°, ΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π‘Π΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡΡ Π±ΡΠ»ΠΎ Π² ΠΏΠ»Π°Π½Π°Ρ , Π½ΠΎ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½ Π½ΡΠΆΠ½Π° Π»ΠΈ ΠΎΠ½Π°?
Π§ΡΠΎ Π² ΠΈΡΠΎΠ³Π΅?
ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² Ρ API Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
ΠΡΠ΅ ΡΠ°Π·, ΠΊΠ°ΠΊ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ?
- Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ sonata.
- Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ json-ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ Π΅Π³ΠΎ Π² sonata.
- ΠΠ°ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΡ sonata ΡΡΡΠ»ΠΊΡ Π΄Π»Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½Π°.
- ΠΠ°ΡΠ΅ΠΌ ΡΡΡ ΡΡΡΠ»ΠΊΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π² ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΠΎΠΌ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ΅.
- ΠΠΏΠΏΠ°ΡΠ°Ρ Π·Π°ΡΡΠ³ΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠΈΠ³
Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° ΡΠ°Π³Π°:
- Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ json-ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ Π΅Π³ΠΎ Π² sonata
- ΠΠΏΠΏΠ°ΡΠ°Ρ Π·Π°ΡΡΠ³ΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠΈΠ³
ΠΠ°ΠΊΠΈΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ ΠΏΡΠΎΠ²ΠΈΠΆΠ½ΡΡΡΡ?
ΠΠ΅Π½Π΄ΠΎΡΡ Grandstream, Fanvil, Yealink. ΠΠΎΠ½ΡΠΈΠ³ΠΈ Π² ΡΠ°ΠΌΠΊΠ°Ρ Π²Π΅Π½Π΄ΠΎΡΠ° Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅, Π½ΠΎ ΠΌΠΎΠ³ΡΡ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠ°ΠΊΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ?
ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π²ΡΠ΅ΠΌΡ, Π΄ΠΎ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ.
ΠΠΎ mac-Π°Π΄ΡΠ΅ΡΡ. ΠΡΠΈ ΠΎΡΠ΄Π°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³Π° ΠΏΠΎ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ mac-Π°Π΄ΡΠ΅Ρ.
ΠΠΎ ip. ΠΠΎ ip-Π°Π΄ΡΠ΅ΡΡ, ΠΎΡΠΊΡΠ΄Π° ΡΠ΄Π΅Π»Π°Π½ Π·Π°ΠΏΡΠΎΡ.
ΠΠ°ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ c sonata?
Π§Π΅ΡΠ΅Π· API, Π΄Π΅Π»Π°Ρ http Π·Π°ΠΏΡΠΎΡΡ. API Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π² Π²Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°Π»ΡΡΠΈΠΈ. Π’.ΠΊ. API ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ swagger ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ
ΠΠΊ, ΠΎΡΠ»ΠΈΡΠ½ΠΎ. ΠΠ΅ΡΡ ΠΏΡΠΈΠΊΠΎΠ»ΡΠ½Π°Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ?
ΠΡΠΎΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ docker-ΠΎΠ±ΡΠ°Π· Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Π Π΅ΡΠ»ΠΈ Π·Π½Π°Ρ node.js?
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΎΠΏΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ JavaScript, ΡΠΎ Π²Ρ Π±ΡΡΡΡΠΎ ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ΡΡ ΠΊΠ°ΠΊ Π²ΡΠ΅ Π·Π΄Π΅ΡΡ ΡΡΡΡΠΎΠ΅Π½ΠΎ.
ΠΡΠ΄Π΅Ρ Π»ΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ sonata?
Π§Π°ΡΡΠΈΡΠ½ΠΎ ΡΠ²ΠΎΠΈΡ ΡΠ΅Π»Π΅ΠΉ Ρ Π΄ΠΎΡΡΠΈΠ³. ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ β ΡΡΠΎ Π²ΠΎΠΏΡΠΎΡ ΠΌΠΎΠΈΡ Π·Π°Π΄Π°Ρ ΠΏΠΎ ΡΠ΅ΠΌΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ². ΠΡΡΡ Π΅ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΎΠ²ΠΈΠΆΠ½ Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΊΠ½ΠΈΠΆΠ΅ΠΊ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ΡΠ΅ ΡΡΠΎ-ΡΠΎ, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
Π Π΅Π·ΡΠΌΠ΅ ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΠΈ
ΠΡΠ΄Ρ ΡΠ°Π΄ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ²Π½ΡΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ/Π²ΠΎΠ·ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ/ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ ΠΈ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ, Ρ.ΠΊ. Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠΎ-ΡΠΎ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π».
Π’Π°ΠΊΠΆΠ΅ Π²ΡΡΠ°ΠΆΠ°Ρ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΡ Π²ΡΠ΅ΠΌ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ, ΠΊΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π», ΠΊΠΎΠ½ΡΡΠ»ΡΡΠΈΡΠΎΠ²Π°Π», ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π», ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»/ΠΏΠΎΠ΄Π°ΡΠΈΠ» ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ Π΄Π»Ρ ΡΠ΅ΡΡΠΎΠ². Π Π΅Π°Π»ΡΠ½ΠΎ, ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΡΠΈΡΠ°ΡΡΠ½ΠΎ Π² ΡΠ°Π·Π½ΠΎΠΉ ΠΌΠ΅ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Ρ ΠΎΠ±ΡΠ°Π»ΡΡ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅, Π½Π°
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com