Open abhriyaroy opened 4 years ago
Thanks for the proposal - but as far as I see this WCIP needs more details like considerations on the upgrade path and backward compatibility.
I am not sure how to go about it without losing backward compatibility, but this is a necessary change. So, I am open to comments.
Current version needs to fix this one way or another when users start to use walletconnect with multiple DApps at once.
We can't just break WalletConnect backward compatibility at this point in time and need to offer a migration path. Perhaps we use the 2.0 initiative where pluggable transports are planned to do this change - but just changing it for 1.0 and breaking existing workflows is no option IMHO - perhaps @pedrouid has some ideas here.
Problem
Walletconnect v1.0 uses non-standard socket implementation which needs to be handled effectively on following scenarios:
Having multiple connections for each DApp is an inefficient way of handling sockets where optimization is essential.
Solution
Use the MQTT standard with
QoS=2
instead of custom socket implementations: https://mqtt.org/The bridge will work as MQTT broker and maintain only one connection per device.
Benefits for using MQTT over custom socket implementation:
QoS=2
. No need to write custom queueing for each device at bridge side