Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
madoverlord:projects-evie [2016/05/13 23:41]
madoverlord
madoverlord:projects-evie [2016/05/13 23:46]
madoverlord
Line 8: Line 8:
  
  
-{{http://​media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-01.jpg}}+{{http://​media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-01.jpg}}{{http://​media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-02.jpg}}
  
  
-{{http://media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-02.jpg}}+EViE **was** a web-based **EVE-Online skill monitor applet** for the **iPhone ​iPod Touch** It runs entirely in the built-in 
 +Safari browser, with a little help from a proxy server that I maintained.
  
  
-EViE is a web-based **EVE-Online skill monitor applet** for the **iPhone / iPod Touch**. ​ It runs entirely in the built-in 
-Safari browser, with a little help from a proxy server that I maintain. 
- 
- 
- 
- 
-In addition, EViE can run on desktop machines using **Safari**, **Firefox**,​ **Opera** and **Internet Explorer 7** (see below for compatibility notes). ​ When run on a computer browser, EViE runs in a multicolumn mode to make the best use of the window size you give it. 
- 
- 
- 
- 
-EViE is free (and GPL), but if you want to help a poor podder out and lay some ISK on him, who am I to stop you?  So far, EViE users have sent me ISK 11.1M... Cheap bastards, the lot of you! 
- 
- 
- 
- 
-//​**IMPORTANT Note for users upgrading to version 2.0**: Please follow the instructions lower down on the page to create your new EVE API key and construct a revised EViE access URL (the old URL will stop working soon). Because of the changes needed to support the new API key structure, your preferences will not be saved when you transfer, so after you get things up and running, you'll have to twiddle with them a bit. Don't forget to set your alert times and email address!// 
  
  
 +In addition, EViE could run on desktop machines using **Safari**, **Firefox**,​ **Opera** and **Internet Explorer 7**.  When run on a computer browser, EViE ran in a multicolumn mode to make the best use of the window size you give it.
  
  
Line 54: Line 39:
 EVE API server, as well as implement simple server-side cookies in order to save your preferences and implement preference-sharing,​ and most recently, EVE API server, as well as implement simple server-side cookies in order to save your preferences and implement preference-sharing,​ and most recently,
 manage and send skill training alerts via email. manage and send skill training alerts via email.
-It keeps a small amount of information about your preferences and alerts (indexed by your API key), but does not permanently log information 
-like IP addresses. ​ It will also only proxy requests directed at the EVE API servers; it is not an open proxy. ​ It's written in RealBasic (so it will probably run under Windows and Linux as well, assuming their filesystems can handle 64 character filenames!),​ and if you want a copy, let me know. 
  
  
  
  
-As the proxy server is crude and not well tested, if it stops working, please <A HREF="​mailto:​[email protected]?​subject=EVE_ONLINE">​email me a headsup</​a>​ so I can go take a look at what happened. 
  
- +**EViE features ​included:**
- +
- +
-**EViE features ​include:**+
  
   * Automatic loading of character and skill information.   * Automatic loading of character and skill information.
Line 148: Line 127:
  
   * Displays the skill training queue, and warns you when you need to add skills.   * Displays the skill training queue, and warns you when you need to add skills.
- 
-**Things on the To-Do list:** 
- 
-  * Implement as a real iPhone app when the iPhone SDK is actually released. 
- 
- 
- 
- 
-  * Stuff people ask for, if I think it's reasonable. I am eminently bribable -- just not cheap! 
- 
-**Things I'd like it to do, but don't know how (advice gratefully accepted if you do)**: 
- 
-  * Animated effects when opening/​closing the preferences. 
- 
- 
- 
- 
-  * Integration with the iPhone Calendar, so that it could alert you when training completes (probably impossible, and equivalent functionality can be implemented using the email alerts and SMS gateways (see below)) 
- 
-**Known Issues:** 
- 
-  * If EVE is unavailable,​ sometimes their API server will provide only partial information (such as not make the skills list available, resulting in EViE telling you something like "Skill Name Unavailable"​). ​ This situation is usually temporary and fixes itself when EVE comes online again. 
- 
-**Browser Compatibility:​** 
- 
- 
- 
- 
-Whenever one wanders from the safety of a defined environment (in this case, Safari on the iPhone), the issue of browser compatibility rears its ugly head.  The fact of the matter is that each browser and operating system implements javascript in a different way, and designing AJAX webapps that work in all browsers is a massive pain. Here is what I know about EViE's compatibility with various browsers. 
- 
-  * **Safari** - works perfectly with all variants of Safari (iPhone,​iPod Touch,​Macintosh and Windows). 
- 
- 
- 
- 
-  * **Firefox** - works almost perfectly; the only issues are a little bit of redraw flicker, and the visual appearance of a few items in the preferences menu and the priority buttons; this is caused by Firefox'​s incomplete implementation of the CSS2.1 standard, in particular, inline-block. ​ But apart from this, it's 100% usable. 
- 
- 
- 
- 
-  * **Internet Explorer** - works almost perfectly; the only issues are a little bit of redraw flicker on rare occasions. ​ However, getting it to work was an exercise in masochism that I have not experienced since I bought the 3-day deluxe weekend pass to Madam Julia'​s House of Pain.  The litany of obstacles the Boys from Redmond threw in my path included (but are not limited to)... 
- 
- 
- 
- 
-    * Limiting URLs in XMLHttpRequests to about 100 characters - for no obvious reason. 
-    ​ 
-    * data:// urls have similar limits, if they'​re even implemented at all. 
-    ​ 
-    * Not automatically parsing XML files if they happen to be served as "​application/​xml"​ - and claiming this is the right thing to do. 
-    ​ 
-    * Not implementing Array.indexOf() - gee guys, it's been part of the Javascript standard for years. 
-    ​ 
-    * Implementing XML.getElementsByTagName() differently than everyone else.  Is IE too restrictive,​ or Safari/​Firefox too broad? 
-    ​ 
-    * Not implementing XML.innerText(). 
-    ​ 
-    * Counting child nodes differently than Safari. ​ Who's right? ​ Beats the hell out of me! 
-    ​ 
-    * Numerous flaws in the rendering of floating objects, but nothing a **few hours** of work couldn'​t find a way to bandaid. 
- 
- 
-  * **Opera** - had to work through a few bugs in Opera (including one in my proxy server!), but Opera is now singing on key, at least in the Mac and Windows concert halls. ​ No idea if it will play well at the Linux Disco! 
- 
- 
- 
-=== How to access and use EViE === 
- 
- 
-{{http://​media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-03.jpg}} 
-{{http://​media.madoverlord.com/​Lg/​IPHONE/​IPHONE-EVIE-04.jpg}} 
- 
- 
-In order to use EViE you will need to construct a URL that tells the app about an EVE KeyID and verification code associated with the account you want to monitor. ​ If you 
-[[https://​support.eveonline.com/​api/​Key/​CreatePredefined/​393224|click here<]], you'll go to the support.eveonline.com site, and after signing in, you'll be on the create API key page with all the needed options selected. Just scroll down and hit the Submit button to create the ID/Key pair (you may also want to check the box that makes the key permanent). 
- 
- 
- 
- 
-Once you have that information,​ you construct your EViE URL is as follows: 
- 
- 
- 
- 
-http://​evie.madoverlord.com:​8080/​EViE.html?​eveKeyID=**[ID]**&​amp;​eveAPIKey=**[Verification Code]** 
- 
- 
- 
- 
-where **[ID]** and **[Verification Code]** are replaced with the appropriate values; note that the [brackets] are not included in the values. ​ Thus, the url will look something like this: 
- 
- 
- 
- 
-http://​evie.madoverlord.com:​8080/​EViE.html?​eveKeyID=**123456**&​amp;​eveAPIKey=**aVeryLongStringOfLettersAndNumbers** 
- 
- 
- 
- 
-Because of the complexity of the URL, I strongly suggest entering it in your favorite desktop browser, testing it, then bookmarking it and syncing the bookmark onto your iPhone / iPod Touch. 
- 
- 
- 
- 
-Once you have EViE displaying your training data, you can customize the display in a great number of ways. 
- 
- 
- 
- 
-Tap on your character portrait to reveal the preferences panel, then tap on the preferences subsection headers (the ones with the little up and down chevrons) to open and close it. 
- 
- 
- 
- 
-**Optional Implant Override URL argument** 
- 
- 
- 
- 
-Just before the Apocrypha expansion, CCP disabled access to implant bonus information in the API.  At the time of this writing, I have no idea how long this will last.  Until they restore it, you will have to manually enter your bonuses in order for skill training times to be correctly calculated (except for the currently training skill, that uses a method that does not depend on knowing the implant info). 
- 
- 
- 
- 
-To manually override CCP's implant bonus info -- even if it is being sent -- simply add a third argument to the url, as follows: 
- 
- 
- 
- 
-http://​evie.madoverlord.com:​8080/​EViE.html?​eveKeyID=**[ID]**&​amp;​eveAPIKey=**[Verification Code]**&​amp;​implantOverride=**I,​M,​C,​P,​W** 
- 
- 
- 
- 
-where I,M,C,P and W are single digit integers giving the bonus to Intelligence,​ Memory, Charisma, Perception and Willpower, respectively. ​ So a complete set of +4's would be: 
- 
- 
- 
- 
-http://​evie.madoverlord.com:​8080/​EViE.html?​eveKeyID=**[ID]**&​amp;​eveAPIKey=**[Verification Code]**&​amp;​implantOverride=**4,​4,​4,​4,​4** 
- 
- 
- 
- 
-**Skill Display Options** 
- 
->You can choose to display **All Skills**, **Known Skills**, **Partially-Trained Skills**, **Skills Matching Search** (see below) or **Do Not Display Skills**. ​ Known skills are displayed in green, partially-trained skills in yellow, and unknown skills in grey. 
- 
- 
- 
- 
-**Show Descriptions** toggles the display of skill descriptions and training time requirements (EViE does exact calculations 
-based on your character'​s attributes, skills and implants). ​ Even if you have descriptions turned off, tapping on a skill will display its description,​ training time, priority, and also its prerequisite skills, if any.  Prerequisites are color-coded:​ green means you know the skill, yellow means you know it, but need to train it to a higher level, and red means you don't know the skill at all. 
- 
- 
-**Search For Skills** 
- 
-Tapping **Search for Skills** will reveal a text field into which you can enter any string; skills whose name or description contains that string will be hilighted in red.  On desktop browsers, the skills display will be updated about 1 second after you stop typing; on the iPhone / iPod Touch, there is a 5 second delay (because skill display refresh is significantly slower on those machines, and anyway, you can't see much until you dismiss the keyboard). 
- 
- 
-**Email Alerts** 
- 
-This preference lets you manage EViE built-in completion alerts; simply enter an email address and choose up to 5 alert times (T-minus 60, 30, 15, 10 and/or 5 minutes). ​ Selected times are blue, unselected ones are grey.  At the appropriate times before skill training completes, emails will be sent to the desired address to remind you to log in and change skill training. 
- 
- 
- 
- 
-What makes this particular cute is that most cellphone providers have an **email to SMS gateway** service. ​ This means that there'​s probably an email address out there that will forward an email to your cellphone as a SMS text message. ​ EViE emails are designed (I hope!) to fit within the limitations of SMS messages -- if this feature doesn'​t work for you, email me (no texting, grin!) to let me know what went wrong. ​ Don't know what your cellphone'​s SMS email address is, you say?  [[http://​hiptools.net/​sms/​|Here is a list that contains a lot of providers.]] ​ If your provider isn't on this list, and you find out what it is, email the page owner (not me!) to let him know.  On the other hand, if you find a better list, then certainly let me know so I can update this page! 
- 
-* **Important Reminder:** if you don't enter an email address, EViE won't know where to send the alerts! 
- 
- 
- 
-**Priority Options** 
- 
-EViE allows you to prioritize skills into 4 special "​**priority categories**"​ that appear ahead of the normal skill categories; these are called **Priority Alpha (&​alpha;​)**,​** Beta (&​beta;​)**,​** Gamma (&​gamma;​)** and **Delta (&​delta;​)**. ​ There is also a 5th category, **Epsilon (&​epsilon;​)**,​ which is the default priority. 
- 
- 
- 
- 
-To set the priority of a skill, tap the skill. ​ The background will dim and the full skill description will appear, along with 5 buttons, one for each priority category. ​ The current priority is the one with the blue button. ​ Tap a priority button to set the priority; the skill will be added to the bottom of the list in that priority category. ​ Tap the same priority again, and it'll go to the top of the list. 
- 
- 
- 
- 
-The skills list will not actually update until you tap **Update Priorities** in the **Priority Options** section of the preferences panel (this is because the update can take several seconds if you're displaying a lot of skills). 
- 
-  * **Note**: Updating Priorities just changes the display on the screen; to save the changes permanently,​ use **Save &amp; Refresh Now**, found under **Refresh Options**. ​ If you want, you can just **Save &amp; Refresh Now** without first updating the priorities; it will save your new priorities and then display them. 
- 
- 
-Also found under **Priority Options** is **Promote Priorities**. ​ This is useful when you've completed training your most important skills and want to move on to the next group. ​ When you **Promote Priorities**,​ everything moves up one priority level; &beta; skills become &​alpha;,​ &gamma; become &beta;, and &delta; become &​gamma;​. 
- 
-**Refresh Options** 
- 
-This preference has two options; the first, **Automatically Refresh**, tells EViE to automatically get an update on your training situation whenever the API Server has new information. ​ There is no point in enabling this when running on the iPhone, because you can't leave EViE running in the background (just reload the entire page), but it's nice for when you're running EViE is an a browser. 
- 
- 
- 
- 
-**Save &amp; Refresh Now** reloads the entire page and saves your current preference settings in cookies both in your device and on the proxy server. 
- 
-  * **Note**: if you have updated preference settings on one device, and want them to be propagated to another device, simply reload the page -- without saving -- on the other device. ​ This will grab the preference information from the proxy server without updating it! 
- 
-**Other Options** 
- 
-The final preference group lets you toggle the **Beautiful Background** between my wonderful image of a planetary nebulae, and basic black. And if you're a programming geek, you can play with **Show Debug Log** and see some of what EViE is doing in the background (I do not recommend doing this on the iPhone, the debug log likes a wider window). ​ One of the things it'll show you is the calculation of your actual attributes. 
- 
- 
-**Skill Training Queue options** 
- 
-If you have skills in your training queue (other than the skill currently training), they will be displayed under the current skill information. Skills that finish just before or after the daily downtime are displayed in yellow, and skills that end during the daily downtime are displayed in red (best not to have one of those as your last skill). 
- 
- 
- 
- 
-The header for this information is displayed in white if you can't add any skills to the queue, green if you can, yellow if there is less than 12 hours before the queue is empty, and red if there is less than two hours. This information is displayed even if you don't have any skills in the queue. 
- 
- 
-**Miscellaneous Character Information** 
- 
-Tap on the character name, corporation name or bank balance to display miscellaneous character information,​ like race / bloodline / gender, as well as complete Attribute information. ​ You get a table of initial attributes, basic skill bonuses, advanced skill bonuses, implant bonuses, and final attribute scores, as well as a list of the attribute implants that are currently installed. 
- 
- 
-**Quick Navigation Features** 
- 
-Tap on any skill group header (the red captions) to collapse the skills list so that only the headers are visible. ​ Tap on another one to expand the list again, and scroll to the desired skill group! 
- 
- 
- 
- 
-Tapping on the topmost area of the screen (where the time, battery status, etc is shown) will scroll you to the start of the page. 
- 
- 
- 
- 
- 
- 
- 
  
  
Line 395: Line 136:
  
  
-<UL> 
   * [[http://​myeve.eve-online.com/​api/​doc/​|EVE API Documentation]]   * [[http://​myeve.eve-online.com/​api/​doc/​|EVE API Documentation]]
   * [[http://​myeve.eve-online.com/​ingameboard.asp?​a=topic&​amp;​threadID=81368|Computing Skill Training times]]   * [[http://​myeve.eve-online.com/​ingameboard.asp?​a=topic&​amp;​threadID=81368|Computing Skill Training times]]
Line 407: Line 147:
   * [[http://​hiptools.net/​sms/​|HipTools EMAIL -> SMS Gateway list]]   * [[http://​hiptools.net/​sms/​|HipTools EMAIL -> SMS Gateway list]]
   * [[http://​groupaware.mobi/​iphone/​|Groupaware'​s iPhone User Interface Examples]] - great place to crib CSS to make things look iPhoney!   * [[http://​groupaware.mobi/​iphone/​|Groupaware'​s iPhone User Interface Examples]] - great place to crib CSS to make things look iPhoney!
-</UL> 
  
  
Line 417: Line 156:
  
  
-&​copy;​2008 ​Robert Woodhead. Released under GPL -- though parts of the CSS are cribbed from Apple'​s+©2008 ​Robert Woodhead. Released under GPL -- though parts of the CSS are cribbed from Apple'​s
 style samples. style samples.
- 
- 
- 
- 
-Comments & bug reports to [[email protected]]