Jump to content
KAMOUniverse

Changelog

Ada kabar baru.

Setiap perbaikan pada platform, sebagai kapal.

  1. · EmailService

    A warm-up day was sent on doesn 't count

    A warm- up day used to be the N-th 24 hours from the start whether or not apapun pergi, jadi menyalakan perang-up pada hari sebelum kampanye pertama diam-diam menghabiskan hari yang rendah volume. Hari yang berakhir tanpa usaha adalah sekarang diulang: itu dan setiap hari kemudian geser ke depan oleh seluruh hari yang pergi digunakan, nomor apapun sekaligus, sementara hari yang digunakan menjaga mereka jendela dan sejarah. Komplesi bergerak dengan mereka, dan keadaan perang-up laporan idleDaysSkipped. Jalankan diselesaikan sebelum jalur pengiriman menghitung apa-apa, sehingga mengirim adalah Tidak pernah dihitung dari hari yang akan diulang, dan ketika counter tidak dapat membaca jalankan kiri karena berdiri daripada menutup hari pada nol.

  2. · kamo-internal

    Sebuah kampanye backend tidak dapat mengirim mengatakan mengapa dan bagaimana memperbaikinya

    EmailService kini menghentikan kampanye daripada gagal penerimanya oleh satu ketika tidak dapat mengirimkannya: Dari adalah dari platform relay 's domain, atau tidak ada pengirim besar sama sekali. Ini menolak mengirim, jadwal dan melanjutkan sementara penyebabnya berdiri, dan melaporkan pada kampanye sebagai sendBlocker. - Editor dan tampilan kemajuan menunjukkan sebuah spanduk dengan penyebabnya, hukuman server sendiri dan fix sebagai dua langkah: ubah From (atau gunakan penyedia baku) dan resume, atau buka pengirim massal pengaturan dan melanjutkan. Lanjutkan tetap dinonaktifkan sementara draft masih memiliki penyebab - Lanjutkan sekarang menyimpan draft pertama, sehingga dikoreksi Dari mencapai backend daripada kampanye yang sedang dilanjutkan sebagai disimpan dan ditolak lagi - ditolak mengirim, jadwal atau resume ditampilkan di tempat dengan pesan server, tidak hanya dalam roti bakar, dan kampanye re- baca sehingga status dan blocker saat ini - Kampanye grid menandai kampanye diblokir di samping statusnya, dengan Alasan pada hover - error dari kampanye API lebih suka pesan manusia daripada kosong kode mesin, dan membawa status dan kode

  3. · kamo-internal

    Warm- up mengatakan hari idle tidak menghitung dan menarik tanggal yang meluncur

    A warm-up day di mana tidak ada dikirim tidak lagi jumlah: run slides Maju dan hari berulang ketika mengirim resume, yang membuat beralih Perang dimulai sebelum kampanye pertama aman. Panel sekarang mengatakan begitu, di samping saklar dan lagi dalam diam dan tidak-dimulai catatan. Ketika hari-hari telah dilewati, cincin hari mengatakan berapa banyak, dengan jadwal bergerak maju oleh banyak. Setiap ubin jadwal menunjukkan tanggalnya, dan nama tooltip bagan itu, dibaca dari setiap hari seperti backend memiliki sekarang daripada dihitung pada dari yang pertama, sehingga tanggal slid adalah satu ditarik. On / marketing / email, sebuah warm idle -up dengan tidak menunggu membaca sebagai "on, dimulai dengan kampanye berikutnya "daripada klaim pengiriman sedang paced.

  4. · EmailService

    Surat kampanye relay platform akan menolak gagal sekaligus bukannya dicoba ulang

    Relay hanya mengirimkan sebagai domain sendiri dan menjawab apa pun dengan 451, jadi kampanye yang berasal dari domain lain yang digunakan untuk mencoba kembali setiap penerima tiga kali, setiap retry sebuah perang-up upaya, sebelum ada yang belajar Dari salah. Ketika penyedia org adalah host relay dan port dan Domain From bukanlah domain pengiriman relay, penerima adalah sekarang ditandai GAGAL dengan fix dalam kesalahannya: tidak ada SMTP, tidak ada coba lagi, tidak ada penekanan, dan tidak dihitung terhadap perang-up atau slot nya.

  5. · EmailService

    Host baru warm-up memegang sebuah email kampanye org dan rilis itu pada kecepatan perang -up

    Sementara perang org terjadi, operator meninggalkan kampanyenya sendiri dan sebuah voucher mengirim mereka satu pesan pada satu waktu, pertama karena di kampanye org, tak pernah melewati sebuah kampanye sendiri per jam dan tidak pernah melewati hari hangat-up cap. Ini berjalan setiap detik di bawah operator sewa sendiri, sehingga dua tidak dapat mengirim penerima yang sama dari Pod yang berbeda. Pengaturan, hari memutuskan dan rem keselamatan tinggal di penyedia besar blob terenkripsi; counter tinggal di Redis dan dibangun kembali dari penerima jika kalah. GET, PUT dan reset titik akhir dibawah / api / email / bulk- provider / warmap laporkan negara, jadwal, antrian dan kesehatan. Kedua jalur sekarang mengirim melalui satu per-metode penerima, yang klaim baris SENDING sebelum relay melihatnya. Penghitung kampanye ditulis tanpa menyimpan kampanye, interrupted- pengiriman termasuk menyapu; menyimpan digunakan untuk menempatkan kampanye pause mid- batch kembali ke SENDING.

  6. · kamo-internal

    Baris Penerima membawa dihubungi, dan sudah - dikirim baris menjaga tanda mereka di samping status

    Penerimaan EmailService DTO sekarang melaporkan apakah kampanye telah selesai email setiap alamat. Mapper membawanya melalui, bersama-sama dengan Kesalahan terakhir, dan mengisi ID kampanye DTO keluar. Baris yang sudah dihubungi tidak pernah dipegang oleh perang dan tidak pernah diemail lagi, sehingga progress grid tidak lagi memberikan catatan pemanasan -up, dan ketika hasil terakhir adalah apa-apa tapi Dikirim chip status terus kecil "Sudah dikirim" tanda. Dalam langkah penerima, baris ditandai "Sudah dikirim" juga menunjukkan bagaimana pengiriman yang berakhir ketika tidak hanya pergi keluar.

  7. · kamo-internal

    Kampanye Dari lapangan mengatakan ketika relay besar akan menolaknya

    Kampanye ini sendiri Dari daerah, dikosongkan dari penyedia massal, memperingatkan ketika alamat dari domain penyedia, sebagai surat yang mungkin mendarat di spam. Pada relay platform yang tidak risiko tapi kepastian: EmailService gagal setiap penerima kampanye yang ranah From bukan domain pengiriman relay ("Ringkasan besar hanya mengirimkan sebagai @ domain"). Jadi ketika penyedia besar membawa relay platform, off- domain Dari adalah kesalahan: bidang ditandai, peringatan mengatakan apa yang akan terjadi dan menawarkan penyedia default ketika itu berada di domain relay, dan sebelum penerbangan blok pengiriman sampai diperbaiki. Organisasi pada SMTP mereka sendiri Operator masih mendapat peringatan spam lebih lembut.

  8. · EmailService

    Setiap nama pesan kampanye penerima dalam X- Kamo- Ref

    Log relay besar-besaran yang header terhadap id antrian dan strip sebelum pengiriman, sehingga hasil pengiriman dapat dicocokkan dengan baris penerima yang tepat. Tes komposer juga menandai sisa pesan kampanye yang tersisa dengan: Kampanye Dari alamat dan nama, masing-masing jatuh kembali ke massal Penyedia; nama tampilan yang tidak dapat memulai header sendiri; berhenti langganan kotak surat di domain surat sebenarnya dari; dan - Untuk hanya ketika kampanye menetapkan satu.

  9. · EmailService

    Laporan pengiriman relay memantul, blok dan menghitung surat kampanye setelah hand-off

    POST * * * * * * * * * * * * * * * * mengambil laporan relay platform dari apa yang terjadi dari setiap pesan, cocok dengan baris penerima oleh X-Kamo-Ref header atau, gagal itu, baris terakhir dikirim ke alamat dalam 7 hari terakhir. Sebuah hard bouncing (5.1.x, 5.2.1, 5.4,4) menandai baris Terikat dan ditekan alamatnya. Sebuah blok (5.7,x) menandainya GAGAL tapi menyimpan alamatnya, sejak Penolakan itu dari pengirim, bukan kotak surat. Hal lain yang permanen adalah kegagalan biasa. Alasan penangguhan ini disimpan di baris sampai pengiriman. Hanya baris masih SENT dipindahkan, dan perang-up menghitung setiap laporan sekali, terhadap hari pesan dikirim, sehingga reporter dapat mengirim ulang batch Aman.

  10. · EmailService

    Jadwal perang - up, mondar-mandir dan aturan kesehatan

    IP pengiriman baru rusak selama 14 hari. Hari 1-7 mengikuti jadwal tetap per kecepatan (konservatif, seimbang, agresif); dari hari 8 Setiap hari tumbuh dengan persentase kecepatan hanya jika hari sebelumnya sehat oleh bounce, blok dan tingkat deferral, dan sebaliknya memegang. Setiap hari memutuskan sekali dan terus dengan alasan. Pesan-pesan paced dari apa yang tersisa hari, dengan jahat-satu pemukul dan sesekali istirahat, tidak pernah lebih cepat dari empat kali tingkat stabil dan tidak pernah begitu terlambat bahwa sisa anggaran hari ini tidak lagi cocok. The rem pengaman berhenti sehari bahwa penerima memblokir atau memantul.

  11. · kamo-internal

    Warm- up pacing banner pada / marketing / email

    Sementara host baru hangat-up adalah mondar-mandir, kampanye pergi keluar jauh lebih lambat daripada pengaturan mereka sendiri mengatakan, dan tidak ada di kampanye mengatakan mengapa. The kampanye area kerja dan tampilan kemajuan kampanye sekarang membawa langsing banner with the day, today 's sent against the cap, the next send and apa yang menunggu, menghubungkan ke pengaturan warm-up, dan penerima antrian menjelaskan bahwa itu ditahan. Banner tersembunyi sementara hangat-up adalah off atau lengkap, dan setiap kali Warm-up tidak dapat dibaca.

  12. · kamo-internal

    Tipe klien pengirim massal dengan kesalahan daerah dan titik akhir perang -up

    Klien tahu status penyedia yang disebut Pending bahwa backend tidak pernah Mengirim, sehingga pengirim yang diselamatkan tapi belum diuji jatuh ke "Tidak dikonfigurasi ". Sekarang membaca PENDING _ SEtup (masih menerima PENDING) dan normalisasi seluruh negara di satu tempat: ringkasan koneksi, ketika sandi terakhir berubah, relay platform dan apakah anggota dapat mengelola itu. Imagangan kembali sebagai BulkEmailApiError, membawa status HTTP dan, untuk a 400, bidang formulir backend bernama, sehingga formulir dapat menempatkan pesan pada bidang itu dan 403 dapat ditampilkan sebagai keadaan akses daripada sebuah error. 204s kosong ditoleransi, dan sebuah save atau warm-up tulis jawabannya dengan pengakuan telanjang diikuti oleh GET bukannya diadopsi sebagai keadaan, yang adalah apa yang menyelimuti formulir setelah setiap menyimpan. Tambahkan panggilan warm-up: GET dan PUT / bulk-provider / warmut dan POST / sekat-penyedia / warp / reset.

  13. · kamo-internal

    Aturan koneksi, preset dan warm-up model tampilan di belakang pengirim massal

    Potongan-potongan murni layar baru dibangun pada, masing-masing dengan tes: - Backed 's port-pertama aturan koneksi, cermin sehingga bentuk dapat mengatakan bagaimana KamoCRM akan terhubung sebelum apapun disimpan: 465 adalah TLS implisit dengan sinyal-in, 587 adalah STARTTLS dengan tanda-dalam apa pun Keamanan mengatakan, apapun port lain dengan peningkatan STARTTLS dan tanda-tanda masuk, dan apa pun adalah teks-biasa tanpa signal-in - satu - klik presets untuk platform relay dan penyedia umum - formulir sebagai nilai: apa yang kotor, tubuh menyimpan, dan validasi yang hanya meminta nama pengguna dan kata sandi ketika tanda-tanda sambungan dalam - setup kesiapan dan tahap tes kirim - Warm-up anak tangga, hitung mundur, kirim ritme dan jadwal nomor bagan useBulkWarmup polling the warm-up setiap 15 detik sementara tab terlihat, Jeda sementara disembunyikan, berhenti pada 403, dan berlaku menulis optimis dengan rollback.

  14. · kamo-internal

    Buat ulang tab pengirim massal dengan panel host Warm-up baru

    Tab Pengirim Email Bulk dibangun kembali dari satu bentuk panjang ke dalam seperangkat Kartu atas draft negara yang disimpan: - Seorang kepala surat dengan status hidup (seorang pengirim yang disimpan tapi belum teruji sekarang membaca "Butuh tes"), siapa yang mengirimnya, koneksi yang tersimpan dalam satu baris dan ketika itu terakhir kali diuji - Empat langkah rel kesiapan: koneksi, pengirim, tes berlalu, hangat-up - koneksi, dengan preset, kontrol None / STARTTLS / SSL- TLS, saran ketika baik-diketahui port diketik, dan akun langsung dari bagaimana KamoCRM akan benar-benar terhubung, peringatan ketika port menimpa Keamanan terpilih - sign-in yang hanya interaktif ketika tanda-tanda koneksi dalam, dan baris sandi yang mengatakan apakah salah satu disimpan dan kapan, dengan Ganti dan Hapus stage sampai menyimpan - identitas pengirim dengan pratinjau inbox, peringatan ketika platform relay akan menolak domain Dari - bar menyimpan lengket, kesalahan dari backend ditempatkan di bidang mereka, dan negara yang disimpan diambil dari jawaban sendiri - Sebuah tes inline mengirim yang menarik mana pesan sampai, menandai tahap yang menolaknya Panel Hangat Host Baru duduk di bawah ini: on / off, kecepatan, hari saat ini sebagai empat segmen cincin, hari ini mengirimkan terhadap topi dengan hidup hitung mundur ke pengiriman berikutnya, total, kesehatan pengiriman dan berapa banyak Laporan relay, jadwal 14 hari dengan setiap keputusan hari dan topi terhadap bagan aktual, jam hari ini mengirimkan dan kesenjangan uneven antara baru-baru ini mengirimkan, antrian, rem keselamatan dengan Resume sekarang, dan Reset. Seorang anggota tanpa hak untuk mengubah pengirim mendapat tab baca-saja, dan satu menolak membaca mendapat keadaan akses daripada kesalahan.

  15. · EmailService

    Kampanye tak dapat dikirim atau dijadwalkan tanpa pengirim surel besar-besaran

    Para operator digunakan untuk menerima seperti kampanye dan kemudian melewatkan pada setiap centang, meninggalkannya di SENDING dengan apa-apa selain garis log. SendNow and jadwal sekarang menolaknya dengan pesan mengatakan di mana untuk mengatur pengirim up. Host dan port yang dikonfigurasi sudah cukup; ini tidak perlu diverifikasi.

  16. · EmailService

    Pengaturan penyedia api menjawab dengan status yang disimpan dan nama ruas yang ditolak

    PUT kini mengembalikan keadaan pengaturan penuh daripada {sukses: true}, yang mana kosongkan formulir setelah setiap menyimpan. Fields memvalidasi sisi server- dan ditolak sebagai 400 {error, field}; sebuah login dibutuhkan hanya ketika koneksi akan benar-benar masuk Sandi kosong menyimpan yang tersimpan, clear Password menghapus itu, dan Password UpdatedAt catatan ketika salah satu diatur. Status berjalan kembali ke PENDING _ SETUP hanya ketika sebuah delivery - bidang relevan berubah. Setiap tulisan ke blob terenkripsi sekarang melewati satu terkunci baca-modify- tulis yang menjaga kunci tidak memiliki, karena blob adalah akan membawa senjata juga. Negara menunjukkan bagaimana Layanan Email akan terhubung, dan platform org ditampilkan pengaturan relay internalnya. Pengujian mengatakan dimana kegagalan (connect, TLS, login, pengirim, penerima, data) dengan perbaikan singkat untuk masing-masing.

  17. · kamo-internal

    Pratilik surel sebagai dikirim, Templat suai / Tanpa pendengar, dan kolom asli Dari

    Pratilik: dialog yang membuat keluaran buildBodyHtml sendiri - Toko Simpan tali dan operator mengirim - sehingga penonton kepala, tanda tangan dan kaki dan kaki kepatuhan semua ada dan tidak dapat Drift dari email nyata. Desktop dan tampilan seluler, "pratinjau sebagai" apapun penerima atau sampel, gabungan token diisi cara EmailService mengisi mereka, amplop bergaya inbox-, dan bingkai pasir. Dapat dicapai dari compose langkah, batang footer, dan pandangan kampanye yang dikirim. Penonton: "Kustom / No Template" membungkus apa-apa di sekitar tubuh. Ini disimpan sebagai ruang lingkup PERUSAHAAN dengan NONE signatureScope (yang toko server dan tidak pernah membaca), dan kampanye-kampanye yang melabelinya sebagai Gubahan. Dari: itu sendiri Dari nama dan alamat field, digagalkan dari email massal penyedia dan dapat disunting setiap kampanye, dengan reset ke default dan peringatan ketika alamat adalah dari domain penyedia. Ini menggantikan pengirim berasal dari penonton dan radio no- balasan. Penerima: alamat yang telah diemail telah ditandai "Sudah dikirim ", dengan pemberitahuan bahwa mereka tidak akan pernah email oleh itu lagi; EmailService sekarang laporan ini per penerima.

  18. · KlusterServices

    Tandatangani hello.kamocrm.com dengan kunci pelanggan sendiri, oleh domain From itu sendiri

    Campaign surat daun sebagai hello.kamocrm.com melalui postfixing- massive. Ia mendapat nya kunci DKIM sendiri (pemilih pelanggan, diterbitkan sebagai pelanggan. _ domainkey.hello), dan gunakan _ esld = false sehingga halo. pesan kamocrm.com ditandatangani d = hello daripada kembali ke kunci surat induk, yang tidak ketat Perataan DKIM (adkim = s) adalah publikasi domain.

  19. · KlusterServices

    Postfix-massive, relay outbound kedua untuk surat kampanye, dengan hasil pengiriman mengembalikan

    Surat kampanye sekarang meninggalkan melalui relay sendiri pada k3m1 (egress 47.181.8.87) sebagai halo. kamocrm.com, sehingga keluhan tentang surat massal tidak pernah menyentuh Reputasi mail.kamocrm.com (47.181.8.84). - Relay plaintext pada port 25 untuk EmailService saja (NetworkPolicy); itu hanya menerima @ hello.kamocrm.com pengirim dan menolak apa pun dengan 4xx, tidak pernah 5xx, karena operator kampanye menekan pada 5xx apapun. - Penjaga jalan keluar memegang outbound pengiriman kecuali alamat publik pod adalah 47.181.8.87, sehingga massal tidak pernah bisa diam-diam meninggalkan sebagai IP lain. - Seorang pengantar peristiwa samping membaca catatan surat dan melaporkan setiap kampanye pesan dikirim / ditunda / dibounce / berakhir hasil ke EmailService, bergabung dengan X- Kamo-Ref header, yang dilucuti sebelum pengiriman. Applied by hand for now: Ditemani-servis.yml terapkan surat / berkas berdasarkan nama dan tidak daftar ini belum.

  20. · EmailService

    Sebuah email kampanye alamat paling sekali, pernah

    Alamat dijodohkan dipotong dan dipotong-tidak sensitif, dan baris kampanye telah menyerahkan ke relay (dikirim, dalam penerbangan, bouncing, gagal, atau dicoba lagi) sekarang Catatan permanen alamat itu: tidak pernah dihapus, direset, atau antrikan ulang. - materializeRecipients digunakan untuk menghapus setiap baris dan membangun kembali daftar pada masing-masing simpan, jadi mengedit kampanye yang diistirahatkan menempatkan alamat already-email kembali dalam antrian. Sekarang menjaga sejarah, segar baris belum dihubungi di tempat, hapus baris yang tidak dapat dihubungi yang meninggalkan daftar, dan tidak pernah mengembalikan sebuah alamat kampanye telah dihubungi, namun banyak kali ditambahkan. - Operator mengklaim baris Sending sebelum relay melihatnya. Kecelakaan. antara relay menerima pesan dan baris yang ditandai Sent digunakan untuk biarkan QUEUED dan kirimkan lagi; sekarang tetap ENDING dan menyapu menutup itu keluar sebagai gagal tanpa mencoba kembali. - Seorang penerima ditambahkan sementara kampanye itu jeda tidak pernah mendapat waktu rilis, jadi itu tidak pernah dikirim dan kampanye tidak pernah selesai. Lepaskan waktu sekarang pergi ke baris antrian yang kurang satu. - Indeks unik startup pada (kampanye _ id, bawah (trim (email))) mendukung aturan di meja. Endpoint daftar penerima sekarang mengembalikan setiap nama baris, nilai penggabungan, sumber dan apakah itu dihubungi, jadi membuka kembali dan kembali-menyimpan draft tidak lagi menghapus personalisasi. Alamat Dari jatuh kembali ke penyedia besar, dan nama asli dikirim (disimpan dan dijatuhkan).

  21. · kamo-internal

    NoReply Outbound, sebuah audit surat yang dikirim sebagai alamat platform NoReply

    Sebuah bagian ketiga di bawah Surat, hanya ditampilkan kepada anggota yang berhak tuhan, dibuka / pesan / outbound / noreply: setiap pesan EmailService diserahkan ke relay sebagai alamat platform NoReply, pertama terbaru, dengan pencarian, sebuah Filter yang dikirim / Gagal dan laci menampilkan pesan lengkap. Halaman itu berpaling dari siapapun yang tidak berhak Tuhan. Itulah kesopanan, bukan kunci: data berasal dari EmailService, yang menolak sesi apapun tanpa GD.

  22. · EmailService

    Sebuah buku besar dari setiap pesan yang dikirim sebagai platform NoReply alamat, dibaca oleh Tuhan saja

    Direkam di EmailsmttpService di satu tempat surat mencapai relay, dan memutuskan oleh alamat From, jadi template transkasional, kampanye dan Saham artikel semua tertutup tanpa memilih masuk Pengungsi direkam dengan alasan relay dan masih ditolak. Menulis berjalan di sendiri transaksi dan tidak pernah melempar: sebuah baris audit gagal tidak dapat gagal atau menggulung kembali kirim. GET / api / email / noreply- outbound daftar buku besar (pencarian, filter status, paging, badan dikecualikan); / {id} kembali satu pesan dengan tubuhnya. Keduanya membutuhkan GD pada sesi dan tidak ada yang lain: buku besar mencakup setiap organisasi, sehingga tidak ada org- scoped kanan dapat membukanya. Tabel dibuat pada startup oleh NoReplyOutboundSkema, sebagai Karya seni.

  23. · kamo-internal

    Sebuah link pelacakan dapat mendarat pada artikel CRM label putih

    Tambahkan * * * * * * * * * * * * * ke tujuan-tujuan tracking-link picker menawarkan pada / pemasaran / pelacakan, dengan ikon sendiri. Jalurnya bebas seperti saudara kandung: situs pemasaran 308s untuk * * * * * * * * * * * * dan terus? diskon = di seberang hop, sama seperti harga (diperiksa terhadap situs hidup). Label baris dan petunjuk berada di kamo- terjemahan - kamus 7a6fd4e2.

  24. · kamo-marketing

    Biarkan pembaca mengirim artikel biaya untuk seseorang yang mereka kenal

    A "pass it on" form at the foot of * * * * * * * * * * * * * * * * dicapai dari chip di atas dan garis setelah tujuh pertanyaan. Nama pembaca hingga tiga orang dan kami email masing-masing mereka artikel sekali, dengan nama pembaca di atasnya, mereka juga dapat membukanya dalam klien surat mereka sendiri atau salinan Link sebagai gantinya. Pasal POST / API / share-artikel gerbang sebelum EmailService melihatnya: asal sama saja hanya, a * * * diverifikasi server-side terhadap * * layanan (yang lain bentuk di sini maju muatan tanpa ada yang memeriksanya), dan diri-send hanya untuk pengunjung di Uni Eropa / EEA, Inggris dan Swiss. Ini meneruskan tubuh Dibangun dari bidang terbatas, dengan alamat pengunjung kami dicatat, ke EmailService 's / api / internal / article-share, yang memaksa batas dan platform org daftar opt-out. Penyebaran membaca INTERNAL _ AUTH _ SECRET dari mlos- process-auth yang ada rahasia (opsional, sehingga situs masih dimulai tanpa itu) dan memperoleh EMAIL _ SERVICE _ URL dan CAPCHA _ SERVICE _ URL.

  25. · EmailService

    Email sebuah artikel ke seseorang, sebagai platform org, dengan opt- out bekerja

    Seorang pengunjung di situs pemasaran dapat mengirim artikel biaya-hingga tiga Orang-orang. POST / api / internal / article-share (X-Internall-Auth, seperti setiap lainnya / api / titik akhir internal) mengirimkan masing-masing dari mereka satu email sebagai tingkat atas organisasi, dari "< sender > via KamoCRM" dengan ReplyUntuk pengirim. Mengembalikan apa yang ada daripada menambahkan salinan kedua itu: - Opt-outs hidup dalam email _ penekanan, keyed ke platform org id, jadi opt- di sini tidak pernah menyentuh host daftar org dan daftar org tidak pernah Hadang ini. Link adalah tanda tangan (orgId 124; email, HMAC) bahwa UnsubscribeController dan halaman yang ada sekarang terima bersama kampanye token, dengan yang sama RFC 8058 List- Unsubscrics header pengiriman. - Pengiriman berjalan melalui * * * * * * * * * * * * * * * * yang memperoleh Opsi antar (nama tampilan dan tajuk tambahan) jadi Dari, keputusan SPF dan relay fallback tinggal memutuskan di satu tempat. A caller- built letter tidak memiliki baris template, jadi penghitung penggunaan dilewatkan untuk itu. Batas-batas, dihitung dari buku besar yang telah diretas dibuat pada startup) sehingga setiap pod setuju: tiga orang per permintaan, preset catatan saja, 10 hari per pengirim dan setiap alamat pengunjung, 500 sehari secara keseluruhan, satu email per alamat setiap 90 hari, tidak pernah ke alamat ditekan. Juga set bulk-email.unsubscribe-base- url dalam prod konfigurasi. Kode default kosong, yang mengirim surat kampanye tanpa link unsubscription nya.

  26. · kamo-marketing

    Masukan setiap halaman dalam / sitemap.xml itu sendiri, dan daftar halaman hanya dalam bahasa yang mereka miliki

    / sitemap.xml adalah sebuah indeks, jadi membukanya menunjukkan 79 nama berkas daripada halaman situs. - # sitemap.xml is now one < urlset > with every page: 18.700 of them, each at alamat bahasa Inggris nya, dengan setiap versi bahasa itu ada sebagai alternatif hrefleang. Itu dalam batas protokol 50.000- URL / 50 MB untuk sebuah berkas tunggal; melewati itu, berkas ditolak utuh. Entri Changelog masuk tanpa alternatif mereka, yang akan menempatkan file dekat 60 MB. Masing-masing halaman masukan mendeklarasikan bahasa itu sendiri. - Berkas per- bahasa, di mana setiap versi bahasa adalah URL sendiri, pindah ke / sitemap- index.xml. robots.txt nama kedua berkas. - Sebuah halaman yang salinan memiliki pesan namespace sendiri terdaftar, dan nama alternatif, hanya di locales bahwa namespace benar-benar diterjemahkan ke dalam: setidaknya 90% dari string yang hadir, kurang dari 30% identik dengan Inggris (app / lib / message- locales.ts). Baru Artikel dan sumber daya tidak memiliki terjemahan belum. Mereka berada di semua 21 locales, 20 dari mereka halaman Inggris di bawah awalan lain. - Halaman koleksi membaca ukuran hidup yang sama untuk 'collection' di tempat Kode hard- COLLECTION _ CONTENT _ LOCONES. Salinan koleksi Swahili telah telah diterjemahkan sejak daftar itu ditulis, jadi 132 halaman nyata Swahili menunjuk kanonikal mereka di Inggris.

  27. · kamo-internal

    Sebuah departemen Select memeriksa anggota itu menunjukkan

    Pilihan per-departemen Direktori digunakan untuk mengganti seluruh daftar ke mode pilih dengan tidak ada cek, dan baca "Selesai" sampai ditekan lagi. Sekarang memeriksa setiap anggota departemen yang menampilkan (pencarian dan strip All / Online / Offline memutuskan siapa) dan melepaskan siapa pun diperiksa Di luar itu. Selalu baca Pilihan, dan dinonaktifkan untuk departemen itu sendiri ketika pemilihan persis baris-baris itu; tidak memeriksa satu, memeriksa seseorang di tempat lain, atau filter yang menunjukkan berbeda baris membawa kembali. Baris penampil sendiri ditinggalkan: sebuah grup obrolan atau pertemuan mereka mulai termasuk mereka, dan pertemuan akan sebaliknya mengirim mereka undangan chatting untuk dirinya sendiri. Dinonaktifkan dengan aria- disabled sehingga pengguna papan tik tetap fokus di dalam perangkap panel, dan redup dengan opasitas karena warna .operator- label adalah! penting di bawah tailwind 'penting: benar'.

  28. · kamo-marketing

    Pengumuman layanan publik pada siapa yang menyimpan biaya kursi perangkat lunak

    Halaman baru di * * * * * * * * * * * * * * * * * * menjelaskan, untuk non-teknis pemilik, bagaimana platform white- label bekerja: sebuah lisensi lembaga datar, per- seat biaya badan terus, dan penggunaan obat ditagih di atas. Berakhir dengan pertanyaan untuk meminta sebelumnya penandatanganan dan bagaimana KamoCRM berbeda. Artikel yang ditulis dengan Artikel dan BreadcrumList JSON- LD, OG sendiri kartu, kalkulator biaya, dan CTA untuk pendaftaran gratis, demo, kontak dan telepon. Terhubung dari menu sumber daya dan hub, dari situs banner sebagai PSA ke kiri dari log perubahan, dan terdaftar dalam sitmap.

  29. · kamo-marketing

    Daftar setiap halaman dalam setiap bahasa yang ada, dan membuat setiap halaman setuju

    / sitemap.xml terdaftar setiap halaman sekali, sebagai URL bahasa Inggris. The 17,843 changelog masukan tidak memiliki bahasa alternatif sama sekali, dan setiap halaman sendiri pantulan bernama semua 21 locales apakah halaman ada atau tidak di dalamnya. - Setiap versi bahasa sekarang adalah < url > sendiri, membawa halaman penuh, recical hrefleang cluster and x-default: Google 's recommed form, and salah satu yang mendapat halaman lokal ditemukan tanpa menunggu crawler untuk ikuti link alternatif untuk itu. - Sebuah versi terdaftar hanya di mana itu sendiri kanonis: SITE _ LOCALES untuk halaman ditulis tangan, blog posting dan halaman daftar changelog; COLLECTION _ CONTENT _ LOCALES untuk perbandingan, solusi, integration dan Glossary; dan untuk artikel KB dan masukan changelog, lokal KBService dan SecurityService melaporkan terjemahan nyata untuk. Sebuah gema dari Inggris tidak masuk hitungan. Listing a version that canonicals to English letting a URL yang tidak dapat diindeks. - Setiap halaman nama < head > persis set yang sama. localeAlternates () memuat locales a page exist in, and a locale outside them canonicals to English tanpa nodex. Halaman koleksi dalam locales tanpa salinan koleksi yang dipakai akan noindeks sementara setiap halaman masih bernama mereka sebagai alternatif. - Indeks dibagi oleh bagian (halaman, koleksi, setiap bagian KB, daftar halaman changelog, entri changelog), setiap berkas dengan lastmod terbaru dan baik di dalam 50 juta URL / 50 batas MB. Berkas Changelog dijalankan tertua pertama, jadi file lengkap tidak pernah berubah lagi. - Daftar halaman Changelog 2.. N terdaftar; masing-masing adalah kanonikal sendiri. - / sitemap.json adalah salah satu streaming dokumen memegang setiap halaman dan setiap URL bahasa. / api / sitemap melayani dokumen yang sama. - Sebuah sumber yang tidak dapat membaca jawaban 503 daripada sebagian peta.

  30. · KBService

    Katakanlah lokasi setiap artikel publik benar-benar diterjemahkan ke

    Situs pemasaran sitmap sekarang daftar setiap versi bahasa dari setiap help-center, dokumentasi dan API referensi artikel, dan setiap halaman artikel nama yang lain sebagai umpan balik. Baik bisa mengatakan terjemahan dari echo: Arah jawaban layanan terjemahan tidak memiliki penyedia untuk dengan sumber Inggris, sehingga sw dan ta baris mengulangi judul Inggris dan tubuh kata demi kata (diukur 2026-09-11). Nama-nama itu akan menunjuk mesin pencari di halaman yang kanonikal kembali ke Inggris. Node pohon dan pembacaan tunggal kini membawa 'locales': locales yang judul atau tubuh berbeda dari artikel Inggris. Tubuh saja sudah cukup - bahasa Arab baris dapat menyimpan judul Inggris atas tubuh diterjemahkan. Komputer dalam satu permintaan per permintaan oleh KbDiterjemahkan LocalesService, yang membaca melalui EntityManager sehingga tidak berbagi-perpustakaan rilis diperlukan.

Alam semestamu menunggu.

Mulai gratis dalam beberapa menit. Tambahkan produk kapanpun Anda siap — tidak ada migrasi, tidak ada login baru.

Gratis selamanya — tidak diperlukan kartu kredit