Webhooks
Last updated
Last updated
Webhooks គឺជាវិធីមួយដែលកម្មវិធីអាចផ្ញើសារឬព័ត៌មានដោយស្វ័យប្រវត្តិទៅកាន់កម្មវិធីផ្សេងទៀត។ ជាមួយនឹងមុខងារ webhooks របស់ FormKH អ្នកអភិវឌ្ឍន៍ទាំងអស់អាចទទួលបានការឆ្លើយតបពីអ្នកឆ្លើយតបក្នុងពេលជាក់ស្តែង ដោយប្រើ webhook URL របស់ពួកគេ។
ណែនាំសម្រាប់៖
ទម្រង់បែបបទដែលមានការឆ្លើយតបច្រើន
ប្រព័ន្ធផ្ទៃក្នុង / លំហូរការងារដែលត្រូវការការរួមបញ្ចូលជាមួយនឹងការប្រមូលទិន្នន័យទម្រង់បែបបទ
អ្នកបង្កើតកម្មវិធីដែលមានជំនាញព័ត៌មានវិទ្យា ដែលមានសមត្ថភាពប្រើប្រាស់ឧបករណ៍អភិវឌ្ឍន៍កម្មវិធីរបស់យើង ដើម្បីរៀបចំចំណុចបញ្ចប់អ៊ីនធឺណិតសម្រាប់ការទទួលទិន្នន័យឆ្លើយតប
មិនណែនាំប្រសិនបើ៖
អ៊ីម៉ែល ឬបញ្ជី Excel អាចផ្ទុកការឆ្លើយតបនៃទម្រង់បែបបទបានគ្រប់គ្រាន់។
បាទ/ចាស, ទិន្នន័យរបស់អ្នកត្រូវបានអ៊ិនគ្រីប។ ឧបករណ៍អភិវឌ្ឍន៍កម្មវិធីរបស់យើង () ផ្តល់ការណែនាំអំពីការដំឡើងប្រព័ន្ធទទួលរបស់អ្នកទៅ៖
ផ្ទៀងផ្ទាត់ថាការបញ្ជូននីមួយៗត្រូវបានផ្ញើដោយ FormKH ហើយមិនមែនជាម៉ាស៊ីនមេផ្សេងទៀតទេ។
ឌិគ្រីបការបញ្ជូនដោយប្រើសោសម្ងាត់ដែលមានតែអ្នកជាម្ចាស់ប៉ុណ្ណោះ។
សុពលភាព៖ អាសយដ្ឋាន IP
Production: X.X.X.X (form.gov.kh)
Staging: X.X.X.X (staging.form.gov.kh )
ក) ការដំឡើង Webhooks តម្រូវការជាមុន៖ ចំណុចបញ្ចប់ HTTPS ត្រូវតែបង្ហាញនៅលើអ៊ីនធឺណិត។
ការរៀបចំប្រព័ន្ធរបស់អ្នកក្នុងការទទួល ផ្ទៀងផ្ទាត់ និងឌិគ្រីបការឆ្លើយតបទម្រង់បែបបទ៖
កំណត់រចនាសម្ព័ន្ធទម្រង់ Webhook URL៖ យើងសន្មត់ថាអ្នកចង់បង្កើតទម្រង់បែបបទថ្មី និងកំណត់រចនាសម្ព័ន្ធ webhooks សម្រាប់ទម្រង់បែបបទរបស់អ្នក។ ដើម្បីសម្រេចបាន អ្នកត្រូវធ្វើតាមជំហានខាងក្រោម។
ចូលទៅកាន់ផ្ទាំងគ្រប់គ្រង។
បង្កើតទម្រង់បែបបទថ្មីដោយបំពេញព័ត៌មានដែលត្រូវការទាំងអស់។ រួចរក្សាទុកសោសម្ងាត់។
ចូលទៅកាន់ផ្ទាំងការកំណត់។
នៅផ្នែកខាងឆ្វេង សូមចុចផ្ទាំង Webhooks ។
ដាក់បញ្ចូល URL របស់ webhook របស់អ្នកក្នុងប្រអប់។ អ្នកក៏មានជម្រើសដើម្បីបើកការព្យាយាមម្តងទៀតផងដែរ។
អ្នកនឹងឃើញការឆ្លើយតបដែលអ្នកឆ្លើយតបបានបំពេញនៅ៖
ចុចលើប៊ូតុងចែករំលែក ហើយចែករំលែកតំណជាមួយអ្នកឆ្លើយតប។
នៅពេលអ្នកប្រើប្រាស់ចុច បញ្ជូន បន្ទាប់ពីបំពេញទម្រង់បែបបទ អ្នកអាចឃើញការឆ្លើយតបដែលបានផ្ញើទៅអ្នកតាមរយៈ URL របស់ webhook ដែលអ្នកបានកំណត់រចនាសម្ព័ន្ធ។
នេះជារចនាសម្ព័ន្ធនៃការឆ្លើយតបដែលអ្នកនឹងទទួលបាន៖
ដំណើរការទិន្នន័យទាញយកដោយ Webhooks៖
ជាមួយនឹងការឆ្លើយតបខាងលើ អ្នកនឹងសម្គាល់ឃើញថាខ្លឹមសារនៃការឆ្លើយតបរបស់អ្នកប្រើប្រាស់ត្រូវបានអ៊ិនគ្រីប។ មានតែទិន្នន័យមេតាមួយចំនួនប៉ុណ្ណោះដែលត្រូវបានផ្ញើជាអត្ថបទធម្មតា។ ដូច្នេះ យើងត្រូវតែឌិគ្រីប ដើម្បីមើលខ្លឹមសារជាក់ស្តែង។ FormKH ផ្តល់ជាកញ្ចប់ npm @formkh/formkh-javascript-sdk ដែលផ្តល់ឱ្យអ្នកនូវមុខងារមួយចំនួនដើម្បីដំណើរការមាតិកាដែលបានអ៊ិនគ្រីបដែលបានផ្ញើពី FormKH ទៅកាន់អ្នក។ ដើម្បីឌិគ្រីបមាតិកា អ្នកអាចធ្វើដូចខាងក្រោម៖
នៅក្នុងគម្រោងរបស់អ្នក បង្កើតឯកសារ .npmrc ហើយដាក់មាតិកានៅក្នុងនោះ @formkh:registry=https://git.anakotlab.com/api/v4/projects/97/packages/npm/
ដំឡើងកញ្ចប់ @formkh/formkh-javascript-sdk ដោយប្រើ command ៖ npm i @formkh/formkh-javascript-sdk
ដាក់កញ្ចប់ទៅក្នុងឯកសារ js/ts របស់អ្នក ហើយប្រើវា៖
សូមចាក់សោកំណែ SDK ដែលអ្នកកំពុងប្រើ ហើយបិទការអាប់ដេតដោយស្វ័យប្រវត្តិ ដើម្បីជៀសវាងការរំខានពីការបំបែកការផ្លាស់ប្តូរ។
អ្នកទទួលខុសត្រូវក្នុងការរៀបចំប្រព័ន្ធរបស់អ្នកឱ្យបានត្រឹមត្រូវ ដើម្បីទទួលបាន ផ្ទៀងផ្ទាត់ និងឌិគ្រីបការឆ្លើយតបទម្រង់បែបបទដោយប្រើ SDK របស់យើង។ FormKH មិនទទួលខុសត្រូវចំពោះការដំឡើងរបស់អ្នកទេ លើកលែងតែក្នុងការធានាថាម៉ាស៊ីនមេរបស់យើងកំពុងកំណត់ផ្លូវឆ្លើយតបយ៉ាងត្រឹមត្រូវស្របតាម SDK របស់យើង។
ភ្នាក់ងារភាគច្រើនបញ្ជាក់ការហៅតាម webhook របស់ FormKH ដោយផ្អែកលើបន្ទុក និងហត្ថលេខា។ ប្រសិនបើអ្នកត្រូវការបញ្ជាក់ការហៅតាម webhook ដោយដាក់ក្នុងបញ្ជីស IP សូមមើលផ្ទាំង "សុពលភាព៖ អាសយដ្ឋាន IP"។
ខ) បើកការព្យាយាម Webhook ម្តងទៀត ប្រសិនបើអ្នកបើក "បើកការព្យាយាមម្តងទៀត" នៅក្នុងការកំណត់ ទម្រង់នឹងផ្ញើ webhooks ឡើងវិញ ប្រសិនបើប្រព័ន្ធ IT របស់អ្នកបរាជ័យក្នុងការទទួលវា។ ដើម្បីទទួលបាន webhook ម្ដងទៀតដោយសុវត្ថិភាព ប្រព័ន្ធរបស់អ្នកគួរតែត្រូវបានរចនាឡើងដើម្បីដោះស្រាយ webhooks ស្ទួន out-of-order delivery ការបញ្ជូន និងការដាក់ស្នើដែលមិនមែនជាពេលវេលាពិត ទោះបីទម្រង់បែបបទនេះលែងដំណើរការក៏ដោយ។
webhook នឹងត្រូវបានព្យាយាមជាលើកដំបូងភ្លាមៗបន្ទាប់ពីទម្រង់ត្រូវបានដាក់ស្នើ។ ប្រសិនបើការព្យាយាមលើកដំបូងបរាជ័យ នោះ webhook នឹងត្រូវបានព្យាយាមម្តងទៀតរហូតដល់ 6 ដង ក្នុងរយៈពេល 24 ម៉ោងបន្ទាប់ នៅចន្លោះពេលខាងក្រោមចាប់ពីពេលដាក់ស្នើ៖
5 ± 1 នាទី
60 ± 15 នាទី
2 ± 0.5 ម៉ោង
4 ± 1 ម៉ោង
8 ± 2 ម៉ោង
20 ± 4 ម៉ោង
ការព្យាយាមម្តងទៀតនឹងឈប់នៅពេលដែល webhook ទទួលបានជោគជ័យ។ ប្រសិនបើប្រព័ន្ធរបស់អ្នកបរាជ័យក្នុងការទទួលបានការព្យាយាមម្តងទៀតចុងក្រោយ 16-24 ម៉ោងបន្ទាប់ពីទម្រង់ត្រូវបានដាក់ស្នើនោះ webhook នឹងមិនត្រូវបានព្យាយាមទៀតទេ។ អ្នកនៅតែអាចទាញយកទិន្នន័យដាក់ស្នើនៅក្រោមផ្ទាំងទិន្នន័យ។
ឥឡូវនេះយើងកំពុងប្រើប្រាស់ NAT Gateways () សម្រាប់ចរាចរណ៍ចេញក្រៅរបស់យើងទាំងអស់ពី FormKH ដើម្បីធានាថាការហៅតាម webhook ទាំងអស់ដែល FormKH បង្កើតនឹងត្រូវបានគេមើលឃើញថាមានប្រភពចេញពី IPs មួយក្នុងចំណោម 3 IPs ដែលយើងរដាក់។
ចំណាំ៖ សម្រាប់ព័ត៌មានលម្អិតអំពីការប្រើប្រាស់ webhook សូមមើល gitlab នៃ ។ 3. ធ្វើតេស្តលើការឆ្លើយតបដែលត្រូវបានទទួលនៅ URL ចំនុចបញ្ចប់របស់អ្នក។ ប្រសិនបើប្រព័ន្ធ IT របស់អ្នកត្រឡប់លេខកូដឆ្លើយតប នោះ webhook ត្រូវបានគេចាត់ទុកថាទទួលបានជោគជ័យ។ កំណត់សម្គាល់សំខាន់៖