Em 21 de outubro, o Telegram ativou a transferência de presentes colecionáveis do perfil para a carteira integrada. O blockchain mostra o horário: o primeiro presente chegou à carteira do Telegram às 07:10 UTC, e das 07:00 às 12:00 UTC, presentes foram transferidos para carteiras do Telegram 2.624 vezes. No total, 3.639 presentes foram transferidos dos perfis para o blockchain nessas cinco horas. Além disso, 195 vezes um presente retornou da carteira do Telegram para o perfil. Em 19 de outubro, nas mesmas horas, quatro presentes passaram pelas carteiras do Telegram.

O que foi ativado

A funcionalidade de transferência já estava pronta nos clientes antes do lançamento. Entre 16 e 17 de outubro, as versões beta do Telegram para macOS e Android receberam métodos e strings de interface para transferir presentes do perfil para a carteira e vice-versa. Em 18 de outubro, as strings de transferência para iOS apareceram na plataforma de traduções. Em 20 de outubro, os mesmos métodos foram incluídos no esquema da API do Telegram Desktop (camada 232):

  • payments.withdrawStarGift transfere o presente para a carteira e responde simplesmente "sim" ou "não", sem link para o site. A requisição contém o campo tmp_password — a julgar pelo nome, a senha de autenticação de dois fatores (two-step verification), como na retirada de estrelas — e a flag keep_on_profile, que, pelo nome, mantém o presente visível no perfil;
  • payments.depositStarGift retorna o presente da carteira para o perfil. O destinatário é definido pelo campo peer, o que significa, de acordo com o esquema, que pode ser outra pessoa, e a flag hide_sender oculta o remetente. O servidor retorna o endereço NFT, a carga útil e o valor — aparentemente, para a transação que a própria carteira enviará em seguida;
  • No histórico da carteira, essa operação tem seu próprio tipo — walletTransactionPeerTelegramGift. No iOS, possui duas legendas: transferência do perfil e transferência para o perfil.

Anteriormente, era possível retirar um presente para o blockchain apenas através do site Fragment e somente para uma carteira TON externa: o Telegram fornecia um link para a retirada (o método getStarGiftWithdrawalUrl permaneceu no esquema). O novo método não retorna links; a transferência ocorre diretamente da interface do próprio Telegram.

Como isso é visível no blockchain

Não há links para o site na transferência, e o endereço de onde os presentes são enviados para o blockchain permanece o mesmo. Os presentes são emitidos no blockchain por um endereço que a TonAPI assina como Fragment Gift Minter. Esta é uma carteira highload, através da qual as retiradas via Fragment já eram realizadas. O presente é enviado a partir dela de uma das duas maneiras:

  • Emissão — o presente nunca esteve no blockchain, e o minter implanta um novo NFT no contrato da coleção (mensagem telemint_msg_deploy_v2);
  • Transferência — o presente já esteve no blockchain, depois foi retornado ao Telegram, e durante todo esse tempo o NFT permaneceu no endereço do minter. Agora o minter o reenvia com um nft_transfer comum.

O caminho inverso também passa por este endereço: o NFT é enviado para o minter com um comentário no formato Ref#…, e o Telegram credita o presente no perfil. Os retornos da carteira do Telegram são organizados da mesma forma que os retornos anteriores via Fragment: o endereço é o mesmo, o formato do comentário é o mesmo. Provavelmente, este comentário é a carga útil da resposta depositStarGift, mas isso não pode ser verificado no blockchain.

A carteira do Telegram difere das outras pelo código do contrato: a tg-wallet tem seu próprio hash de código. Por este hash, o destinatário de cada presente é dividido em dois tipos: carteira do Telegram ou qualquer outra.

As primeiras cinco horas

Horário — UTC, 21 de outubro. "Para a carteira do Telegram" — emissões e transferências, cujos destinatários possuem o código tg-wallet.

HoraTransferidos dos perfisDesses, para a carteira do TelegramRetornados da carteira do Telegram
07:00–08:002931942
08:00–09:001.04477830
09:00–10:0080166256
10:00–11:0084556348
11:00–12:0065642759
Total3.6392.624195

Para comparação, em 19 de outubro, das 07:00 às 12:00 UTC, 772 presentes foram transferidos dos perfis, e apenas quatro deles — para endereços que atualmente possuem o código da carteira do Telegram. Antes do lançamento, um presente chegava a tal endereço, aparentemente, por uma retirada comum via Fragment, onde o endereço do destinatário era especificado manualmente. Não houve retornos de carteiras do Telegram naquelas horas.

A primeira transferência para uma carteira do Telegram ocorreu às 07:10:31 UTC, a primeira emissão — às 07:11:05 (presente Fresh Socks), o primeiro retorno ao perfil — às 07:22:41.

Outras 451 emissões e 93 transferências nessas horas foram para endereços sem contrato implantado (undeployed). Tal endereço pode pertencer tanto a uma carteira do Telegram que ainda não teve nenhuma transação de saída, quanto a qualquer outra, por isso na tabela eles são contados apenas na primeira coluna. O código do destinatário foi obtido em 21 de outubro às 12:02 UTC.

Quem transfere

Os presentes foram recebidos por 1.019 carteiras do Telegram. 592 delas receberam um presente cada, e a maior recebeu 36 presentes. 126 carteiras retornaram presentes para o perfil.

Os presentes mais frequentemente emitidos para carteiras do Telegram foram Chill Flame (133 vezes), Liberty Figure (117) e Vice Cream (115). Todos os três números são emissões: essas instâncias entraram no blockchain pela primeira vez.

O que não é visível no blockchain

O blockchain mostra apenas o momento em que o minter enviou o presente. Não é possível saber quanto tempo se passou desde o clique no botão no perfil até a transação. A taxa de transferência, se houver, também não é visível: para cada emissão, o próprio minter envia 0,06 TON para o contrato da coleção, mas se o Telegram cobra algo do proprietário do presente, isso não é visível no blockchain. A transferência na interface não foi reproduzida para este artigo.