Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow

Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΈΠ»ΠΈ Ρ‡ΠΈΡ‚Π°Π»ΠΈ ΠΏΡ€ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Call Screening, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Google Π²Ρ‹ΠΊΠ°Ρ‚ΠΈΠ» для своих Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² Pixel Π² БША. ИдСя отличная – ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ поступаСт входящий Π·Π²ΠΎΠ½ΠΎΠΊ, Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ассистСнт Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ этот Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ Π² Π²ΠΈΠ΄Π΅ Ρ‡Π°Ρ‚Π° ΠΈ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ вмСсто ассистСнта. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² наши Π΄Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π·Π²ΠΎΠ½ΠΊΠΎΠ² – это спам, Π½ΠΎ ΠΏΡ€ΠΈ этом Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π²Π°ΠΆΠ½Ρ‹Π΅ Π·Π²ΠΎΠ½ΠΊΠΈ ΠΎΡ‚ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π½Π΅ ΠΈΠ· вашСго списка ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². ЕдинствСнная Π·Π°Π³Π²ΠΎΠ·Π΄ΠΊΠ° – эта Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅ Pixel ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² БША. Π§Ρ‚ΠΎ ΠΆ, прСпятствия ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Π²Π°Ρ‚ΡŒ, Π²Π΅Ρ€Π½ΠΎ? ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Voximplant ΠΈ Dialogflow. ΠŸΡ€ΠΎΡˆΡƒ ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.

АрхитСктура

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° объяснСния, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Voximplant ΠΈ Dialogflow, ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π²Ρ‹ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΄Π°Π²Π°ΠΉΡ‚Π΅ познакомимся с самой ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠ΅ΠΉ нашСго Call Screening.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ ΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Π·Π²ΠΎΠ½ΠΊΠΈ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Π½Π°ΠΌ понадобится Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½ Π²Π΅Π·Π΄Π΅ – Π² ΠΏΠΎΡ‡Ρ‚Π΅, Π½Π° Π²ΠΈΠ·ΠΈΡ‚ΠΊΠ΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ заполняСтС ΠΎΠ½Π»Π°ΠΉΠ½-Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Ρ‚.Π΄. Π­Ρ‚ΠΎΡ‚ Π½ΠΎΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ систСмС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ СстСствСнного языка (Π² нашСм случаС это Dialogflow) ΠΈ ΠΏΠ΅Ρ€Π΅Π°Π΄Ρ€Π΅ΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π·Π²ΠΎΠ½ΠΊΠΈ Π½Π° ваш Π³Π»Π°Π²Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Π²Ρ‹ этого Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅. Π’ Π²ΠΈΠ΄Π΅ схСмы это выглядит Ρ‚Π°ΠΊ (ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° кликабСльна):
Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
Понимая Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Π·ΡΡ‚ΡŒΡΡ Π·Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ, Π½ΠΎ с ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠΎΠΉ: ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΌΠ΅ΠΆΠ΄Ρƒ Dialogflow ΠΈ входящим Π°Π±ΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ, ΠΌΡ‹ создадим простоС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с Ρ€Π΅Π½Π΄Π΅Ρ€ΠΎΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ наглядно ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Call Screening. Π’ этом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΠ° Intervene, ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Voximplant Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ входящСго Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π° с Π½Π°Π±ΠΈΡ€Π°Π΅ΠΌΡ‹ΠΌ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ, Ссли послСдний Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ сам.

РСализация

Π’ΠΎΠΉΠ΄ΠΈΡ‚Π΅ Π² свой Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ Voximplant ΠΈ создайтС Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, screening:

Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» «НомСра» ΠΈ ΠΊΡƒΠΏΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² качСствС посрСдника:

Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
Π”Π°Π»Π΅Π΅ Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ screening, Π² Ρ€Π°Π·Π΄Π΅Π» «НомСра», Π²ΠΊΠ»Π°Π΄ΠΊΠ° «ДоступныС». Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΠΊΡƒΠΏΠ»Π΅Π½Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€. ΠŸΡ€ΠΈΠ²ΡΠΆΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«ΠŸΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒΒ» – Π² появившСмся ΠΎΠΊΠ½Π΅ ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ всС значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Β«ΠŸΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒΒ».

ΠΠ°Ρ…ΠΎΠ΄ΡΡΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ прилоТСния, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈΒ» ΠΈ создайтС сцСнарий myscreening – Π² Π½Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠ΄ ΠΈΠ· ΡΡ‚Π°Ρ‚ΡŒΠΈ How to use Dialogflow Connector. ΠŸΡ€ΠΈ этом ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Β«Π²ΠΈΠ΄Π΅Ρ‚ΡŒΒ» Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΌΠ΅ΠΆΠ΄Ρƒ звонящим ΠΈ ассистСнтом; вСсь ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ Ρ‚ΡƒΡ‚.

Π’ΠΠ˜ΠœΠΠΠ˜Π•: Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ server Π½Π° имя вашСго ngrok-сСрвСра (подробности ΠΏΡ€ΠΎ ngrok Π±ΡƒΠ΄ΡƒΡ‚ Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅). Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ свои значСния Π½Π° 31 строкС, Π³Π΄Π΅ your phone number – это ваш Π³Π»Π°Π²Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ), Π° voximplant number – Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΊΡƒΠΏΠΈΠ»ΠΈ.

outbound_call = VoxEngine.callPSTN(β€œYOUR PHONE NUMBER”, β€œVOXIMPLANT NUMBER”)

Π’Ρ‹Π·ΠΎΠ² callPSTN ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ Π²ΠΎΡ€Π²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ ΠΈ Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ со входящим Π°Π±ΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ сохранитС сцСнарий, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊ ΠΊΡƒΠΏΠ»Π΅Π½Π½ΠΎΠΌΡƒ Π½ΠΎΠΌΠ΅Ρ€Ρƒ. Для этого, всС Π΅Ρ‰Π΅ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ вашСго прилоТСния, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π ΠΎΡƒΡ‚ΠΈΠ½Π³Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ – ΠΊΠ½ΠΎΠΏΠΊΠ° «НовоС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΒ» Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ имя (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, allcalls), ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ маску ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (.* – Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ всС входящиС Π·Π²ΠΎΠ½ΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ сцСнариями, Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌΠΈ для этого ΠΏΡ€Π°Π²ΠΈΠ»Π°) ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ сцСнарий myscreening.

Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ.

ΠžΡ‚Π½Ρ‹Π½Π΅ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° привязан ΠΊ ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ. ПослСднСС, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ – ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π° ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ. Для этого ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Dialogflow-ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Β», Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Dialogflow Π°Π³Π΅Π½Ρ‚Β» Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ JSON-Ρ„Π°ΠΉΠ» вашСго Π°Π³Π΅Π½Ρ‚Π° Dialogflow.

Π”Π΅Π»Π°Π΅ΠΌ свой Google Call Screening Π½Π° основС Voximplant ΠΈ Dialogflow
Если Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π°Π³Π΅Π½Ρ‚ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°/тСстирования, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·ΡΡ‚ΡŒ нашСго ΠΏΠΎ этой ссылкС: github.com/aylarov/callscreening/tree/master/dialogflow. Волько Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠΉΡ‚Π΅ ΠΎΡ‚ Π½Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ, это всСго лишь ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π²ΠΎΠ»ΡŒΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π²Π°ΠΌ захочСтся ΠΈ смСло Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ πŸ™‚

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ бэкСнд Π½Π° NodeJS

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π²Π΅Ρ€Π½Π΅ΠΌ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΠΉ бэкСнд Π½Π° Π½ΠΎΠ΄Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊΠΎΠΉ:
github.com/aylarov/callscreening/tree/master/nodejs

Π­Ρ‚ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ всСго Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠ°Π½Π΄ для запуска:

npm install
node index.js

Π‘Π΅Ρ€Π²Π΅Ρ€ запустится Π½Π° 3000 ΠΏΠΎΡ€Ρ‚Π΅ вашСй ΠΌΠ°ΡˆΠΈΠ½Ρ‹, поэтому Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΎΠ±Π»Π°ΠΊΠΎΠΌ Voximplant, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ngrok. Когда Π²Ρ‹ установитС ngrok, запуститС Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

ngrok http 3000

Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ngrok сгСнСрировал для вашСго локального сСрвСра – скопируйтС Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ server.

ΠšΠ»ΠΈΠ΅Π½Ρ‚

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ выглядит ΠΊΠ°ΠΊ простой Ρ‡Π°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΎΡ‚ΡΡŽΠ΄Π°.

ΠŸΡ€ΠΎΡΡ‚ΠΎ скопируйтС всС Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Π½Π° вашСм Π²Π΅Π±-сСрвСрС ΠΈ ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π’ Ρ„Π°ΠΉΠ»Π΅ script.js Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ server Π½Π° Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя ngrok, Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ callee – Π½Π° Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΊΡƒΠΏΠΈΠ»ΠΈ. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» ΠΈ запуститС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅. Если всС Π² порядкС, Ρ‚ΠΎ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ WebSocket-соСдинСниС Π² ΠΏΠ°Π½Π΅Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.

Π”Π΅ΠΌΠΎ

Π£Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² дСйствии ΠΌΠΎΠΆΠ½ΠΎ Π½Π° этом Π²ΠΈΠ΄Π΅ΠΎ:


P. S. Если Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Intervene, Ρ‚ΠΎ позвонивший Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° ΠΌΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, Π° Ссли Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° Disconnect – Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚…? Π’Π΅Ρ€Π½ΠΎ, Π·Π²ΠΎΠ½ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ