package net import ( "encoding/json" "fmt" "github.com/vocdoni/dvote-relay/batch" "github.com/vocdoni/dvote-relay/types" "github.com/vocdoni/dvote-relay/data" shell "github.com/ipfs/go-ipfs-api" ) func Sub(topic string) error { subscription := data.PsSubscribe(topic) fmt.Println("Subscribed > " + topic) var msg shell.PubSubRecord var err error for { msg, err = subscription.Next() if err != nil { return err } payload := msg.Data() var e types.Envelope var b types.Ballot err = json.Unmarshal(payload, &e) if err != nil { return err } err = json.Unmarshal(e.Ballot, &b) if err != nil { return err } err = batch.Add(b) if err != nil { return err } fmt.Println("Got > " + string(payload)) } }