diff --git a/bindings/e2eAuth.go b/bindings/e2eAuth.go index 57ea1fe4fa1bb8306951a4c2ae0c23e923678546..b2277eb3e3c77ae54ab933dae3b23c9edee9ef25 100644 --- a/bindings/e2eAuth.go +++ b/bindings/e2eAuth.go @@ -8,6 +8,7 @@ package bindings import ( + "encoding/json" "gitlab.com/elixxir/client/xxdk" "gitlab.com/elixxir/crypto/contact" "gitlab.com/elixxir/primitives/fact" @@ -38,17 +39,26 @@ import ( // // Returns: // - int64 - ID of the round (convert to uint64) -func (e *E2e) Request(partnerContact []byte, myFactsString string) (int64, error) { - partner, err := contact.Unmarshal(partnerContact) +func (e *E2e) Request(partnerContact, factsListJson []byte) (int64, error) { + var factsList []Fact + err := json.Unmarshal(factsListJson, &factsList) if err != nil { return 0, err } - myFacts, _, err := fact.UnstringifyFactList(myFactsString) + partner, err := contact.Unmarshal(partnerContact) if err != nil { return 0, err } + myFacts := fact.FactList{} + for _, f := range factsList { + myFacts = append(myFacts, fact.Fact{ + Fact: f.Fact, + T: fact.FactType(f.Type), + }) + } + roundID, err := e.api.GetAuth().Request(partner, myFacts) return int64(roundID), err