|
|
A Project - Making an Enhanced Uploader Alternative
|
|
A Project - Making an Enhanced Uploader Alternative
Jan 6, 2010 10:57 PM
|
There has been recent talk of creating a project that the Photos/HTML board could work on as a team. I have one idea. If it's more than we can chew on, we could always find something else.
Introduction for the Project
The Enhanced Uploader lets you preview and edit your picture from the Sell Your Item form before uploading. The uploader reduces uploading time by automatically compressing pictures before uploading. But the most important features that users rely on out of convenience is the fact that you can rotate, crop, or adjust the contrast and brightness of the pictures in a simple to use interface.
As great as this uploader is, there are several issues. Firstly, the uploader uses ActiveX technology which was developed by Microsoft. And because of that, the Enhanced uploader only works on Windows operating systems and the Internet Explorer web browser. So the issue here is that users running other browsers such as FireFox cannot use the Enhanced uploader. And although a small percentage, Mac and Linux users cannot use the Enhanced uploader either.
The second issue is that ActiveX controls are like any other software program - they can be misused. They can stop your computer from functioning correctly, collect your browsing habits and personal information without your knowledge, or can give you content, like pop-up ads that you don't want. Also, "good" ActiveX controls might contain unintended code that allows " bad " Web sites to use them for malicious purposes.
Because of the potential harm that can be done with ActiveX controls, security suites and applications block ActiveX controls and thus gives the user no access to the Enhanced uploader. So at the end of the day, ActiveX technology has become too fragile in the current client security environment to rely on.
The Project
So here's an idea for a project: to create an Enhanced Uploader alternative that is completely in-browser, and would be cross-browser/cross-platform compatible. The tool could possibly be created using an open source image processing application (e.g., ImageMagick, imagemagick.org). But simplicity would be the main point; cropping, rotating, and the ability to adjust the brightness and contrast of the images, and maybe the possibility of a few additional features.
And to put the cherry on top, consider this; there is an API for uploading pictures to EPS that includes an option for them to show up in Add Pictures in SYI in a tab "My Picture Uploads", which is hidden/inaccessible unless a seller has uploaded pictures to it via an API application (see screenshot below--it's no longer a beta). You could write and distribute such an application by joining the free eBay Developer Program. Here is the tech document for this API.


|
|
|
|
(96 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 25, 2010 07:44 PM
|
Did you understand my reference to Irfanview's color palette? I mentioned it as an idea for presentation of the palette."
I had never looked at IrfanView's Paint dialog after color reduction - very interesting.  I normally use the palette option on the Image menu, but the two do look very similar. Yes we could make a palette that looks like that.
 " I would prefer to see you apply your color blending method to brighten up the grays or darken the whites a notch or two"
This is still considered number crunching on exploded values. But it can be performed in javascript on the client if necessary, rather than on the server.
Seems like we keep circling the pool and don't get our feet wet.  "
I wholeheartedly agree that is what I am doing. 
But I'm not just circling, I'm spiraling in. This project is going to be rather large in the scheme of projects I've completed in the past. I don't want to go too far down any one direction too quickly because I don't relish the idea of ripping up a huge project every time a better idea is presented.  So, I'm simply standing in the middle of the intersection, reconnoitering a block or two down each direction, and reporting back what I've worked out. 
As I gain a better understanding of the server options, I'll have a clearer idea of how to best connect to them, and in what order.
Do you need birddog and spaguyusa to try a straight upload to eBay?"
It would be nice, but that will be an entirely different module or call, so it shouldn't impact our current planning. In my mind, it can wait a while longer; although I could see trying to get the answer to your re-upload question sooner than later. I suspect a reading of the API would tell us. Do you read? It's not my strong suit. I like to look at pretty pictures. RTFM has always eluded me. 
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(97 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 26, 2010 12:07 AM
|
Here is a multi-tabbed mockup I've been staring at for a few weeks. It's non-functional, but provides a way to visualize the process flow.
Server functions
1. At startup, upload slots would be presented to the user.
2. Click Upload and the uploaded thumbnails will appear on the left. That represents uploading to the server, with the server returning either a thumbnail or a 400px image that is squished into the thumb.
3. Rotate and adjust buttons will convert image on the server and return a new thumbnail and/or 400px image.
4. That is the end of server processing. The subsequent stages are processed in the client.
Client functions
The next three tabs (crop, composite, mark) are the different types of editing the user can apply in the browser. There is no real rhyme or reason to those at this point, except to say the watermark should be applied last.
This is where I'm spinning my wheels.
It may be possible that all those features could be applied on one tab or workspace. However, I split them up to consider the possibility that one might want to bulk process all the photos with one crop and one watermark location (although I suppose they could be merged in even that scenario).
I think I've illustrated three different ways to crop.
1) A moveable crop zone that grays out the cropped away portion (watermarker tool).
2) Make the edges disappear when dragging the pullers (compositor).
3) Zoom the image to crop it into a fixed space (stitcher).
And the two Watermarking options are text or image.
Not shown are all the border and color options that we played with in the compositor. Remember, this just shows flow, not toolbox items.
View results
Getting images to the Edits tab is another aspect requiring more consideration.
One possibility is that the "Apply" button could send the changes to the first available empty cell. A delete button somewhere could empty a cell for reuse. But that won't work if an edited image or composite is selected for more changes.
So another possibility is an "apply changes" and a "create new" button for each process.
A third possibility is that when editing is finished, that item is "submitted" to a results panel and the workspace is cleared for the next. No re-editing allowed.
Submit
The last step, not shown on the process mockup is to submit to server. The server would apply all the crops and watermarks and produce the final pictures that it would upload to eBay. The tool could then display those eBay-hosted images on a final success screen.
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(98 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 26, 2010 09:07 AM
|
Server Processing
Here is the workflow I would anticipate on the server after the user has finished editing photos.
- Server receives params for all composites.
- Process first composite as follows:
- Scale params to largest image the tool will deliver to eBay.
- If composite, create a base canvas (default color is black).
Paint canvas white or other specified background color.
For each photo:
- Create new blank image at new image size plus border width.
Paint blank image white or other specified border color.
- For GIF product image, create a white filled rectangle and apply inside border area. For GIF icon requiring transparency (I haven't looked into this yet).
- Resize photo and merge onto rectangle area inside border area of blank image.
- Repeat for all photos and color blocks in composite.
Apply watermark:
(There is another method for adding text to a photo, but this watermark sequence is used to match the javascript results in the browser)
- Create new blank image.
- Apply transparent background color.
- If logo, resize to fit and apply to blank image, or else:
- Create black watermark text.
- Apply text to blank image.
- Create white watermark text.
- Apply text to blank image.
- Set transparency on watermark image and apply to canvas.
Save and repeat
- Save photo as new image and update the queue or upload immediately to eBay and present eBay photo to user GUI.
- Process next photo.
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(99 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 27, 2010 03:51 AM
|
Ha! Of course I read.  Oh, you mean, do I have experience designing an application programming interface? Not a bit. First thing I had to do was look up the meaning of RTFM.  I've been cramming. I've grabbed the pdf documentation for Google Earth's API, for PhotoBucket's API, studied the reference Nate gives at the top of the page for eBay's UploadSiteHostedPictures (the one that has the PictureUploadPolicy with a 48 hour expiration and 25 URL limit) and examined the java and php example codes. This all led me to suspect (but still need a confirmation) that I have been under the misconception that eBay was allowing us to have control of a portion of that uploader tab that Nate pictures at the top of the page, something comparable in size to the Enhanced Uploader. I suspect now that the tab is entirely controlled by eBay, with a link to the uploader software made available in the upper-right-hand corner. Then EBay would park those thumbnail images there, kind of like the old Picture Manager tab where you're shown the pictures you have available for use. I honestly can't tell - the documentation is so thin on this. It would be an entirely different perspective. In my searching I had seen some ebay API examples - one displaying a user's account off-ebay. So I went back to the first post in this thread and read back through again.
Early on, spaguyusa wrote:
spaguyusa wrote: We could take it one step further and look at building it as a selling manager app. The big advantage of this is since this is really just image processing, and not storage ebay would host it for us. Their would be no third party server involved. Although I am not up to speed on the widget standard SMP apps are built on.
Chris 
Well, that made me wonder about Selling Manager API's which led me to Selling Manager Applications - ebay Developers Program and their user interface guidelines (pdf) link on that page. Then to SellingManagerApplicationsBeta_StyleGuide.pdg, page 5 of which shows how a Selling Manager Application can run on the Applications tab of "My EBay". I've carved this pdg image down a good bit but I think this still conveys the idea. The canvas is the part of the tab your application controls:

This seems like the ideal home for developing your image editing code, in the sandbox, using ebay's server dedicated for development.
As I said, the documentation is thin, but I found this inquiry about uploading images to ebay that gives insight into the identification of the uploaded pictures: How to get my pictures that I upload to eBay, display correctly on view item page. Sorry if that long link won't fly.
Next, I'll look at your latest offering! Before I do so, I noticed ebay's guide recommends against using multitabbed controls on the Applications tab, favoring menu selections instead. Also, I wonder if you are familiar with ebay Developers Program and if you have any fundamental opposition to being a part of that endeavor. 
I just took a quick look at your Multi-tabbed Mockup. I can see that fitting beautifully on the Applications tab canvas, particularly with some prettification by Sally. I think you would want a way to display all pictures presently held in storage by the user and a means to delete some if desired. I envision the uploader tab as linking to a plain uploader - no editing done there, maybe? However you go, I trust that when you've finished, you'll have a class act. 

|
|
|
|
(100 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 27, 2010 10:53 AM
|
Ha! Of course I read"
That's terrific! I hereby ordain thee reader of all documents, thick or thin, obtuse or enlightening, for the purpose of bringing forth opportunities and roadblocks, advantages and detours, for the betterment of our humble project.
Also, I wonder if you are familiar with ebay Developers Program and if you have any fundamental opposition to being a part of that endeavor."
For years I avoided eBay's developer program because of the $300 fee, but they abolished that and I eventually signed up. You too could sign up if that is the only way to get into their documentation. I think most of their APIs carry a fee based on reaching an access or "call" threshold. They've raised that threshold so that small developers will have a reasonable number of hits at no change. Most of what I do would never reach that limit, so I don't worry about paying eBay. I'm not sure how our uploader would fare.
Selling Manager (is it just Pro or the basic subscription as well?) is a great opportunity for developers to provide eBay add-ons and let eBay collect the revenue for those add-on services. As a community project, we weren't planning to charge. Can you locate any info there? Does eBay charge the developer for including free add-ons within Selling Manager?
With a Selling Manager add-on, eBay will host the widget and offer it on a menu. Presumably, the widget will call and run services on the provider's server, not on eBay's.
I suspect now that the tab is entirely controlled by eBay, with a link to the uploader software made available in the upper-right-hand corner."
I believe a third party uploader would be entirely independent of eBay's uploader. It would be located elsewhere and would serve from elsewhere (although I can't tell where the "preferred uploader" link on the screenshot will take a user). I think the intent is to let outside applications embed the functionality on their sites or within their handhelds -- envision taking a product shot with your iphone and sending that photo directly from your phone to your eBay folder.
When a member starts an eBay listing, the images that they have previously uploaded from offsite, would appear in a special "My Picture Uploads" tab during the listing process (just as they do now for Picture Manager, as you've noted).
I've never used Selling Manager, so haven't investigated what it looks like or where it appears.  Selling Manager is online and it stores data on eBay servers. The Selling Manager no-tabs is interesting info. So that tells us we'll need to keep that venue in mind when designing the final interface.
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(101 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Feb 27, 2010 11:49 PM
|
ShipScript:
Great - you've already done step one. 
1st Step: Join eBay's Developers Program. (It looks like I can get more information than I can digest without becoming a member, but I may do so eventually.)
2nd step: Generate your application keys from your Developer My Account page, note your Production AppID.
Selling Manager API info:
I gather it is up to the developer whether their application falls in the category of regular Selling Manager or SM Pro. The developer may offer their application for free. Selling Manager is also free with an eBay account. One can subscribe to Selling Manager here: Selling Manager. I have just subscribed, have an Applications tab in My eBay, and have added the free Terapeak Keywords Application on that tab.
Regarding who does the serving: From this reference, GuptaMadhu_SMAppsJumpstart_FINAL.pdf on Page 13, it says "Canvas view served from your web host." Then it explains that the Selling Manager App can be either a URL App (accepts HTTP Post from eBay when it renders) or an HTML type App (Client side code - HTML/JS - hosted by eBay) (see ** re limits).
URL Apps are specified in the Gadgets Specifications as:
<Module>
<ModulePrefs ... />
<Content type="url" view=“canvas”
href="http://www.myapp.com/appentry.jsp" />
</Module>
HTML type Apps are like this:
<Module>
<ModulePrefs title="hello world example" />
<Content type="url" view=“canvas”
href="http://www.myapp.com/appentry.jsp" />
<Content type="html“ view=“default,wide”>
<![CDATA[ Hello, world! ]]>
</Content>
</Module>
I am overwhelmed by a wealth of information and a dearth of experience. I see a lot of potential. (to create an image tag for a description, for instance.)
(FYI: This is eBay's help page Using the Selling Manager Applications Directory)
Trading API info:
The UploadSiteHostedPictures call is an eBay Trading API call.
Notes:
1. This call is for all Site-Hosted Pictures, and the value of PictureUploadPolicy determines whether the picture uploaded is made available on the custom uploader tab. I'm a bit confused about the 25 URL picture limit. If you are using some of these in your listings, would their URLs still appear on the uploader tab? The UploadSiteHostedPictures call can also be used to upload pictures from a URL or as a binary attachment, sent as a MIME attachment, in your POST request, after the XML input, for EPS hosting. (Presumably this is part of a package deal where a listing is being set up, perhaps the method used by auctiva?)
2. Maximum image size is 4 MB.
API Call Limitations. The number of API calls you will be permitted to make during any given period may be limited. eBay will determine call limits based on various factors, including the ways your Application may be used or the anticipated volume of use associated with your Application.
Generally, any Developer can immediately make 5000 Trading API calls per day. When their application has passed a Business Readiness Review (you need to have or to purchase 1 hour - $75 - of technical support for this review) and qualifies as a Compatible Application (processing is free), their application is allowed 1.5M Trading API calls per day.
For info on achieving this latter threshhold, see Compatible Application Check and this next seems most important:
Prerequisites for Going Live - Trading APIs
This last includes info such as:
1. Applications must use the UTF-8 encoding scheme (not ISO-8859-1). That puzzles me because the php sample at the link in Nate's post has charset=iso-8859-1 in its META tag, but the xml it builds has encoding="utf-8". (The php sample is in a small zip file you download.)
2. Error handling is checked;
3. **Server-side apps have an 18-thread limit per AppId, client-side apps have a 3-thread limit.
To request a Compatible Application Check for your application: Open a new Technical Support Case (requires member login, takes 5-7 days processing time).
Boy, this is tedious, mind-bending stuff. Not one pretty picture.  Actually, there was one video presentation....
I am now qualified to write my own definition of RTFM. 

|
|
|
|
(102 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Mar 1, 2010 11:43 AM
|
Thanks for doing the research. You've come up with a wealth of info. Wasn't that fun??? I do have a developer id and key. I've used one eBay API with JSON to create X*sell_Lite, and it wasn't too tedious after getting past some of the documentation shortcomings. But I've not delved into their XML interface, so I guess, after getting up to crawling speed on PHP, I'm going to have to learn some XML too. 
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(103 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Mar 1, 2010 07:14 PM
|
Actually, it was fun (in an odd sort of way). The API's that are being offered by various major web sites open a whole new world of opportunity for communication and processing on the web. As for our "humble" project and your added burden of learning the xml code, I know you can handle it. I have seen the sample code!!  .

|
|
|
|
(104 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Mar 31, 2010 07:20 AM
|
I've stayed away from this thread since the beginning, but now I have some time to test-run what you all have put together - please post links to pieces (or all) you'd like additional input on.

|
|
|
|
(105 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Apr 1, 2010 01:38 AM
|
going1ncellc wrote: I've stayed away from this thread since the beginning, but now I have some time to test-run what you all have put together - please post links to pieces (or all) you'd like additional input on. 
Thank you, Sally, for your encouragement. 
I've tried to contribute more substantially, have even gotten a set of keys for the sandbox. I just haven't figured out yet where to put them.  I had thought it might be good to have a version of the uploader that does nothing but submit to eBay - a basic uploader you can access when you add Pictures in the SYI form. The link in Nate's post could be pointing to its URL. The photo editor could be an Application on My eBay. I'd like to know if Ship thinks that idea has any merit.
The last link that Ship posted (Post #100) was her Multi-Tabbed Mockup. I've been staring at that as well. I've had a couple of thoughts:
1. It would be nice to have a name and a logo for this! The terapeak application logo is 115W x 80H.
2. If the Uploader ends up residing as an application on My eBay, we talked about avoiding tab controls. Below I show one possible format. The menu on the left would control what appears in the center where Bambi is being cropped. I've used the Enhanced Uploader many a time and very rarely even consider doing any editing in it (I may have done a brightness adjustment once?) so I thought there may be some who only wanted to submit their photo to eBay, or wanted to distinguish between photos for editing and photos to go directly to the submit boxes. Also, eBay allows two versions of the upload - save, or save and replace, so maybe that needs to be an option, along with a way to remove pictures they don't want to submit. I have reduced the height to try to fit the main elements on the My eBay applications page without the need for scrolling. The empty space below could be used for instructions, perhaps? Anyway, this is an idea and it sure needs "prettifying". 
(Click here for full image to scale - 128kb)


|
|
|
|
(106 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Apr 22, 2010 09:45 AM
|
FotoFlexer is a standalone online image editor. However, it can also be integrated with other services, and IS integrated with many major online services, including TinyPic. Might work for our uploader, too. http://fotoflexer.com/api.php/

|
|
|
|
(107 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Apr 22, 2010 01:00 PM
|
Thanks for the link Nate. FotoFlexer is a Flash module that is delivered from the FotoFlexer site when called by the client website. It looks to me like the user edits an image using the FotoFlexer flash module and when they save the edited image, a callback sends the finished product back to the client site. There's a lot more there than we would want in the uploader project, but it is obviously something individual websites might want to use or offer. The new editing capabilities in eBay's flash uploader have a slimmer set of features more in line with what we might want on our uploader. The editing is handled on the client machine, as the flash program is running on the client after it downloads from the website. Presizing the images speeds the uploading to eBay, where eBay then makes the other images in their image set. I think a lot of these new flash image manipulators are relying on an image processing engine within the latest version of Flash.
eBay Live 2007 Community Hall of Fame Award Free Resources for Better Auctions • Programs • Tools • Templates • Help • Guides
|
|
|
|
(108 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
May 28, 2010 06:40 AM
|
OMG....You guys just blow me away! Okay, I readily admit that I don't, likely never will, understand everything that you've all contributed in discussion, never mind the behind the scenes stuff, but I readily put my hand in the air for willingness to test whatever I can, within my own limitations. I also, would be willing to help on the prettifying, IF time constraints were ever to become an issue for Sally, whose experience and expertise I openly defer to.

|
|
|
|
(109 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Nov 6, 2010 12:21 PM
|
Hello again, Nate. We met on the Technical Issues Board. I had mentioned that, although eBay's new photo upload versions purport to support TIFF format photos, they, in fact, do not. I do all my photo editing on my hard drive before uploading the photos to my SYI form----and should like to see an uploading function that does not necessary include photo editing as part of its function. Incidentally, I use "Irfanview", a free photo editing program recommended by a very knowledgeable contributor to this board some years ago. I like the TIFF format, which I cannot use at present on eBay, because of the detail required for signatures and markings, other forms of detail on many types of items, and, especially for jewelry, which requires much greater detail than most categories. However, I am finding that I have to convert the TIF format photos on my hard drive to JPEG format before they will upload on either Standard or Basic uploading program. I have been using TIFF for many years on eBay and am dismayed that it cannot be uploaded at present. I emphatically applaud you people for your pro-active stance with regard to developing an alternative uploading program. (I choose to use photos kept on my hard drive---I find it far more convenient to edited them, and if needed, re-edited them for my eBay listings---than using an externally hosted website for storage. Is it possible that you could develop an alternative uploading service which would allow sellers to upload and use the photos theyalready edited on their hard drive for the purposes of listing? Thanks so very much.
|
|
|
|
(110 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Jul 4, 2011 07:46 AM
|
LORD how this would be the BEST thing next to CHOCOLATE CAKE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
|
|
(111 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Mar 25, 2012 11:26 AM
|
.....
|
|
|
|
(112 of 112)
Re: A Project - Making an Enhanced Uploader Alternative
Jul 25, 2012 09:43 AM
|
Is this project dead?
I was just asking because it has little activity and it is a pinned topic to the top of the eBay forum.
Is it time to unpin it?
|
|
Photos & HTML links
Practical eBay Photography: Part I Practical eBay Photography: Part II
|