Tekshiruvga yuborish
Integratsiya developer tenantida boshidan oxirigacha ishlagachgina yuboring. Ommaviy vidjetda ikki mustaqil topshirish bor; faqat API integratsiyasida esa faqat kartochka topshiriladi.
Yuborishdan oldin
- Ilova kodi band qilingan va doimiy.
- Har tanlangan marketplace tilida nom, o'rnatishdan oldingi tavsif, maxfiylik siyosati hamda yordam URL'i yoki emaili bor.
- Install, revoke va webhook URL'lari ochiq HTTPS va amalda sinovdan o'tgan.
required_permissionsishlaydigan eng tor ro'yxat.- Relizga biriktirilgan aynan shu
widget.zipvalidatsiyadan o'tgan. - Reliz Oldindan ko'rishda ko'rilgan yoki Saqlash bilan lokal faollashtirilgan va barcha e'lon qilingan nuqtalarda sinalgan.
- O'chirish/qayta o'rnatish, xato holatlari va rozilik sinalgan.
- Reliz izohida ushbu versiyada nima o'zgargani yozilgan.
amoCRMning rasmiy moderatsiya qo'llanmasi qaytariladigan test ssenariysi va zarur test kirishini berishni tavsiya qiladi. Bito uchun ham shu intizomdan foydalaning: moderator yo'li qisqa, deterministik va production mijoz ma'lumotlarisiz bo'lsin. Uzoq muddatli secret'larni arxiv yoki ommaviy kartochkaga joylamang.
1. Relizni yuboring
Mening ilovalarim → ilova → Versiyalarda kerakli versiyani ochib Tekshiruvga yuborishni bosing.
POST /admin/settings/widget/release/submit
Authorization: Bearer <Bito session token>
Content-Type: application/json
{ "_id": "<release_id>" }Reliz tahrirlanadigan holatdan queuedga, moderator olgach testingga o'tadi. Navbat yoki tekshiruv paytida uni qaytarib olish mumkin.
2. Ilova kartochkasini yuboring
Asosiy ma'lumotda barcha o'zgarishlarni saqlang va Tekshiruvga yuborishni bosing.
POST /admin/settings/integration/publish
Authorization: Bearer <Bito session token>
Content-Type: application/json
{ "_id": "<integration_id>" }Kartochka pendingga o'tadi va tasdiq, rad yoki qaytarib olishgacha qulflanadi. Tekshiruvlar mustaqil bo'lgani uchun versiya bilan ishlash davom etadi.
Birinchi ommaviy vidjet uchun kartochkaning yakuniy tasdig'idan oldin relizni moderator tasdiqlashi kerak. Bito lokal yoqilgan yoki ko'rilmagan relizga ishora qilgan kartochkani chop etmaydi.
Moderatorlar nimani tekshiradi
Tekshiruv amoCRMning ommaviy integratsiya talablari va moderatsiya oqimidagi amaliy qatlamlarga o'xshaydi, ammo Bito shartnomalariga qo'llanadi. Reliz testingda bo'lganda moderator uch bosqichni qat'iy tartibda o'tadi — keyingisi faqat oldingisi o'tgach ochiladi, tasdiqlash uchun esa uchalasi ham o'tgan bo'lishi kerak:
| # | Bosqich | Nima tekshiriladi |
|---|---|---|
| 1 | Kod tekshiruvi | Arxiv validatsiyasi, assetlar va manifest o'tgan; statik skanerda bloklovchi topilma yo'q; e'lon qilingan nuqtalar va ruxsatlar kod chaqiradigan narsaga mos. |
| 2 | Kartochka tekshiruvi | Har e'lon qilingan tilda nom, tavsiflar va sozlash yo'riqnomasi bor; maxfiylik siyosati va yordam havolalari ochiladi. |
| 3 | Foydalanish sinovi | Sinov akkauntiga o'rnatiladi: har e'lon qilingan nuqta ochiladi va ishlaydi, o'chirish toza bajariladi. |
Birinchi bosqichni Bito o'zi bloklaydi: validatsiya o'tmagan, assetlarni chiqarishda xato bo'lgan yoki statik skaner bloklovchi topgan relizda Kod tekshiruvini o'tkazib bo'lmaydi.
Statik kod skaneri
Yuklangan arxivdagi .js va .html fayllar qatorma-qator skanerlanadi, natija moderatorga manba kod yonida ko'rsatiladi.
| Qoida | Daraja | Nima topadi |
|---|---|---|
eval | Bloklovchi | eval(...) — satrni kod sifatida bajarish |
new-function | Bloklovchi | new Function(...) — ishga tushishda satrdan kod yasash |
string-timer | Bloklovchi | setTimeout/setIntervalga satr uzatish |
plain-http | Bloklovchi | http:// orqali murojaat (localhost bundan mustasno) |
ip-literal | Bloklovchi | Domen o'rniga IP-manzil bilan murojaat |
remote-import | Bloklovchi | import('https://...') — kodni masofadan yuklash |
token-access | Ko'rib chiqish | getAccessToken() — token qayerga yuborilayotganini tekshiring |
storage-access | Ko'rib chiqish | document.cookie, localStorage, sessionStorage |
inner-html | Ko'rib chiqish | .innerHTML = — ma'lumot ekranlanmagan holda qo'yilmasin |
post-message-any | Ko'rib chiqish | postMessage(..., '*') |
undeclared-origin | Ko'rib chiqish | Kod chaqiradigan, lekin bito.network.connect_originsda e'lon qilinmagan https:///wss:// manzil |
Bitta bloklovchi topilma ham birinchi bosqichni yopadi — relizni tuzatib, yangi arxiv bilan qayta yuboring. «Ko'rib chiqish» topilmalari to'xtatmaydi, lekin moderator ularni o'qiydi. Skaner satr andozalarini qidiradi: u kodni tushunmaydi, shuning uchun moderator baribir manbani o'qiydi.
Qarorlar jurnali
Bito moderatsiya jurnalini yuritadi: relizda — tekshiruv boshlangani, har o'tilgan bosqich (tekshirilgan narsa matni bilan), tasdiq va rad etish; kartochkada — tasdiq va rad etish. Har yozuvda moderator ismi va vaqt bor. Jurnal faqat qo'shiladi, o'zgartirilmaydi. Rad etish sababi sizga reliz yoki kartochkada ko'rsatiladi. Reliz qayta testingga kirganda bosqichlar noldan boshlanadi.
Muvaffaqiyatli upload yoki build tasdiq degani emas. Tasdiq kartochka yoki relizda alohida yoziladigan inson qaroridir.