private void uploadButton_Click(object sender, EventArgs e) { try { eBayPictureService eps = new eBayPictureService(Context); string result = ""; int size = this.fileList.Count; //upload pictures one by one for (int i = 0; i < size; i++) { string file = this.fileList[i]; UploadSiteHostedPicturesRequestType request = new UploadSiteHostedPicturesRequestType(); if (this.checkBox.Checked) { request.PictureWatermark = new PictureWatermarkCodeTypeCollection(); request.PictureWatermark.Add(PictureWatermarkCodeType.User); } if (this.extDaysTextBox.Text != String.Empty) { int extDays = int.Parse(this.extDaysTextBox.Text); request.ExtensionInDays = extDays; } UploadSiteHostedPicturesResponseType response = eps.UpLoadSiteHostedPicture(request, file); result += Path.GetFileName(file) + " : " + response.SiteHostedPictureDetails.FullURL + "\r\n"; } this.textBox.Text = result; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public void UploadSiteHostedPictures() { //test UploadSiteHostedPictures string pic = GetPicture(); eBayPictureService eps = new eBayPictureService(this.apiContext); UploadSiteHostedPicturesRequestType request = new UploadSiteHostedPicturesRequestType(); request.PictureWatermark = new PictureWatermarkCodeTypeCollection(); request.PictureWatermark.Add(PictureWatermarkCodeType.User); UploadSiteHostedPicturesResponseType response = eps.UpLoadSiteHostedPicture(request, pic); Console.WriteLine("Picture is uploaded to : " + response.SiteHostedPictureDetails.FullURL); Assert.IsNotNull(response); Assert.IsTrue(response.Ack != AckCodeType.Failure); Assert.IsNotNull(response.SiteHostedPictureDetails); string picUrl = response.SiteHostedPictureDetails.FullURL; Assert.IsTrue(picUrl.Length > 0); ExtendSiteHostedPicturesCall eshpCall = new ExtendSiteHostedPicturesCall(this.apiContext); eshpCall.PictureURLList = new StringCollection(new String[] { picUrl }); eshpCall.ExtensionInDays = 10; eshpCall.Execute(); StringCollection picURLList = eshpCall.PictureURLListReturn; }
/// <summary> /// /// </summary> public override void Execute() { if (ApiContext.EPSServerUrl != null && PictureFileList != null && PictureFileList.Count > 0) { eBayPictureService eps = new eBayPictureService(this.ApiContext); if (Item.PictureDetails == null) { Item.PictureDetails = new PictureDetailsType(); Item.PictureDetails.PhotoDisplay = PhotoDisplayCodeType.None; } else if (!Item.PictureDetails.PhotoDisplay.HasValue || Item.PictureDetails.PhotoDisplay == PhotoDisplayCodeType.CustomCode) { Item.PictureDetails.PhotoDisplay = PhotoDisplayCodeType.None; } try { Item.PictureDetails.PictureURL = new List <string>(); Item.PictureDetails.PictureURL.AddRange(eps.UpLoadPictureFiles(Item.PictureDetails.PhotoDisplay.Value, PictureFileList.ToArray())); } catch (Exception ex) { LogMessage(ex.Message, MessageType.Exception, MessageSeverity.Error); throw new SdkException(ex.Message, ex); } } base.Execute(); if (ApiResponse.CategoryID != null && ApiResponse.CategoryID.Length > 0) { if (Item.PrimaryCategory == null) { Item.PrimaryCategory = new CategoryType(); } Item.PrimaryCategory.CategoryID = ApiResponse.CategoryID; } if (ApiResponse.Category2ID != null && ApiResponse.Category2ID.Length > 0) { if (Item.SecondaryCategory == null) { Item.SecondaryCategory = new CategoryType(); } Item.SecondaryCategory.CategoryID = ApiResponse.Category2ID; } }
static void Main(string[] args) { try { Console.WriteLine("+++++++++++++++++++++++++++++++++++++++"); Console.WriteLine("+ Welcome to eBay SDK for .Net Sample +"); Console.WriteLine("+ - ConsoleGetItemUsingOAuth +"); Console.WriteLine("+++++++++++++++++++++++++++++++++++++++"); //Initialize eBay ApiContext object ApiContext apiContext = GetApiContext(); System.Net.WebClient webClient = new System.Net.WebClient(); byte[] byteFile = webClient.DownloadData(@"https://www.wikihow.com/images/9/91/Get-the-URL-for-Pictures-Step-1.jpg"); //byte[] byteFile = File.ReadAllBytes(@"https://www.wikihow.com/images/9/91/Get-the-URL-for-Pictures-Step-1.jpg"); Base64BinaryType b = new Base64BinaryType(); b.Value = byteFile; eBay.Service.EPS.eBayPictureService eps = new eBayPictureService(GetApiContext()); UploadSiteHostedPicturesRequestType req = new UploadSiteHostedPicturesRequestType(); req.PictureName = "Gall"; req.PictureData = b; eps.UpLoadSiteHostedPicture(req, @"https://www.wikihow.com/images/9/91/Get-the-URL-for-Pictures-Step-1.jpg"); Console.WriteLine("Begin to call eBay API, please wait ..."); Console.WriteLine("End to call eBay API, show call result ..."); Console.WriteLine(); Console.WriteLine(); } catch (Exception ex) { Console.WriteLine("Failed to get submit data : " + ex.Message); } Console.WriteLine(); Console.WriteLine("Press any key to close the program."); Console.ReadKey(); }
/// <summary> /// /// </summary> public override void Execute() { if (Item != null) { if ((Item.UUID == null || Item.UUID.Length == 0) && AutoSetItemUUID) { Item.UUID = NewUUID(); } if (ApiContext.EPSServerUrl != null && PictureFileList != null && PictureFileList.Count > 0) { eBayPictureService eps = new eBayPictureService(ApiContext); if (Item.PictureDetails == null) { Item.PictureDetails = new PictureDetailsType(); Item.PictureDetails.PhotoDisplay = PhotoDisplayCodeType.None; } else if (!Item.PictureDetails.PhotoDisplaySpecified || Item.PictureDetails.PhotoDisplay == PhotoDisplayCodeType.CustomCode) { Item.PictureDetails.PhotoDisplay = PhotoDisplayCodeType.None; } try { Item.PictureDetails.PictureURL = new StringCollection(); Item.PictureDetails.PictureURL.AddRange(eps.UpLoadPictureFiles(Item.PictureDetails.PhotoDisplay, PictureFileList.ToArray())); } catch (Exception ex) { LogMessage(ex.Message, MessageType.Exception, MessageSeverity.Error); throw new SdkException(ex.Message, ex); } } } base.Execute(); string origid = Item.ItemID; Item.ItemID = ApiResponse.ItemID; if (Item.ListingDetails == null) { Item.ListingDetails = new ListingDetailsType(); } Item.ListingDetails.StartTime = ApiResponse.StartTime; Item.ListingDetails.EndTime = ApiResponse.EndTime; Item.ListingDetails.RelistedItemID = origid; if (ApiResponse.CategoryID != null && ApiResponse.CategoryID.Length > 0) { if (Item.PrimaryCategory == null) { Item.PrimaryCategory = new CategoryType(); } Item.PrimaryCategory.CategoryID = ApiResponse.CategoryID; } if (ApiResponse.Category2ID != null && ApiResponse.Category2ID.Length > 0) { if (Item.SecondaryCategory == null) { Item.SecondaryCategory = new CategoryType(); } Item.SecondaryCategory.CategoryID = ApiResponse.Category2ID; } }
/// <summary> /// Build a sample item /// </summary> /// <returns>ItemType object</returns> private ItemType BuildItem(string sneakerID) { ItemType item = new ItemType(); // item title item.Title = SQLConnect.Select("Select ShoeName from Shoe where ShoeID = '" + sneakerID + "';"); // item description item.Description = ""; // display description + photos on window form. //string rootPath = @"C:\Users\Viet\Documents\Visual Studio 2017\Projects\SnkrBot\target list-desc-images\"; string rootPath = @"C:\SnkrBot\target list-desc-images"; //string rootPath = @"C: \Users\Administrator\Desktop\target list-desc-images\"; // scan sundirectories of rootPath string[] subdirectoryEntries = Directory.GetDirectories(rootPath); string folder = ""; // check to find the right directory for the shoe foreach (string subdirectory in subdirectoryEntries) { if (subdirectory.Contains(sneakerID)) { folder = subdirectory; break; } } try { // Only get files end .txt string[] txtFile = Directory.GetFiles(folder, "*.txt"); //MessageBox.Show("The number of files .txt is" +txtFile.Length+"."); foreach (string dir in txtFile) { var fileStream = new FileStream(dir, FileMode.Open, FileAccess.Read); using (var streamReader = new StreamReader(fileStream, Encoding.UTF8)) { item.Description = streamReader.ReadToEnd(); } } // Only get files end .jpeg string[] imgFile = Directory.GetFiles(folder, "*.jpeg"); //MessageBox.Show("The number of files .jpeg is" + imgFile.Length + "."); foreach (string dir in imgFile) { } //pb1.ImageLocation = imgFile[0]; apiContext.EPSServerUrl = @"https://api.sandbox.ebay.com/ws/api.dll"; eBayPictureService pictureService = new eBayPictureService(new ApiContext()); // pictureService.ApiContext.EPSServerUrl = @"https://api.sandbox.ebay.com/ws/api.dll"; string[] picURLs = pictureService.UpLoadPictureFiles(PhotoDisplayCodeType.SuperSize, imgFile); //To specify a Gallery Image item.PictureDetails = new PictureDetailsType(); //The first picture is used for Gallery URL item.PictureDetails.GalleryType = GalleryTypeCodeType.Gallery; } catch (Exception e) { //MessageBox.Show("Reading file Unsuccessful"); } // listing duration item.ListingDuration = "Days_7"; // listing category, CategoryType category = new CategoryType(); category.CategoryID = "153008"; //CategoryID = 11104 (CookBooks) , Parent CategoryID=267(Books), 153008 (shoe) item.PrimaryCategory = category; // item quality item.Quantity = 1; // item condition, New item.ConditionID = 1000; // item specifics item.ItemSpecifics = buildItemSpecifics(sneakerID); // listing type item.ListingType = ListingTypeCodeType.Chinese; // item location and country item.Location = "Melbourne"; item.Country = CountryCodeType.AU; item.Currency = CurrencyCodeType.AUD; // listing price //item Start Price AmountType amount = new AmountType(); amount.Value = 20; amount.currencyID = CurrencyCodeType.AUD; item.StartPrice = amount; //Console.WriteLine("Do you want to use Business policy profiles to list this item? y/n"); String input = "n";//Console.ReadLine(); if (input.ToLower().Equals("y")) { item.SellerProfiles = BuildSellerProfiles(); } else { // payment methods item.PaymentMethods = new BuyerPaymentMethodCodeTypeCollection(); item.PaymentMethods.AddRange( new BuyerPaymentMethodCodeType[] { BuyerPaymentMethodCodeType.PayPal } ); // email is required if paypal is used as payment method item.PayPalEmailAddress = "*****@*****.**"; item.PostalCode = "3000"; // handling time is required item.DispatchTimeMax = 1; // shipping details //item.ShippingDetails = BuildShippingDetails(); item.ShippingDetails = new ShippingDetailsType(); item.ShippingDetails.ShippingServiceOptions = new ShippingServiceOptionsTypeCollection(); // return policy item.ReturnPolicy = new ReturnPolicyType(); item.ReturnPolicy.ReturnsAcceptedOption = "ReturnsAccepted"; ShippingServiceOptionsType shipservice1 = new ShippingServiceOptionsType(); shipservice1.ShippingService = "AU_Regular"; shipservice1.ShippingServicePriority = 1; shipservice1.ShippingServiceCost = new AmountType(); shipservice1.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceCost.Value = 1.0; shipservice1.ShippingServiceAdditionalCost = new AmountType(); shipservice1.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice1); ShippingServiceOptionsType shipservice2 = new ShippingServiceOptionsType(); shipservice2.ShippingService = "AU_Express"; shipservice2.ShippingServicePriority = 2; shipservice2.ShippingServiceCost = new AmountType(); shipservice2.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceCost.Value = 4.0; shipservice2.ShippingServiceAdditionalCost = new AmountType(); shipservice2.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice2); } return(item); }
/// <summary> /// Build a sample item /// </summary> /// <returns>ItemType object</returns> private ItemType BuildItem(string sneakerID) { ItemType item = new ItemType(); // item title item.Title = SQLConnect.Select("Select ShoeName from Shoe where ShoeID = '" + sneakerID + "';"); // item description item.Description = ""; // upload description + photos try { string[] imgFile = new string[10]; eBayPictureService pictureService = new eBayPictureService(new ApiContext()); // pictureService.ApiContext.EPSServerUrl = @"https://api.sandbox.ebay.com/ws/api.dll"; string[] picURLs = pictureService.UpLoadPictureFiles(PhotoDisplayCodeType.SuperSize, imgFile); } catch (Exception e) { //MessageBox.Show("Reading file Unsuccessful"); } // listing duration item.ListingDuration = "Days_7"; // listing category, CategoryType category = new CategoryType(); category.CategoryID = "153008"; //CategoryID = 11104 (CookBooks) , Parent CategoryID=267(Books), 153008 (shoe) item.PrimaryCategory = category; // item quality item.Quantity = 1; // item condition, New item.ConditionID = 1000; // item specifics item.ItemSpecifics = buildItemSpecifics(sneakerID); // listing type item.ListingType = ListingTypeCodeType.Chinese; // item location and country item.Location = "Melbourne"; item.Country = CountryCodeType.AU; item.Currency = CurrencyCodeType.AUD; // listing price //item Start Price AmountType amount = new AmountType(); amount.Value = 20; amount.currencyID = CurrencyCodeType.AUD; item.StartPrice = amount; //Console.WriteLine("Do you want to use Business policy profiles to list this item? y/n"); String input = "n";//Console.ReadLine(); if (input.ToLower().Equals("y")) { item.SellerProfiles = BuildSellerProfiles(); } else { // payment methods item.PaymentMethods = new BuyerPaymentMethodCodeTypeCollection(); item.PaymentMethods.AddRange( new BuyerPaymentMethodCodeType[] { BuyerPaymentMethodCodeType.PayPal } ); // email is required if paypal is used as payment method item.PayPalEmailAddress = "*****@*****.**"; item.PostalCode = "3000"; // handling time is required item.DispatchTimeMax = 1; // shipping details //item.ShippingDetails = BuildShippingDetails(); item.ShippingDetails = new ShippingDetailsType(); item.ShippingDetails.ShippingServiceOptions = new ShippingServiceOptionsTypeCollection(); // return policy item.ReturnPolicy = new ReturnPolicyType(); item.ReturnPolicy.ReturnsAcceptedOption = "ReturnsAccepted"; ShippingServiceOptionsType shipservice1 = new ShippingServiceOptionsType(); shipservice1.ShippingService = "AU_Regular"; shipservice1.ShippingServicePriority = 1; shipservice1.ShippingServiceCost = new AmountType(); shipservice1.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceCost.Value = 1.0; shipservice1.ShippingServiceAdditionalCost = new AmountType(); shipservice1.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice1); ShippingServiceOptionsType shipservice2 = new ShippingServiceOptionsType(); shipservice2.ShippingService = "AU_Express"; shipservice2.ShippingServicePriority = 2; shipservice2.ShippingServiceCost = new AmountType(); shipservice2.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceCost.Value = 4.0; shipservice2.ShippingServiceAdditionalCost = new AmountType(); shipservice2.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice2); } return(item); }
/// <summary> /// Build a sample item /// </summary> /// <returns>ItemType object</returns> private ItemType BuildItem(string sneakerID) { ItemType item = new ItemType(); // item title item.Title = SQLConnect.Select("Select ShoeName from Shoe where ShoeID = '" + sneakerID + "';"); item.ItemID = sneakerID; string Website = SQLConnect.Select("Select SupplierName from Supplier, Shoe where (Supplier.SupplierID = Shoe.SupplierID) AND (Shoe.ShoeID = '" + sneakerID + "');"); string Description = new SearchShoeInfo().GetShoeDescription(Website, item.Title, sneakerID); // item description item.Description = Description; string ShoeImage = new SearchShoeInfo().GetShoeImage(Website, item.Title, sneakerID, 5); string[] imgURL = ShoeImage.Split('\n'); // upload photos eBayPictureService pictureService = new eBayPictureService(apiContext); pictureService.ApiContext = apiContext; //pictureService. //pictureService.ApiContext.EPSServerUrl = @"https://api.sandbox.ebay.com/wsapi"; //pictureService.ApiContext.EPSServerUrl = @"https://api.sandbox.ebay.com/ws/api.dll"; pictureService.ApiContext.EPSServerUrl = @"https://api.ebay.com/ws/wsapi"; /*UploadSiteHostedPicturesRequestType request = new UploadSiteHostedPicturesRequestType(); * request.WarningLevel = WarningLevelCodeType.High; * request.ExternalPictureURL = new StringCollection(); * request.ExternalPictureURL.Add(@"https://images-eu.ssl-images-amazon.com/images/I/41qPjKzQcyL._SL75_.jpg"); * request.PictureName = "Deva_testimage_URL"; * request.PictureSet = PictureSetCodeType.Supersize; * request.PictureSetSpecified = true; */ string[] pictureList = { @"C:\\Users\\Viet\\Pictures\\img.jpg", @"C:\\Users\\Viet\\Pictures\\img.jpg" }; string[] picURLs = pictureService.UpLoadPictureFiles(PhotoDisplayCodeType.SuperSize, pictureList); try { item.PictureDetails = new PictureDetailsType(); //item.PictureDetails.GalleryType = GalleryTypeCodeType.None; item.PictureDetails.PictureURL = new StringCollection(); item.PictureDetails.PictureSource = PictureSourceCodeType.EPS; //item.PictureDetails.PhotoDisplay = PhotoDisplayCodeType.SuperSize; //item.PictureDetails.PhotoDisplaySpecified = true; foreach (string pic in picURLs) { //item.PictureDetails.PictureURL.Add(pic); } } catch (ApiException e) { MessageBox.Show(e.Message); } // listing duration item.ListingDuration = "Days_7"; // listing category, CategoryType category = new CategoryType(); category.CategoryID = "153008"; //CategoryID = 11104 (CookBooks) , Parent CategoryID=267(Books), 153008 (shoe) item.PrimaryCategory = category; // item quality item.Quantity = 1; // item condition, New item.ConditionID = 1000; // item specifics item.ItemSpecifics = buildItemSpecifics(sneakerID); // listing type: Auction item.ListingType = ListingTypeCodeType.Chinese; // item location and country item.Location = "Melbourne"; item.Country = CountryCodeType.AU; item.Currency = CurrencyCodeType.AUD; // listing price //item Start Price AmountType amount = new AmountType(); amount.Value = 20; amount.currencyID = CurrencyCodeType.AUD; item.StartPrice = amount; //Console.WriteLine("Do you want to use Business policy profiles to list this item? y/n"); String input = "n";//Console.ReadLine(); if (input.ToLower().Equals("y")) { item.SellerProfiles = BuildSellerProfiles(); } else { // payment methods item.PaymentMethods = new BuyerPaymentMethodCodeTypeCollection(); item.PaymentMethods.AddRange( new BuyerPaymentMethodCodeType[] { BuyerPaymentMethodCodeType.PayPal } ); // email is required if paypal is used as payment method item.PayPalEmailAddress = "*****@*****.**"; item.PostalCode = "3000"; // handling time is required item.DispatchTimeMax = 1; // shipping details //item.ShippingDetails = BuildShippingDetails(); item.ShippingDetails = new ShippingDetailsType(); item.ShippingDetails.ShippingServiceOptions = new ShippingServiceOptionsTypeCollection(); // return policy item.ReturnPolicy = new ReturnPolicyType(); item.ReturnPolicy.ReturnsAcceptedOption = "ReturnsAccepted"; ShippingServiceOptionsType shipservice1 = new ShippingServiceOptionsType(); shipservice1.ShippingService = "AU_Regular"; shipservice1.ShippingServicePriority = 1; shipservice1.ShippingServiceCost = new AmountType(); shipservice1.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceCost.Value = 1.0; shipservice1.ShippingServiceAdditionalCost = new AmountType(); shipservice1.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice1.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice1); ShippingServiceOptionsType shipservice2 = new ShippingServiceOptionsType(); shipservice2.ShippingService = "AU_Express"; shipservice2.ShippingServicePriority = 2; shipservice2.ShippingServiceCost = new AmountType(); shipservice2.ShippingServiceCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceCost.Value = 4.0; shipservice2.ShippingServiceAdditionalCost = new AmountType(); shipservice2.ShippingServiceAdditionalCost.currencyID = CurrencyCodeType.AUD; shipservice2.ShippingServiceAdditionalCost.Value = 1.0; item.ShippingDetails.ShippingServiceOptions.Add(shipservice2); } return(item); }