Commentaires de transaction dans Tikka

Premier test sur un serveur externe au mien.

Envoi sur le serveur “wss://gdev.coinduf.eu”, le bloc # 4,073,116 a bien reçu mon batch transfer + remark.

DEBUG:root:Extrinsic ‘0xbdd40e82511c32faa00e0537aa6e7079343c1bd930eeb1c00426e7ab032e433a’ sent and included in block ‘0xd917479ccc562e5bea7ed4f3dc8a361e6f6f08ed44320370a9cdd46ac5093e0f’

@HugoTrentesaux est-ce que Squid a bien indexé mon commentaire ? :wink:

2 Likes

Je vois bien ton transfert : 4073116.

Il faut utiliser “remarkwithevent” et pas seulement “remark” parce que j’utilise les événements pour détecter le commentaire. Ça peut se discuter mais pour l’instant j’ai suivi le schéma classique : un indexeur regarde les événements, pas les directement les tx (sinon il faudrait regarder si c’est extrinsicsuccess ou extrinsicfailed).

Ça se passe autour d’ici : src/data_handler.ts · main · nodes / duniter-squid · GitLab.

Donc merci beaucoup d’avoir testé, il faut que je documente mieux. J’ai traqué ça dans #45 et essaye de m’y coller prochainement.

2 Likes

En bonus, je te montre comment l’indexeur détecte si le commentaire est un CID :

ici la remark en binaire correspond à un CID (donné en hexadécimal) et l’indexeur lui attribue donc une class “cid”

cela permet à duniter panel d’aller chercher sur IPFS le contenu de ce cid et l’afficher (pour l’instant seul le texte en clair est géré)

Avec cette méthode, on peut se contenter de publier juste un hash en blockchain et gérer la donnée offchain avec tous les cas de figure souhaités (commentaires chiffrés ou autre). On peut même joindre une image au commentaire de tx par exemple :

Duniter panel ne gère pas l’affichage, mais il fournit quand même un lien clicable qui redirige vers l’image sur une passerelle IPFS.

1 Like

J’ai fait un virement avec commentaire sur ton nœud au bloc # 4,156,131.

En utilisant maintenant “remark_with_event”.

Dis moi si tu as bien l’événement qu’il te faut pour l’indexer.

Je ne comprends pas cette question. Bien sûr qu’il est indexé puisqu’il est visible dans Duniter Panel :

Et rien n’est magique, tu peux vérifier toi même : https://duniter--vue-coinduf-eu.ipns.pagu.re/#/g1/5EAL8tSa5TQsxuiveWCY6TbmmFQbxGYNHKb7QtPRwj34Mtzz. Tu peux faire une requête à l’indexeur pour te rendre compte :

query TxVit {
  transfer(where: {blockNumber: {_eq: 4156131}}) {
    blockNumber
    fromId
    toId
    comment {
      remark
    }
  }
}
{
  "data": {
    "transfer": [
      {
        "blockNumber": 4156131,
        "fromId": "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY",
        "toId": "5EAL8tSa5TQsxuiveWCY6TbmmFQbxGYNHKb7QtPRwj34Mtzz",
        "comment": {
          "remark": "test commentaire avec event !!!"
        }
      }
    ]
  }
}

Pour info, je ne suis plus à plein temps sur le projet, donc toujours dispo pour répondre aux questions, mais je peux pas être présent pour aider à développer chaque feature. Il y a déjà plein d’exemples, il suffit de lire et de copier.

2 Likes