Dalam build beta Telegram untuk macOS 13.0.283320 yang dirilis pada 15 Oktober, layar kode QR profil baru telah muncul. Dalam kode, fitur ini disebut QR studio: latar belakang dan pola di sekitar kode dapat dibuat dari hadiah koleksi, emoji premium, atau warna. Di layar yang sama, terdapat tombol "Remove message fee": ini mengubah kode QR dan tautan yang dihasilkan menjadi tiket untuk melewati biaya pesan — siapa pun yang datang melalui tautan tersebut dapat mengirim pesan kepada pemilik secara gratis. Ini berlaku bagi mereka yang mengenakan biaya pesan dalam Telegram Stars untuk pesan masuk, dan bagi mereka yang mengirim pesan kepada mereka. Saat ini, fitur-fitur ini hanya tersedia di beta untuk Mac, dan belum ada dalam skema API publik.

The post on Telegram — @gramnews
QR studio dan tautan pesan gratis di Telegram beta untuk macOS

Apa yang Baru di Build 13.0.283320

Beta macOS didistribusikan melalui feed pembaruan mac-updates.telegram.org. Pada 15 Oktober, tiga build dirilis berturut-turut: 283318 di pagi hari, serta 283320 dan 283321 di siang hari. Antarmuka kedua fitur muncul di build 283320 — modul QrStudioUI dan file inti NoPaidMessagesToken. Deskripsi tipe API untuk tautan gratis sudah ada di klien sejak build 283318 pagi, tetapi tanpa layar yang memanggilnya. Build 283321 dirilis empat puluh menit setelah 283320 dan mempertahankan kedua fitur tersebut.

Teks untuk layar baru di beta ditulis langsung dalam kode dalam bahasa Inggris, dan belum masuk ke platform terjemahan. Kecuali dua layanan pesan dalam obrolan tentang tautan gratis: keduanya telah ditambahkan ke file lokalisasi di build yang sama.

Cara Kerja Tautan Tanpa Biaya Pesan

Di Telegram, Anda dapat menetapkan harga dalam Telegram Stars untuk pesan dari orang yang tidak ada di kontak Anda. Untuk orang tertentu, biaya dapat dihapus sekarang secara manual, dengan menambahkan orang tersebut ke daftar pengecualian: dalam skema API terdapat metode account.toggleNoPaidMessagesException untuk ini. Beta menambahkan cara kedua: pengecualian diberikan melalui tautan, dan Anda tidak perlu menambahkan lawan bicara secara manual.

Ini diaktifkan dengan tombol "Remove message fee" di layar kode QR. Setelah itu, kode dan tautan yang dihasilkan akan berisi token — di klien disebut noPaidMessagesToken. Siapa pun yang membuka tautan tersebut akan melihat "You can now message …" dengan nama pemilik, dan pesan mereka setelah itu akan gratis. Di obrolan, keduanya akan melihat layanan pesan: pemilik akan melihat "… used your link to message you for free", dan yang datang akan melihat "You used …’s link to message for free".

Masa berlaku token diatur di layar yang sama:

String di betaApa yang terjadi
"Expire after 1 minute"kode berlaku satu menit — "This code will expire in 1 minute"
"This code no longer expires"kode tidak memiliki masa berlaku
"New code created. The old one no longer works."kode baru diterbitkan, tautan lama tidak lagi berfungsi
"Restore message fee"biaya pesan kembali berlaku — "Your message fee applies again"

Kode satu menit, tampaknya, dirancang untuk pertemuan langsung: menunjukkan QR dari layar, membiarkan orang memindai — dan setelah satu menit, gambar yang diteruskan tidak akan membuka apa pun lagi. Klien akan menampilkan pesan "This free message link is invalid or has expired" untuk tautan yang kedaluwarsa atau dicabut, dan server akan merespons dengan kesalahan NO_PAID_MESSAGES_TOKEN_INVALID dalam kasus ini.

Apa bedanya dengan tautan "tambahkan ke kontak"?

Telegram sudah lama memiliki tautan undangan sementara untuk menambahkan ke kontak: dalam skema publik, ini adalah contacts.exportContactToken, respons exportedContactToken membawa alamat dan masa berlaku. Di beta, di sampingnya muncul tipe pasangan exportedNoPaidMessagesToken dan layanan pesan messageActionNoPaidMessagesTokenUsed. Keduanya tidak ada dalam skema publik layer 230. Keduanya diatur dengan skema yang sama — server mengeluarkan token dengan masa berlaku, klien menempatkannya dalam tautan — tetapi token tersebut tidak menambahkan ke kontak, melainkan hanya menghapus biaya pesan.

Cara Kerja QR Studio

Layar kode QR profil di Telegram sudah ada sejak lama, di klien seluler, layar ini diwarnai dengan tema obrolan. QR studio menggantikannya dengan tiga tab — dalam kode qr_studio_tab_gift, qr_studio_tab_emoji, dan qr_studio_tab_color:

  • Hadiah. Latar belakang hadiah koleksi diletakkan di bawah kode, dan simbolnya diulang di sekelilingnya — dengan pola yang sama seperti hadiah itu sendiri.
  • Emoji. Pola dibuat dari emoji premium — emoji kustom dari paket yang tersedia dengan Telegram Premium.
  • Warna. Latar belakang dari palet warna.

Di sampingnya ada tombol siang dan malam: setiap varian digambar dalam versi terang dan gelap. Klien tidak menyimpan set latar belakang, melainkan memintanya dari server sebagai daftar shareThemeBackdrops dan menyimpannya dalam cache — tipe ini memiliki varian shareThemeBackdropsNotModified, yang digunakan server untuk merespons "daftar tidak berubah".

Desain yang dipilih tidak disimpan di perangkat, melainkan di server, sebagai pengaturan akun: di inti, ini adalah ShareTheme dengan varian shareThemeGift, shareThemeEmoji, shareThemeColor, dan shareThemeDefault, dan hadiah untuk latar belakang diteruskan dengan tipe inputShareThemeGift. Ini berarti kode QR yang sama akan terlihat identik di semua perangkat pemilik. Kartu yang sudah jadi dapat diekspor sebagai gambar — modul ini memiliki adegan ekspor terpisah dengan kode, pola, dan stiker.

Penerbitan ulang kode memiliki animasinya sendiri: lapisan layar disebut QrStudioShatter, QrStudioAshLayer, dan QrStudioParticle. Dilihat dari namanya, kode lama saat diganti akan hancur menjadi abu, dan kode baru akan terbentuk di tempatnya — untuk kode yang baru saja berhenti berfungsi, ini adalah perpisahan yang jujur.