<div dir="ltr"><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">In my mind it&#39;s not like the client&#39;s phone is going all directions at the same time. There should be a priority method and fallback method(s). ​And I ​see p2p radio as priority, and web as fallback, and BIP21 in the end as always-working-default.<br>


</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">​So I&#39;m keeping support for it all while want to be able to provide best user experience. </div>


<div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">Mike, a while ago in ​this thread you&#39;ve described contactless cards user experience. I&#39;m also using contactless cards often, and what I&#39;m aiming at is creating same level of user experience for Bitcoin users. </div>


<div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)"><br></div><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">Encryption over bluetooth is a matter to worry about, and we will introduce that, but we need to sort out more low level problems first before coming into that stage. </div>


<div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)"><br></div><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)"><br></div><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">


So, the backwards compatibility is a good issue Michael pointed out. <br></div><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">While processing of multiple &quot;r&quot; parameters is indeed uncertain (since there is no RFC for that various implementations may behave differently), the array solution is somewhat better. The array parameter name is &quot;<span style="font-size:13px">r%5B1%5D=</span>&quot;, i.e. it&#39;s not &quot;r=&quot;, and we can add plain &quot;r=&quot; alongside. And if particular implementation understands the array construct - it will use it, otherwise it will ignore the &quot;<span style="font-size:13px">r%5B1%5D=</span>&quot; and use only usual &quot;r=&quot;. </div>


<br></div><div class="gmail_extra"><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">This doens&#39;t work though for cases where particular implementation understands array construct but doesn&#39;t work well with repeating parameters, since it will see two repeating &quot;r&quot; - an array and a string. I don&#39;t have a solution for that atm. </div>


<br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">If add completely new parameter to solve this we will need to make it an array straight away to address upcoming issues with accommodating other protocols. </div>


<div class="gmail_default" style="font-family:&#39;courier new&#39;,monospace;color:rgb(0,51,0)">And then I would also modify existing BIP72 to strictly define &quot;r=&quot; as &quot;http(s)&quot; ​only ​parameter, while all other protocols (bluetooth, WiFi Direct, ultrasound, chirp etc) should go to the new array parameter.</div>


<br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><span style="color:rgb(0,51,0);font-family:&#39;courier new&#39;,monospace">​</span><br></div></div>