Comments (4)
the reason is that I don't want my app to be tied to a web socket framework, I could swap one framework by the other just replacing the implementation
tbh, I don't believe it makes sense or is a well-defined goal, but in general, I'd have a look at the "sans IO" approach https://sans-io.readthedocs.io/
from autobahn-python.
By the way, this indirection may seem unnecessary, but actually, the App class in my project does not even know the shape of the WebSocket subscribe message, here it does to keep it simple. I used to have another abstraction layer on top of the AutobahnWsClient and that's what the App has a reference to, it is what actually knows how WebSocket messages look like, the App is only notified when data (after decoding and formatting it by the abstraction layer) is available, this "architecture" is very common and that's the thing I want to do.
from autobahn-python.
Autobahn already is non-blocking, so you don't have to do anything extra, just use it. Or fork it!
from autobahn-python.
Autobahn already is non-blocking, so you don't have to do anything extra, just use it. Or fork it!
Hi. Yes I know, what I am trying to say is if someone could help me figure out some way of using autobahn to get my question done, please. It is not anything very complex and specific to my app it is just a general concept that I think many would benefit from too.
from autobahn-python.
Related Issues (20)
- asyncio rawsocket clients crash on WELCOME message HOT 1
- Twisted + websockets + TLS (wss) gives "invalid certificate" in Safari (and only there)
- wss:// URIs are not recognized HOT 2
- Successful connection doesn't reset the exponential backoff state HOT 2
- Update asyncio examples HOT 1
- Rapid Cancelling Of Tasks Can Cause InvalidStateError
- Release 22.11.1 HOT 1
- Undefined behavior for using WAMP features not agreed during feature negotiation HOT 9
- Adjust CI to deploy wheels to PyPI HOT 4
- RTD build for latest broken HOT 1
- 'Distribution' object has no attribute 'convert_2to3_doctests' HOT 1
- component._stopping attribute never cleared HOT 6
- Save the chat results to the database
- Bad error handling in the autobahn_autoreconnect file
- connection lost while called for Twisted, bug-like issue HOT 8
- For version greater than `19.3.3`, autobahn is not able to run in background thread
- Autobahn and pyInstaller not compatible anymore HOT 9
- Crossbar won't start when Installed with Pip HOT 3
- "RuntimeError: Event loop is closed" when running tests with pytest-asyncio 0.23.5.post1 HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from autobahn-python.