<stellar-slack>
<sacarlson> the next tool I need in multi sign is a way a group of signers can delete a member. I plan to have a master creator and the others in the group will inspect the envelope to verify that it does what is expected then sign it to delete the agreed member
<stellar-slack>
<sacarlson> after I get that working if posible I will also add the add member in the same manner
de_henne has quit [Remote host closed the connection]
<stellar-slack>
<sacarlson> I guess the tool should also allow an agreed amount to be sent from the joint acount to some agreed destination
de_henne has joined #stellar-dev
<stellar-slack>
<dzham> @sacarlson: this is still in the context of poker, or is it generalized?
<stellar-slack>
<dzham> I took a quick look at your readme, but it seemed to do quite a lot of things
<stellar-slack>
<sacarlson> it's needed for poker but it will be a part of the multi-sign-server tools set
<stellar-slack>
<sacarlson> yes it's a bit complicated at the lower levels but higher level functions take care of most actions
<stellar-slack>
<sacarlson> thanks for checking it out dzham
<stellar-slack>
<dzham> I’m only checking to see how much I can steal :)
<stellar-slack>
<sacarlson> no problem it's free
<stellar-slack>
<sacarlson> I just hope someone better than I will rewrite it and make it better
<stellar-slack>
<dzham> The big problem I see with a signing server is that is has to be supported by everyone, otherwise there’s not much point
<stellar-slack>
<sacarlson> you mean a single server? oh hooked into like horizion?
<stellar-slack>
<dzham> multi-sig signing server where you submit tx’s you want other people to sign
<stellar-slack>
<dzham> there has to be some kind of messaging to let people know they have pending signing requests
<stellar-slack>
<sacarlson> yes good point lets add that
<stellar-slack>
<dzham> there has to be some way of checking the progress
<stellar-slack>
<sacarlson> it has a status_tx function to check status of a tx
<stellar-slack>
<dzham> I know, I’m just thinking out loud about the general thing
<stellar-slack>
<sacarlson> good this is what I want to hear
<stellar-slack>
<dzham> I’ll probably hack something together during the weekend.
<stellar-slack>
<dzham> Ideally it would be distributed also, but that’s a tough one
<stellar-slack>
<dzham> Well, not really, but a lot easier to make it centralized
<stellar-slack>
<sacarlson> but I like the idea I think you saying like a ping back from a server to a prospective signer telling them there is a tx to sign or ping back that a change in status has happened
<stellar-slack>
<dzham> yeah, or a web socket you listen to
<stellar-slack>
<sacarlson> yes distributed is what I want but the basic protocal might still work
<stellar-slack>
<dzham> or event source, if that’s the flavour of the month
<stellar-slack>
<sacarlson> that's what it is a websocket now but I guess all the group would have to have an open websocket to get status changes
<stellar-slack>
<sacarlson> I guess js has tools for callback to get these to work. so I will leave that to you guys to make the call back tools to get status changes
<stellar-slack>
<sacarlson> event source? I will have to look that up. maybe give me a link for that
<stellar-slack>
<dzham> event source is what they’re using for subscriptions is horizon
<stellar-slack>
<sacarlson> cool I'll look at that, otherwise until I or someone else figures it out. I'll just have clients pole th status_tx at some interval
<stellar-slack>
<sacarlson> but the present problem I'm looking at is to break apart envelopes and have the clients analize them to verify there contents are as expected
DomKM has joined #stellar-dev
<stellar-slack>
<sacarlson> just like you have to have your lawyer read the contract before you sign it. now computers will be able to read and verify it for you
<stellar-slack>
<dzham> exactly
<stellar-slack>
<sacarlson> from a quick read on server-send_events it looks like all they do is polling any way interval = 500, // polling interval
<stellar-slack>
<sacarlson> so what would the advantage be?
<stellar-slack>
<sacarlson> it's just they run the script in the browser that does it I guess
<stellar-slack>
<sacarlson> so until I see they do more I'll stick with just polling from the client to who ever decides to be the server at the time
<stellar-slack>
<sacarlson> I thought there was a tool that does some kind of UPnP to allow clients to have the router open a listen port. if so that's what I want so they can get updates really from the server direct to the client in real time without polling
<stellar-slack>
<sacarlson> the other problem with this is that some routers don't support UPnP or the ISP can disable that feature
<stellar-slack>
<dzham> That’s what you’d use a web socket for.
<stellar-slack>
<sacarlson> a web socket won't work if the router won't pass it the port data
<stellar-slack>
<dzham> it’s just a keep-alive http connection where you change the protocol
<stellar-slack>
<dzham> initiated by the client
<stellar-slack>
<dzham> if you can browse the web, it should work
<stellar-slack>
<sacarlson> cool ya that's it then, so it's a two way websocket between the server and the client in some way
<stellar-slack>
<dzham> yup
<stellar-slack>
<sacarlson> I need an example in ruby to get a better understanding
<stellar-slack>
<sacarlson> I'll look for "websocket ruby " must be milions of examples
<stellar-slack>
<sacarlson> looks perfect it seems I can setup events on the client side that will be trigered by my mss-server sending them the signal telling them of the status changes. I'll add this soon
Kwelstr has quit [Ping timeout: 240 seconds]
stellar-slack has quit [Remote host closed the connection]
stellar-slack has joined #stellar-dev
Kwelstr has joined #stellar-dev
pixelbeat has joined #stellar-dev
de_henne has quit [Ping timeout: 264 seconds]
de_henne has joined #stellar-dev
<stellar-slack>
<eno> 'AAAAAOo1QK/3upA74NLkdq4Io3DQAQZPi4TVhuDnvCYQTKIVAAAACgAAH8AAAAACAAAAAAAAAAAAAAABAAAAAQAAAADqNUCv97qQO+DS5HauCKNw0AEGT4uE1Ybg57wmEEyiFQAAAAEAAAAAZc2EuuEa2W1PAKmaqVquHuzUMHaEiRs//+ODOfgWiz8AAAAAAAAAAAAAA+gAAAAAAAAAARBMohUAAABAPnnZL8uPlS+c/AM02r4EbxnZuXmP6pQHvSGmxdOb0SzyfDB2jUKjDtL+NC7zcMIyw4NjTa9Ebp4lvONEf4yDBA==' will this string be a fine Transaction Envelope ? and if so , what's the hex result of this ?
<stellar-slack>
<sacarlson> from just looking it apears to be an envelope in base64 want me to try it?
<stellar-slack>
<sacarlson> we normaly submit in this format
<stellar-slack>
<bartek> it's a correct TransactionEnvelope. to check hex result you need to submit it to horizon/stellar-core.
<stellar-slack>
<sacarlson> @eno I did some decoding on it and I can see it's a native payment of 1000 luments
<stellar-slack>
<eno> 1000 stroops ?
<stellar-slack>
<sacarlson> oh that might be stoops. I'll send it to verify
<stellar-slack>
<eno> yes thank you sacarlson, what's the hex value you use ? use binascii.hexlify() in python it give a '414141...' and , if i put this transaction envelope into js-stallar-base , build a new Transaction object x ,then x.toEnvelope().toXDR('hex') give me another '00000000...'
<stellar-slack>
<sacarlson> we don't send in hex we send it in base64
<stellar-slack>
<sacarlson> you might be reading the docs that are incorect
<stellar-slack>
<sacarlson> I'm bringing up my stellar-core now it takes about 300 sec
<stellar-slack>
<sacarlson> @eno but when I send your transaction I'm getting Stellar::TransactionResultCode.tx_bad_seq(-5)
<stellar-slack>
<eno> submit a envelope to stellar-core directly ?
<stellar-slack>
<sacarlson> so there is an error in how you get the seqnum or maybe you already sent the transaction and I'm just resending it
<stellar-slack>
<sacarlson> yes I have the option to send my transactions to my local core as I do. but mostly run it to get more details from the stellar-core database
<stellar-slack>
<sacarlson> my code can run both ways to stellar-core or to horizion
<stellar-slack>
<eno> so good news is my constructor works well as far as now. bad news is i does not find a easy verify /submit method , still need to go
<stellar-slack>
<sacarlson> did you already send the transaction?
<stellar-slack>
<sacarlson> if not then you still have sequence number problems
<stellar-slack>
<eno> i tried . send the hex of it to horizon ,and horizon told me 500 . i send the hex to @buhrmi 's http://validator.stellar-core.org:11626/tx?blob= and it told me {"exception": "bad value of type in PublicKey"}
<stellar-slack>
<sacarlson> so you have two problems. even if you send it corectly in base64 NOT hex you have a sequence number problem
<stellar-slack>
<sacarlson> send the blob in the original format you displayed
<stellar-slack>
<sacarlson> what is the account number of the account source?
<stellar-slack>
<sacarlson> I could decode it from the envelope data but that will take me more time
<stellar-slack>
<sacarlson> for that I get Stellar::TransactionResultCode.tx_bad_auth(-6)
<stellar-slack>
<sacarlson> I took out the b'
<stellar-slack>
<eno> :scream_cat:
<stellar-slack>
<sacarlson> that might indicate that the key information I guess. maybe publish your code so we can get an idea why
<stellar-slack>
<eno> good idea
<stellar-slack>
<sacarlson> my guess is the signature is messed up
<stellar-slack>
<sacarlson> inspecting the envelope I can see the seq is now corrected
<stellar-slack>
<sacarlson> this is what I see in your envelope
<stellar-slack>
<sacarlson> I also can't figure out how to send an base64 envelope with the curl interface on horizon to provide eno an alternative know working method to send his envelopes
<stellar-slack>
<sacarlson> I tried this:
<stellar-slack>
<sacarlson> but only get {"type":"server_error","status":500,"title":"Internal Server Error","instance":"request://670f2a2d-1ede-4214-a5ec-2aaf43bc06ce"}
<stellar-slack>
<bartek> @sacarlson: you should change `data-binary` to `data`
<stellar-slack>
<sacarlson> ok
<stellar-slack>
<sacarlson> same error seen {"type":"server_error","status":500,"title":"Internal Server Error","instance":"request://80e5f72c-6318-46d1-bdf2-8507f7e79ae3"}
<stellar-slack>
<bartek> try changing content type to `application/json` and data to `{"tx": "yourtxbase64"}`
<stellar-slack>
<sacarlson> well I'm out of time, what ever is needed it should be changed on your API documents page
<stellar-slack>
<scott> Ah, thanks. I’ll get that fixed today as well (I haven’t had time to work on go-stellar-base’s code much lately)
<stellar-slack>
<eno> scott: when i submit my blob, i got {"exception": "bad value of type in PublicKey"} , and which part of the transaction envelope i should check from ?
<stellar-slack>
<scott> I’m not sure… there’ve been a couple of revisions to the xdr since I last re-generated the code for go-stellar-base
<stellar-slack>
<eno> ok. i tried with a python generator :) i can pack a Transaction Envelope,and unpack it . also can unpack envelope fetched from horizon. i can't find the bug out ,maybe i need new glasses.
<stellar-slack>
<sacarlson> bartek unfortunately the horizon repo apiary is the first place developers find to start attempted trails of inputing to the horizon network so I should assume you should at LEAST try to keep that updated for the basic functions of transaction submission. I have personally suffered from it and I now see other developers going though the same problems I did because of it.
pixelbeat has quit [Ping timeout: 244 seconds]
<stellar-slack>
<sacarlson> but I do note that the link you provided @bartek looks good and seems to be working
<stellar-slack>
<sacarlson> however I would expect at some point the user interface for horizon might also convert the error code a more human readable content as my multi-sign-server already does
<stellar-slack>
<scott> @sacarlson: I am in fact working on the better error messages at this moment
<stellar-slack>
<sacarlson> also I've added the version of the stellar-core that is controlled and the version of the mss-server that is running that I hope you will also add to horizon at some point as you seem to change versions without telling
<stellar-slack>
<bartek> > @bartek unfortunately the horizon repo apiary is the first place developers find this will be removed/hidden soon (I can't do this unfortunatelly).