it has come to my attention that the mobile app will suck up over 400MB if left open for 20+ minutes, this is not good. The nice thing is that this is a real-time wallet, no refresh is needed- Watch the block number in the bottom right corner. When someone sends you some money it shows up in the normal 3 seconds. Thing is, that real-time connection is sucking up my data plan! This friday (2 more days) I will be uploading the alpha 9 release and it has the 3 minute auto-close feature working. That will help *limit* data usage, but leaving your mobile wallet open for even 3 minutes might STILL suck up around 60MB grrrr - anybody have any idea why the socket is eating so much data? Is it downloading a frign movie or something? wtf
@svk @valzav @xeroc Any ideas on how I can limit the data usage?
If you're using the websocket connection as is from the witness_node you'll get spammed with loads of object updates that you have no interest in. Your best bet would be to implement a data layer that would filter the objects coming from the witness node and then only send out updates to items that actually interest you.
For some reason on every new block the 2.4.33 or 2.4.34 objects get pushed from the witness_node, and it's a HUGE object containing feed data for every single asset. If you can filter out that you should be fine...
Anyone can run a full node to provide the service you need.
Responsibilities of "the witnesses" (if you mean the block producers) don't include providing API services to clients for sure. Hosted wallet service provider (E.G. OpenLedger) is most likely to provide such API service.
I see this service a business opportunity.
nothing you can do on your end since you have to receive the data before you can filter it ..
No there is, what I'm saying is he needs to filter the outgoing data from the witness node using a proxy server. A node websocket server using socket.io should do the trick. He would need to host his own witness_node then obviously.
So, I would need to have the mobile wallets all connect to one dedicated witness node? Could we just have a few/all of the Witnesses provide this as an option to their service? So, for mobile clients, the Witnesses will only serve up just the filtered stuff? Heck, this might be a great value-add for all Witnesses, no? Many more mobile wallets will be released after our I'm sure. Thoughts?
Sounds like a paid service? Interesting..
@svk @abit @xeroc @bytemaster As more mobile wallets get out there (well, and regular wallets too), I can see the bandwidth requirements at the Witness nodes going up substantially. Witness pay is low enough as it is, so we'd better address this bandwidth issue sooner than later. Better to fix these issues now rather than wait until thousands of people have their wallets all open at the same time and Witnesses become inaccessible, can't afford to serve it up, etc. Thanx for any attention you can give to this issue soon guys please
Ken, you quoted my message but didn't understand it imo.
Witnesses have nothing to do with this bandwidth issue. It's up to online service providers for example OpenLedger to consider it. Witnesses don't provide a service to let your mobile wallet be able to connect to, but OpenLedger does.
Witnesses care more about bandwidth increasing caused by amount of transactions increasing though.