<div>Good morning Jan,<br></div><div><br></div><div>Thank you very much your kind words.<br></div><div><br></div><div>Indeed, this is why I want to make, plugin system for autopilot.<br></div><div><br></div><div>I want to make easy, making various algorithms for funding and closing channels.<br></div><div><br></div><div>(even if we cannot make plugin system immediately, it will at least (hopefully) make implementing and mixing multiple algortihms easy a little...)<br></div><div><br></div><div>--<br></div><div><br></div><div>I conceptualize a little more.<br></div><div><br></div><div>Periodically, autopilot (really, driver) wakes up.  For example, every 10 seconds (settable).<br></div><div><br></div><div>Algorithms have two entrypoints: (1) periodic call entry point (2) funding channel entry point.  Entry points are optional, algorithm can have one or other or both (pointless algorithm has none).<br></div><div><br></div><div>On the periodic cycle, driver calls the algorithm wrangler to enter the periodic call entry point of configured algorithms.<br></div><div><br></div><div>In the periodic cycle, algorithms can propose existing channels to be closed.  If so, driver will close proposed channels to close.<br></div><div><br></div><div>Then, driver checks `listfunds` to look for onchain funds.  If onchain funds exist, driver will look for proposed peers in its list (this starts empty).  If the list of proposed peers is empty, it calls wrangler to enter the funding channel entry point of configured algorithms; algorithms should propose nodes to fund in this entry point (if no algorithms propose nodes to fund, driver will cry itself back to sleep).<br></div><div><br></div><div>Algorithms that want to close based on some rule will hook into the driver via the periodic call entry point, and check the rule (although algorithms need to be carefully designed not to be too aggressive to propose closure).  Algorithms that want to fund channel based on some rule will hook into the driver via the funding  channel entry point.  Algorithms that want to monitor some status (e.g. maybe the algorithm tries to judge uptime of nodes by pinging them periodically, and propose nodes with high uptime for channeling) it can hook by periodic call entry point.<br></div><div><br></div><div>This also ties in to the need for channel statistics (to have good judgment point of when to close them), which we currently do not have.<br></div><div><br></div><div>Regards,<br></div><div>ZmnSCPxj<br></div><div><br></div><div class="protonmail_signature_block"><div class="protonmail_signature_block-user protonmail_signature_block-empty"><br></div><div class="protonmail_signature_block-proton">Sent with <a href="https://protonmail.com" target="_blank">ProtonMail</a> Secure Email.<br></div></div><div><br></div><div>‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐<br></div><div> On March 22, 2018 4:17 PM, Ján Sáreník <jajomojo@gmail.com> wrote:<br></div><div> <br></div><blockquote class="protonmail_quote" type="cite"><div dir="auto"><div>Good morning ZmnSCPxj!<br></div><div><br></div><div dir="auto" class="gmail_quote"><div dir="ltr">On Thu, Mar 22, 2018, 05:14  <<a href="mailto:ZmnSCPxj@protonmail.com">ZmnSCPxj@protonmail.com</a>> wrote:<br></div><blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" class="gmail_quote"><div>--<br></div><div><br></div><div>In addition, we want to consider the question of closing channels.<br></div><div><br></div><div>Obviously we will want good statistics, e.g. how many payments we have succeeded on that channel, how much those payments are, etc.<br></div><div><br></div><div>A similar system for algorithms could be done too, although I am unsure how the driver decides when to close channels.<br></div></blockquote></div><div dir="auto"><br></div><div dir="auto">What about a simple bittorrent-like ratio comparing the fee that was paid for opening the channel and the amount which flew through the channel?<br></div><div dir="auto"><br></div><div dir="auto">I like the idea of autopilot. Thank you for putting it into words!<br></div><div dir="auto"><br></div><div dir="auto">Best regards, Ján<br></div></div></blockquote><div><br></div>