IRC log of apps on 2017-01-10
Timestamps are in UTC.
- 14:58:08 [RRSAgent]
- RRSAgent has joined #apps
- 14:58:08 [RRSAgent]
- logging to http://www.w3.org/2017/01/10-apps-irc
- 14:58:22 [Ian]
- Meeting: Payment Apps Task Force
- 14:58:24 [Ian]
- Agenda: https://lists.w3.org/Archives/Public/public-payments-wg/2017Jan/0025.html
- 14:58:26 [Ian]
- Chair: Ian
- 14:58:28 [Ian]
- Scribe: Ian
- 14:59:49 [Ian]
- present+ Ian
- 14:59:52 [Ian]
- present+ DavidJ
- 14:59:56 [Ian]
- present+ Jenan
- 15:01:09 [adamR]
- adamR has joined #apps
- 15:01:26 [Ian]
- present+ AdamR
- 15:01:34 [Ian]
- regrets+ Tommy
- 15:01:41 [Ian]
- present+ Pascal
- 15:02:01 [alyver]
- alyver has joined #apps
- 15:03:32 [Ian]
- topic: Next meetings
- 15:03:38 [Ian]
- 12 Jan: Developer sync up (chaired by Conor)
- 15:03:38 [Ian]
- https://lists.w3.org/Archives/Public/public-payments-wg/2017Jan/0017
- 15:04:15 [Ian]
- Next call of this task force: 17 Jan
- 15:04:28 [Ian]
- IJ: regrets for 17th?
- 15:04:30 [Ian]
- [none]
- 15:04:38 [Ian]
- Topic: Recent changes to Payment App API
- 15:04:50 [Ian]
- https://github.com/w3c/webpayments-payment-apps-api/pull/80
- 15:05:30 [Ian]
- present+ Andrew
- 15:05:35 [Ian]
- present- Andrew
- 15:05:36 [Ian]
- present+ Andre
- 15:08:01 [Ian]
- https://w3c.github.io/webpayments-payment-apps-api/#payment-app-identification
- 15:08:12 [Ian]
- We have:
- 15:08:14 [Ian]
- * Payment apps
- 15:08:20 [Ian]
- * Payment app manifests
- 15:08:26 [Ian]
- * Service worker JS
- 15:08:39 [Ian]
- (Payment method URLs and manifest files)
- 15:09:13 [Ian]
- https://w3c.github.io/webpayments-payment-apps-api/#dfn-payment-app-identifier
- 15:09:45 [Ian]
- + <li>We expect to identify Web-based payment apps with URLs. Dereferencing a payment app identifier will provide service worker code for the payment app.</li>
- 15:10:08 [Ian]
- IJ: What should the spec say about payment app identifiers?
- 15:10:14 [Ian]
- AdamR: The new text seems ok
- 15:10:21 [Ian]
- present+ Evgeny
- 15:10:40 [Ian]
- adamr: The service worker code is not sufficient for registration.
- 15:11:06 [Ian]
- IJ: What does the registration function need?
- 15:11:54 [Ian]
- adamr: The service worker provides payment app manifest data for registration
- 15:14:32 [pascal_bazin]
- q+
- 15:14:39 [Ian]
- AdamR: We could specify that in the JS file, there is a function with a specific name that is responsible for registering the service worker if it's not already registered.
- 15:14:43 [Ian]
- ack pas
- 15:15:02 [Ian]
- pascal_bazin: Maybe the problem is that we didn't really what registration is. ...
- 15:16:06 [Ian]
- + <li>It defines mechanisms that may be used to support Web-based payment apps. We anticipate that various platforms will offer proprietary alternatives to this specification (e.g., for payment app registration or invocation). Proprietary payment apps lie outside the scope of this specification.</li>
- 15:16:21 [Ian]
- In this specification, registration means registration
- 15:16:21 [Ian]
- +of a service worker with the user agent.
- 15:16:21 [Ian]
- +Registration provides the user agent
- 15:16:21 [Ian]
- +with access to a payment app manifest, which
- 15:16:21 [Ian]
- +includes information such as names, icons, etc. Registration does <strong>not</strong> refer to how the user establishes a relationship with the
- 15:16:23 [Ian]
- +payment service provider, for example by setting up an account with that
- 15:16:25 [Ian]
- +provider.</li>
- 15:16:34 [Ian]
- ====
- 15:17:30 [Ian]
- AdamR: Let's look at a single example service worker....
- 15:17:37 [adamR]
- https://github.com/mdn/sw-test/blob/gh-pages/app.js
- 15:18:04 [Ian]
- ..I think that having a single URL for JS code is fine
- 15:18:09 [Ian]
- ...as long as it knows to install itself.
- 15:23:11 [Ian]
- merchant needs to provide a URL that identifies code from the payment app providers.
- 15:23:18 [Ian]
- ..part of that code registers the service worker.
- 15:23:39 [Ian]
- ..the question is whether we can put that code in the same file that contains the service worker code
- 15:24:05 [Ian]
- q+ to ask what we call the wrapper code
- 15:24:24 [Ian]
- ack me
- 15:24:24 [Zakim]
- Ian, you wanted to ask what we call the wrapper code
- 15:24:32 [Ian]
- IJ: What can we call the code shown in example 1?
- 15:25:11 [Ian]
- "payment app registration code"
- 15:25:27 [Ian]
- - A payment app identifier can be deferenced to get payment app registration code
- 15:25:37 [Ian]
- - payment app registration code is responsible for service worker registration
- 15:25:55 [Ian]
- - Implementation detail: can both the registration code and the SW code co-exist in one file?
- 15:27:42 [Ian]
- IJ: I think the payment app identifier needs to be in either the registration code or the service worker code so that the browser can tell whether the user already has a merchant-recommended payment app?
- 15:29:18 [Ian]
- AdamR: When we have a recommended app, we need the merchant to say "here's the service worker app I want you to use...and if it's not installed already, here's the registration code."
- 15:30:03 [Ian]
- IJ: Does the merchant provide code or pointer to JS?
- 15:30:05 [Ian]
- AdamR: Pointer to JS
- 15:31:11 [Evgeny]
- Evgeny has joined #apps
- 15:31:42 [Ian]
- AdamR: Service workers have identifiers (domain + path)
- 15:32:32 [alyver]
- Two URLS is easier for merchants to manage than having to manage actual code
- 15:32:45 [Ian]
- AdamR: We may need to think of ways to make this cleaner
- 15:33:56 [Ian]
- What should we call the URL? "Payment app registration URL"?
- 15:34:11 [adamR]
- https://pastebin.mozilla.org/8961074
- 15:34:14 [Ian]
- AdamR: I'd like to get someone who is familiar with service workers to look at this
- 15:35:17 [Ian]
- ...also at registration time, when service worker succeeds, the service worker will be invoked and can trigger an "Install" event
- 15:35:38 [Ian]
- ...for payment apps that are expected to operate in a recommended app context, the pattern could be that you listen on install and set the manifest at that time
- 15:36:06 [Ian]
- ========
- 15:37:24 [Ian]
- AdamR: Recommended apps can set manifest on "install" event.
- 15:37:54 [Ian]
- IJ: So walk through the flow:
- 15:38:24 [Ian]
- 1) The payment request includes one or more URLs that are payment app identifiers - they indicate service worker JS code
- 15:38:29 [Ian]
- (along with name, icon)
- 15:38:48 [Ian]
- 2) When that's passed to the browser, the browser looks to see whether the user has already registered a service worker with that id
- 15:39:08 [Ian]
- 3) If not presently installed, then we display it to the user.
- 15:39:22 [adamR]
- navigator.serviceWorker.register('/exampleapp.js')
- 15:39:29 [Ian]
- 4) If the user selects it, then the browser registers the service worker using that payment app identifier.
- 15:40:08 [Ian]
- 5) On registration, the service worker would add an event listener for "install" which would then be called.
- 15:40:31 [Ian]
- 6) Code in the service worker would call a function to set up the manifest
- 15:43:52 [Ian]
- ===> 4) Upon selection, the code calls register on navigator.ServiceWorker.
- 15:44:36 [Ian]
- IJ: Should we do the "install" routinely?
- 15:44:43 [Ian]
- AdamR: If it works, doesn't seem like a bad pattern
- 15:46:05 [Ian]
- ACTION: Ian to take a stab at revising the script based on this description.
- 15:47:05 [Ian]
- https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/register
- 15:47:12 [Ian]
- ServiceWorkerContainer.register(scriptURL, options)
- 15:47:20 [Ian]
- IJ: So is this a scriptURL for a service worker?
- 15:47:30 [Ian]
- https://www.w3.org/TR/service-workers/#service-worker-container
- 15:47:55 [adamR]
- https://www.w3.org/TR/service-workers/#service-worker-concept
- 15:48:09 [Ian]
- "A service worker has an associated script url (a URL)."
- 15:48:44 [Ian]
- IJ: I won't merge the edits yet; we'll do another round.
- 15:49:14 [Ian]
- topic: Issue 79: How does the payee provide information about recommended payment apps?
- 15:49:35 [Ian]
- IJ: This is a change to PR API.
- 15:50:31 [Ian]
- (No volunteers yet)
- 15:51:54 [Ian]
- ACTION: AdamR to draft how PR API would change to allow-payee recommended payment apps, due 2017-01-24
- 15:52:09 [Ian]
- topic: Issue 73
- 15:52:19 [Ian]
- Rouslan to look into how progress web apps could help us understand
- 15:52:19 [Ian]
- how to manage UI in different contexts.
- 15:52:19 [Ian]
- (Postpone)
- 15:52:30 [Ian]
- topic: Issue 23: Analyse security properties of payment app execution environment
- 15:52:45 [Ian]
- https://github.com/w3c/webpayments-payment-apps-api/issues/23
- 15:53:55 [Ian]
- AdamR: I would hesitate to restrict too much
- 15:54:18 [Ian]
- ...we will want access to web authentication here
- 15:54:31 [Ian]
- ...the example I've been giving is "what if someone wants access to the camera for biometric auth"?
- 15:56:28 [Ian]
- IJ: Let's leave open for now
- 15:57:46 [Ian]
- topic: FPWD?
- 15:57:54 [Ian]
- IJ: Do we still want to this month?
- 15:58:04 [Ian]
- ..what else do we need in the spec in order to be happy to go to FPWD?
- 15:58:31 [Ian]
- IJ: Proposed
- 15:58:41 [Ian]
- * Finish "recommended app edits' (that includes IJ, AR actions)
- 15:58:52 [Ian]
- * Finish openWindow action from Rouslan
- 15:59:03 [Ian]
- * Resolve 81 and 82
- 15:59:44 [Ian]
- IJ: Think about that this week for discussion at next call.
- 16:01:27 [Ian]
- topic: Next meeting
- 16:01:34 [Ian]
- 17 Jan
- 16:01:47 [Ian]
- rrsagent, make minutes
- 16:01:51 [Ian]
- rrsagent, make minutes
- 16:01:51 [RRSAgent]
- I have made the request to generate http://www.w3.org/2017/01/10-apps-minutes.html Ian
- 16:01:53 [Ian]
- rrsagent, set logs public
- 16:02:18 [alyver]
- alyver has left #apps
- 17:33:47 [Zakim]
- Zakim has left #apps
- 18:12:03 [Ian]
- rrsagent, bye
- 18:12:03 [RRSAgent]
- I see 2 open action items saved in http://www.w3.org/2017/01/10-apps-actions.rdf :
- 18:12:03 [RRSAgent]
- ACTION: Ian to take a stab at revising the script based on this description. [1]
- 18:12:03 [RRSAgent]
- recorded in http://www.w3.org/2017/01/10-apps-irc#T15-46-05
- 18:12:03 [RRSAgent]
- ACTION: AdamR to draft how PR API would change to allow-payee recommended payment apps, due 2017-01-24 [2]
- 18:12:03 [RRSAgent]
- recorded in http://www.w3.org/2017/01/10-apps-irc#T15-51-54