Have you seen ParrotTalk? http://www.squeaksource.com/Cryptography/ParrotTalk-HenryHouse.14.mcz
http://www.squeaksource.com/Cryptography/ParrotTalk-HenryHouse.14.mczRequiring http://www.squeaksource.com/Cryptography/Cryptography-HenryHouse.113.mcz http://www.squeaksource.com/Cryptography/Cryptography-HenryHouse.113.mczWhere could I find Seamless? I am doing similar with a project Raven: distributed objects over encrypted ASN.1/STON encoded connections. Thank you. Sent from ProtonMail Mobile On Wed, Nov 15, 2017 at 18:09, Cédrick Béler <cdric...@gmail.com> wrote: > Hi, > > sorry for the late reply Denis, > >> Can you show example how you work with your objects using this network? > > It’s not fully decided yet. I’m just trying to show that 2 peers A and B can > exchange and sync information without central server, but also considering > they have multiples devices (connected on demand P2P - offline first is a > major requirement). > > So for now, to test, I just connect A and B through basys by sending a > connection in both direction A->B B->A. I think ok keeping a "message hub » > specific to each interaction A can have with B(s), C(s)... A queue but that > kind of never deletes messages but changes its meta content - so as to sync > with other devices when they eventually connect). > > So for now, my need is quite simple regarding connections. > I used mostly for now #sendDataPacket: > > I could do it also with Zinc in HTTP. But, as always in Smalltalk, I explore > in plenty of directions and discover great stuffs like Seamless perfectly > usable and some less finished or older gems like BitTalk or UbiquiTalk… Very > interesting as I will need more functionalities to deal with decentralized > networks. > >> BasisNetworkStub is only created for tests. And I think it misses one >> important function: how identify peers. When your image get new connection >> it should identify what remote peer is connected by it. So two connections >> from same remote image should be identified as single peer instance on your >> local image. > > Yes, sure I’ve spotted that and I definitely need a way to identify > peer-devices (belonging to a peer realm/swarm). I’ll do later. > >> I would of course use Seamless for distributed applications because it >> allows to implement solution with objects locally and then transparently >> split them over network. >> But Seamless not implements any kind of message queue. So I would use some >> proven solution for it instead of custom implementation. But it can depends >> on the task. > > Do you think of something in particular ? :) > For now my queue will only be ordered collections or whatever simple > collection. It should be enough to start with. > >> >> >>> 2) or may I use Seamless straight with restrictions (I wonder if limiting >>> the classes that can be executed would suffice - proxies should only be on >>> the peer inbox and outbox I think) ? >> >>> 3) or maybe I should do a lighter version of seamless ? If so where should >>> I look at/change ? >> >> You can try subclass SeamlessNetwork and override request processing method >> with special restrictions on what requests are permitted. Maybe you can >> propose such kind of policy to the Seamless itself. > > Subclassing Seamless seems to be a very good simple and powerful possibility > (to get inspiration too) and I may do that. > > Anyway most of what I have to do is build a system that seamlessly present to > the user information extracted from messages (stored locally- versioned) => > its actually just transposing what you all are used too with tools like git > but applied to « general information exchange and processing ». > Enterprise information systems are so boring… they should be far more a la > smalltalk ^^ > > Cheers, > > Cédrick