Giter VIP home page Giter VIP logo

Comments (9)

shekhar-shubhendu avatar shekhar-shubhendu commented on July 17, 2024 1

Let's take a simple case and don't go with the multiple aepps in a single tab(but as per the design the aex-2 will support that too)

  • as you can see from the text in aex-2 the aepp is making a connection request to wallet and not the other way round.
  • therefore, when you have an extension based wallet the aepp loaded in a tab might not know if the extesnion is there or not or to which extension it will have to connect to.
  • to make it easy or the aepp for finding extension wallet we have wallet.awaiting.connection notification. so whenever the extension loads it broadcasts(or sends to a specific tab) the above notification to let the aepps know.
  • any aepp present can intercept this notification and then initiate a 1-1 connection with the wallet.

from aexs.

shekhar-shubhendu avatar shekhar-shubhendu commented on July 17, 2024

question too vague and does not defines things that it can be processed further. please be more descriptive and provide few examples and use cases for both the scenarios.

from aexs.

davidyuk avatar davidyuk commented on July 17, 2024

In general, Wallet and Aepps communicate in some network that should have a specific topology that depends on the transport used. Let's check possible topologies.

Star network topology (Wallet is in the middle)

In this case, the Wallet can exchange messages with Aepp directly, so I don't see reasons for identification in this case, as far as it should be already implemented by transport.

Bus network topology

Wallet and several aepps connected to the same bus (all messages are broadcasted). In this configuration, AEX-2 is not working because Wallet can't send wallet.request.connect request to specific aepp.

Is there any other network topologies that are compatible with AEX-2?

from aexs.

shekhar-shubhendu avatar shekhar-shubhendu commented on July 17, 2024

Defining the transport layer incl. connection set up between wallet and aepp is currently out of scope and will not be added to the AEX.

from aexs.

davidyuk avatar davidyuk commented on July 17, 2024

I think AEX-2 should at least require an ability to send and receive JSON documents between aepp and wallet, doesn't it? Is a direct connection between wallet and aepp required or not?

If you say "direct connection required" then the most of the transport layer stuff will become "out of scope". But right now, AEX-2 has some pretension to be able to work in other environments that should be investigated.

from aexs.

davidyuk avatar davidyuk commented on July 17, 2024

@shekhar-shubhendu can you confirm that the current version of AEX-2 requires a direct connection (without third parties connected to the same bus) between aepp and wallet?

from aexs.

shekhar-shubhendu avatar shekhar-shubhendu commented on July 17, 2024

yes and no.
For AEX-2 to work there should be a direct connection and you can see it in the reference implementation provided.
For AEX-2 to set up connection, depends from case to case. for eg. in case of browser extension the wallet needs to do a broadcast message for the apps to detect it and initiate a direct connection.

from aexs.

davidyuk avatar davidyuk commented on July 17, 2024

Can an extension send a message to a particular tab? Or you mean that inside of browser tab, there can be several aepps?

from aexs.

davidyuk avatar davidyuk commented on July 17, 2024

Ok, thank you!

from aexs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.