dickhardt / a2p3_agent Goto Github PK
View Code? Open in Web Editor NEWPersonal Agent for A2P3
Personal Agent for A2P3
wrap text on all error message dialogues
Enrolling the phone, after scanning the QR code, the app goes back to the "Welcome to your personal agent" page and prompts to scan the QR code again
If the Agent was registered against an earlier DB of the A2P3 servers, it will no longer have a valid token and potentially device.
When calling Registrar /request/verify the Agent will get the following error:
INVALID_TOKEN unrecognized agent token
The Agent should alert the User and abort the transaction.
No solutions researched yet.
Solve the focus to next input field problem with popup keyboard OR use a single input element.
This is not implemented in the sample app
Easier to track bugs if we know what version we are running.
Demo link should be:
Focus is being set on pageshow. I think the backbone render event erases the focus.
Browser click events are too slow in iPhone device making the pin pad noticably slow. This is a widely known issue. Several solution include google fast button or a simple touch start event.
http://floatlearning.com/2011/03/developing-better-phonegap-apps/
support the "remember me" function by listening for push notification from mobile locator service.
A common issue with jquery mobile and backbone.js. More investigation required.
dick: Useful to show the keypad letters on T9 key pad as some people use a mnemonic to remember their pin.
window.location.href doesn't do anything from within backbone
Steps:
install agent (do not open)
goto setup.a2p3.net, register, enroll iOS agent, on phone
Agent is loaded, but prompts to scan enrollment QR code
Short-term quick fix make buttons bigger font and separated.
Long-term make nice icons.
The redirect response to the App does not change of course.
"Clinic is requesting:"
"Clinic requests:"
The font should probably be a little smaller for this title so that apps with longer names will work easily.
Also, would be nice if the buttons were larger and said
[Cancel] [Authorize]
tracing...
Once complete or a new request arrives, purge the agent request and enrolment session collections.
When device is reset, the Notification Device Token is not regenerated
waiting on a2p3 issue to resolve.
Change to jquery mobile dialogue.
no reason not to be consistent, both point to same place for now
I openned an account using agent on a2p3.net
I reset agent and set values to dev.a2p3.net
When logging into account, I am asked to release data for:
si.a2p3.net
si.dev.a2p3.net
people.a2p3.net
people.dev.a2p3.net
Looks like there is state being maintained between requests that should not be maintained.
URL in QR code is http://bank.a2p3.net/QR/xxxxxx or http://bank.a2p3.net/newQR/xxxxxxxx
No request is made for URL
request should be:
Peter reported and I confirmed.
This error appears to affect all logons when using the Agent.
The response to the app looks OK. But the app complains of Lost Session information.
GET /login/response?token=eyJ0eXAiOiJKV0UiLCJhbGciOiJkaXIiLCJlbmMiOiJBMjU2Q0JDK0hTNTEyIiwia2lkIjoiNWFwVGc0bk9KS2VkMkw2RyJ9..647lZT8BIO2m-8sniFJ-6A.91-aS3JcHs8h2GqJdTgRATF500rOE1iLfFts3nL-DYefGGLs_4cVzWY6aoUDFHODCOlVtXM7XfNbO0unz1FErGKAOwEc_UIAoAz95kKmzMc3JhaVZNVlCE5_r_VC1qOuEfed3UpCdAxt1JSPy8g0p-cR6xpgAidAjtXe9e6xpKNOWWJzOMedA0rD-fyUb632skPEVLEjxoP5TnyvnbEmbaMweB46ZH_FKiAo9phLGKQYLibMYu8QN7BiYVqtbgdHBDkxlmuFgF3w3FVVv5FzIyBiOJq1bDqRiB0uuU71R-Omyw08cCZgP3LtYwweTGnvVIZ-uXEgfcKqfZsyE08qvrz-doEKCcYxCAI22KanZo.tKZiD6yhT74idh7xE2sS4FAFwjJFN73JU8n-oYiTdK43GrIomabDcqpCmq4HRcMyW-u1opm2doJGg4oRGTGyQ&request=eyJ0eXAiOiJKV1MiLCJhbGciOiJIUzUxMiIsImtpZCI6Imw0aUpMdUlRc3A4RU9ldFgifQ.eyJpc3MiOiJlbWFpbC5hMnAzLm5ldCIsImF1ZCI6Iml4LmEycDMubmV0IiwicmVxdWVzdC5hMnAzLm9yZyI6eyJyZXR1cm5VUkwiOiJodHRwOi8vZW1haWwuYTJwMy5uZXQvbG9naW4vcmVzcG9uc2UiLCJyZXNvdXJjZXMiOlsiaHR0cDovL2VtYWlsLmEycDMubmV0L3Njb3BlL2RlZmF1bHQiLCJodHRwOi8vcmVnaXN0cmFyLmEycDMubmV0L3Njb3BlL3ZlcmlmeSJdLCJhdXRoIjp7InBhc3Njb2RlIjp0cnVlLCJhdXRob3JpemF0aW9uIjp0cnVlfX0sImlhdCI6MTM1OTQxMzI2Mn0.NNf_d-mWXXayHuJIfs0IBC9CRj0_fZpEf3iXNDq36WXFgbpep94lSXBk9RJOx6xCjL0O6-qP4TdBoKgTGJuWqw HTTP/1.1
Host: email.a2p3.net
Connection: keep-alive
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: en-us
Connection: keep-alive
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 6_0_2 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A551 Safari/8536.25
HTTP/1.1 302 Moved Temporarily
x-powered-by: Express
location: http://email.a2p3.net/error?error=UNKNOWN&errorMessage=Session%20information%20lost
vary: Accept
content-type: text/html
content-length: 230
set-cookie: connect.sess=s%3Aj%3A%7B%7D.Rk7TmQemKFe4jmSk2ofPNcLPGdWGd4B2UV30vnHfWao; Path=/; HttpOnly
date: Mon, 28 Jan 2013 22:47:50 GMT
connection: keep-alive, keep-alive
Moved Temporarily. Redirecting to http://email.a2p3.net/error?error=UNKNOWN&errorMessage=Session%20information%20lost
pulldown or checkbox to change the servers to be using
*.a2p3.net
*.local.a2p3.net
*.dev.a2p3.net
pulldown for http/https will be nice in the future too!
After a QR scan, the Agent appends a weird "_" var to all URLs as an extra query parameter. It looks like the current time in ms.
2013-02-01T08:48:05|10.0.0.31 bank.dev.a2p3.net GET /QRnew/0OF_tcEEbQqTtCgIMHt8OA?json=true&=1359737287422 200 3 ms - -
requestVerify Agent Request eyJ0eXAiOiJKV1MiLCJhbGciOiJIUzUxMiIsImtpZCI6Im5uWUdESnZLXzZWZUFBQ0wifQ.eyJpc3MiOiJiYW5rLmRldi5hMnAzLm5ldCIsImF1ZCI6Iml4LmRldi5hMnAzLm5ldCIsImlhdCI6MTM1OTczNzI4NiwicmVxdWVzdC5hMnAzLm9yZyI6eyJyZXNvdXJjZXMiOlsiaHR0cDovL3Blb3BsZS5kZXYuYTJwMy5uZXQvc2NvcGUvZGV0YWlscyIsImh0dHA6Ly9zaS5kZXYuYTJwMy5uZXQvc2NvcGUvYW55dGltZS9udW1iZXIiXSwiYXV0aCI6eyJwYXNzY29kZSI6dHJ1ZSwiYXV0aG9yaXphdGlvbiI6dHJ1ZX0sInJldHVyblVSTCI6Imh0dHA6Ly9iYW5rLmRldi5hMnAzLm5ldC9yZXNwb25zZSJ9fQ.5N8DVjIlaMrKkx2oXepThNrWqtHwpQlqVF_6DSdeYvumPAGE4_GQSRQ3hFEwWEERNJzDduny47d9IdALGIUVuA
2013-02-01T08:48:06|10.0.0.31 registrar.dev.a2p3.net POST /request/verify 200 2 ms - -
2013-02-01T08:48:06|10.0.0.31 si.dev.a2p3.net GET /scope/anytime/number?=1359737287549 200 1 ms - -
2013-02-01T08:48:06|10.0.0.31 people.dev.a2p3.net GET /scope/details?_=1359737287538 200 1 ms - -
open bank app
Open an Account -> QR code comes up
Scan QR code
bank sends result below
Agent does NOT send state parameter back in get to returnURL, only sends token and request
{ result:
{ agentRequest: 'eyJ0eXAiOiJKV1MiLCJhbGciOiJIUzUxMiIsImtpZCI6Im5uWUdESnZLXzZWZUFBQ0wifQ.eyJpc3MiOiJiYW5rLmRldi5hMnAzLm5ldCIsImF1ZCI6Iml4LmRldi5hMnAzLm5ldCIsImlhdCI6MTM1OTczODk5NiwicmVxdWVzdC5hMnAzLm9yZyI6eyJyZXNvdXJjZXMiOlsiaHR0cDovL3Blb3BsZS5kZXYuYTJwMy5uZXQvc2NvcGUvZGV0YWlscyIsImh0dHA6Ly9zaS5kZXYuYTJwMy5uZXQvc2NvcGUvYW55dGltZS9udW1iZXIiXSwiYXV0aCI6eyJwYXNzY29kZSI6dHJ1ZSwiYXV0aG9yaXphdGlvbiI6dHJ1ZX0sInJldHVyblVSTCI6Imh0dHA6Ly9iYW5rLmRldi5hMnAzLm5ldC9yZXNwb25zZSJ9fQ.4R9WlmtK9gARB4miX7mJ9XhfedaMd1TS8bS4b8lVaPQ66yiojyC6wstiYu-X9IS_W4aqTnQx1ejhlpDwiZDCMQ',
state: '3b1TuMvY4dVH8PzfPp6FLQ' } }
There is enough space, it just truncates for some reason...
When the agent is being invoked from direct login on phone you can see the home page displayed for a few second before you see the passcode input screen. Doesn't feel right, should go straight to passcode in that case.
Add query parameter when launching enrollment from Agent so that we can be smarter on which pages to show the user. Can move directly from User enrollment to prompting for passcode.
add "?agent=true" to http://setup.*./
When first running the Agent, link to enroll directly at Setup should be shown in addition to "Scan Enrollment QR Code"
perhaps a label of:
"Enroll Agent Directly"
add in
request=
to return URL
Use mini buttons instead. Also could use some design love.
Suggest: adding a modal dialogue saying “warming up the scanner”.
this may help performance on iPhone 4.
http://stackoverflow.com/questions/13697409/phonegap-ios-application-size
authz + scan slide rights
swipe right to back
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.