Integration of Wallet Connect 2.0 Protocol for Wallets and dApps on Hedera #819
Replies: 16 comments 94 replies
-
Consensus on this HIP will inform changes to the docs that show up on WalletConnect - here's a link to an open PR - WalletConnect/walletconnect-specs#117 |
Beta Was this translation helpful? Give feedback.
-
@bugbytesinc what is your thinking behind the preface The first pass we took at method names were:
So it looks like proposal is to change:
looks like the |
Beta Was this translation helpful? Give feedback.
-
I suggest we add a |
Beta Was this translation helpful? Give feedback.
-
we should have a function for queries as well - https://docs.hedera.com/hedera/sdks-and-apis/sdks/queries |
Beta Was this translation helpful? Give feedback.
-
Starting a thread on Github governance. we've started a helper library here: https://github.com/hgraph-io/hedera-walletconnect-utils.
|
Beta Was this translation helpful? Give feedback.
-
Straw poll, which namespace do you prefer, please upvote this comment if you prefer the
method namespace. |
Beta Was this translation helpful? Give feedback.
-
Straw poll, which namespace do you prefer, please upvote this comment if you prefer the
method namespace. |
Beta Was this translation helpful? Give feedback.
-
Comments above discuss the pros and cons of choosing a namespace for the methods defined in this HIP. At the moment, there are two ideas: using this HIP’s number (820) as a namespace, resulting in the |
Beta Was this translation helpful? Give feedback.
-
I'm gonna choose hedera |
Beta Was this translation helpful? Give feedback.
-
It appears |
Beta Was this translation helpful? Give feedback.
-
Should we add an Account ID parameter to all new methods, just like it was done in Ethereum JSON-RPC specification? Since WalletConnect allows approving multiple accounts for a session, we'd want to be able to specify which account to sign with. cc: @zanctor |
Beta Was this translation helpful? Give feedback.
-
We may need to include some statement regarding error codes: First, it appears that 90%+ of the failure cases are already covered by the spec and codes enumerated in the
To be clear, we only need to cover errors that prevent a
So, the question is: what is considered good practice in the WC space for dealing with chain specific errors? I would think that the first choice might be to reach out to Wallet Connect to see if there is a set of error code numbers that are reserved specifically for chainids; or is it considered a good practice to address these custom edge cases directly in the network specific rpc call protocols themselves? |
Beta Was this translation helpful? Give feedback.
-
Not sure where one of my comments from yesterday went... it was related to including a "transactionType" to the I'm also thinking that (while out of scope just now) it may help future proof the implementation by enabling an "ethereum" transaction type so that wallets know to send the signed transaction to a JSON/RPC relay rather than a consensus node. This could be done as an optional flag/boolean in the future too I guess. |
Beta Was this translation helpful? Give feedback.
-
Starting a separate thread specifically on this comment by @gregscullard as this is good to call out specifically.
Wallets that implement using the Hedera-Ethereum JSON-RPC relay should be able to specify support via: // ------- namespaces builder util ------------ //
const approvedNamespaces = buildApprovedNamespaces({
proposal: params,
supportedNamespaces: {
hedera: {...},
eip155: {...}
},
});
// ------- end namespaces builder util ------------ // So unless we uncover something while implementing, I think we should be able to keep the |
Beta Was this translation helpful? Give feedback.
-
A topic that has been brought up is the concept of a The user story might be "As a wallet, I want to provide bespoke functionality only applicable to users and dApps of my wallet." Is this something we want to add to the spec or set a precedent of how to achieve this in WalletConnect? At the end of the day, dApps & wallets can send data back and forth whatever data through the messaging relay, though it might be helpful to create a field within certain functions that would accept user defined fields. From a conceptual level, the idea has roots in User Defined Fields in the FIX protocol - https://www.fixtrading.org/standards/user-defined-fields/ This would provide a way to extend the standard. |
Beta Was this translation helpful? Give feedback.
-
precheck code vs. transaction response for transaction methods. the hedera docs for the javascript/go/java sdks support a response object that has transaction id, node id, and transaction hash - https://docs.hedera.com/hedera/sdks-and-apis/sdks/transactions/submit-a-transaction we may ease some burden by returning this instead of the precheck code? @bugbytesinc does the .Net sdk support this format as well? I understand being as close to the HAPI responses as possible for payloads, though I wonder if in practice we're re-implementing this payload on the dApp side? |
Beta Was this translation helpful? Give feedback.
-
Thread to discuss HIP-820 Integration of Wallet Connect 2.0 Protocol for Wallets and dApps on Hedera
Beta Was this translation helpful? Give feedback.
All reactions