PPC Ad Platform
Project ID: 1257987531
Project Details
  • Status:
    Closed (Cancelled)
  • Posted:
    11/11/2009 at 19:58 EST
  • Cancelled:
    11/16/2009 at 20:44 EST
  • Project Creator:
  • Budget:
    N/A
  • Description:
    I need a ppc ad platform that i can plug in up to 40 xml feeds and the system will send traffic to the highest price bid. Most times the platform will only have 5 to 10 feeds on each account.

    This platform will be built and tested in 3 parts. This project is for Part 1 only. Part 1 takes feeds from my upstream feed providers and distributes them to my downstream publishers. Part 1 will not have advertiser capabilities, it will only use feeds. In Parts 2 and 3, we will add a payment gateway for my own advertisers and we will make the platform to where i can license it out as a white label program for others.

    Back to Part 1.

    I need to be able to input multiple xml feeds, as many as 40.
    I need a login for my publishers where they can view stats, # of searches, ctr, # of credited clicks, earnings per time frame. I need to adjust rev share separately for each publisher / account.

    I only want to store stats 120 days and after that they can auto delete.

    Filters – (Default Filters Constant on All Ad Providers and Publishers)

    Double Click – Click on same keyword term from same IP address on same all ad provider listings under 30 seconds
    Multiple Click – Click on same keyword term from same IP address on different ad provider listing under 30 seconds
    Multiple KW clicks – Click on 5+ different KW terms from same IP address in 24 hour period on all ad providers
    Multiple KW clicks 2 – Click on 3+ different KW terms from same IP address in less than 5 minutes on all ad providers
    Short Click Delay – Click on keyword listing on any AP when time between search and click is less than 1 full second or 1000 ms.
    Long Click Delay – Click on keyword listing on any AP when time between search and click exceeds 10 minutes
    Temporary IP Block – Filter all traffic from an IP address that has clicked more than 20 times in a 24 hour period on any keyword listing on all APs.
    Blocked IP address – Clicks from IP addresses on global IP block list
    Remnant Clicks – Clicks from any IP address that do not follow proper redirects through network to advertiser landing page (Clicks that do not reach advertiser page)

    Publisher Filters – (Filters altered on the specific AP path associated with a particular Publisher subaccount)

    Null Referrer – Clicks that do not pass a referring URL on the click
    Different Ref URL – Clicks that pass a referring URL different than the search URL – ex: Search URL = 123.com Click URL = abc.com
    Foreign Traffic – Clicks that originate from a foreign IP address not associated with specific AP NOTE: should be noticed at search time – If acceptable IP, display ads, if foreign IP do not query AP provider.
    Lighten Click Delay – check box that eliminates short click delays and allows long click delay up to 1 hour in duration between search and click time
    Blocked Domains – Clicks that originate from domains on each AP block list (updated by SU in admin and editable)
    Replace Referring URL – Clicks that originate from any domain will be changed to mydomain.com_1234 (SUB ID) – MUST ALSO DISABLE DIFFERENT REF URL Screen

    Foreign Traffic - Must Block at time of search – Capture IP address on search, only return results of AP enabled for foreign traffic from acceptable countries (determined by TP connect to AP page) “countries”

    Sample Code of Filters:


    CREATE PROCEDURE feed provider
    @fAmount float, -- Takes as parameters Amount(bidding)
    @vchUrl varchar(200), -- Url address
    @chPartnerAccountID char(10), -- PartnerAccountID
    @vchKeyword varchar(35), -- searched keyword
    @chAddr char(20) = NULL,
    @chReferURL varchar(100) = NULL,
    @chLang char(5) = NULL,
    @iClickDelayNum numeric(18) = NULL,
    @vchVia char(128) = NULL,
    @vchXForward char(75) = NULL,
    @vchUserAgent char(128) = NULL,
    @vchClientIp char(15) = NULL,
    @iKey numeric(18) = NULL,
    @CurDateTime datetime = NULL,
    @ExtraInfo varchar(35) = NULL,
    @snid int = 0
    AS
    begin
    set @vchUrl = ''

    if (@iKey is not null)
    begin
    if (exists (select * from tblAdMarketClicks where iKey = @iKey))
    begin
    PRINT convert(varchar, @iKey) + ': Key Already in the Data Base'
    return
    end
    end

    declare @tiValidClick tinyint
    declare @fRefShare float
    declare @chFeedType char(2)

    select @fRefShare = 0.5, @chFeedType='AD', @tiValidClick = 1
    if (@CurDateTime is null)
    begin
    select @CurDateTime = getdate()
    end

    declare @iClickDelay int
    if (@iClickDelayNum > 999999999)
    select @iClickDelayNum = 999999999
    select @iClickDelay = convert(int, @iClickDelayNum)


    declare @vchFixUrl varchar(512)
    select @vchFixUrl = @chReferURL
    exec spFixUrl @vchFixUrl OUTPUT

    if (@tiValidClick=1 and exists (select * from tblBlockedUrl WITH(readuncommitted) where vchDomain = @vchFixUrl))
    begin
    select @tiValidClick = 29
    end

    if (@tiValidClick=1 and @vchVia is not null or @vchXForward is not null or @vchClientIp is not null)
    begin
    declare @DumpProxyTraffic int
    select @DumpProxyTraffic = vchValue from tblAccountExtraInfo where chInfoName = 'DUMP_PROXY_TRAFFIC' and chAccountID = @chPartnerAccountID
    if (@DumpProxyTraffic = '1')
    begin
    select @tiValidClick = 40
    end
    end

    if (@tiValidClick=1 and @vchUserAgent is null)
    begin
    select @tiValidClick = 41
    end

    declare @iBlockedClick tinyint
    exec @iBlockedClick = spCheckIfBlockIp @fAmount, @vchUrl, @chPartnerAccountID, @vchKeyword, @chAddr, @chReferURL, @chLang, @iClickDelay
    if (@tiValidClick=1 and @iBlockedClick = 1)
    begin
    select @tiValidClick = 20
    end

    if (@tiValidClick=1 and @iClickDelay > 0 and @iClickDelay < 500)
    begin
    select @tiValidClick = 11
    end

    if (@tiValidClick=1 and @iClickDelay > 1800000)
    begin
    select @tiValidClick = 12
    end

    if (@tiValidClick=1 and isnull(@chReferURL,'') = '')
    begin
    select @tiValidClick = 9
    end

    if (@tiValidClick=1 and @fAmount > 5)
    begin
    select @tiValidClick = 8
    end

    if (@tiValidClick=1 and @fAmount < 0)
    begin
    select @tiValidClick = 50
    end

    if (@tiValidClick=1 and ((@chLang is null) or (@chLang in ('ru', 'tr', 'da', 'th', 'he', 'pl', 'bg', 'id', 'ko', 'de')) or (@chLang like 'ar%') or( @chLang like 'zh%')))
    begin
    select @tiValidClick = 2
    end

    if (@tiValidClick=1 and @fAmount > 0.6)
    begin
    declare @v_chIPStart3 char(3)
    declare @v_chIPStart6 char(6)
    select @v_chIPStart6 = substring(@chAddr, 1, 6)
    select @v_chIPStart3 = substring(@chAddr, 1, 3)

    if (@v_chIPStart3 in ('61.', '193', '194','195', '200', '202', '203', '212', '213', '217', '210', '218','211') or @v_chIPStart6 in ('24.132'))
    begin
    select @tiValidClick = 2
    end
    end

    if (@tiValidClick=1 and exists (select 1 from tblBlockedIP where chIP = @chAddr))
    begin
    select @tiValidClick = 3
    end


    declare @countInLast30Min int
    select @countInLast30Min = count(*) from tblAllClicksWork WITH(readuncommitted) where chAddr = @chAddr and chPartnerAccountID = @chPartnerAccountID and dtClicked >= dateadd(minute, -30, @CurDateTime)
    if (@tiValidClick=1 and @countInLast30Min > 12)
    begin
    select @tiValidClick = 10
    end

    select @countInLast30Min = count(*) from tblAdMarketClicksWork WITH(readuncommitted) where chAddr = @chAddr and chPartnerAccountID = @chPartnerAccountID and dtClicked >= dateadd(minute, -30, @CurDateTime)
    if (@tiValidClick=1 and @countInLast30Min > 12)
    begin
    select @tiValidClick = 10
    end


    declare @countInLast12Hrs int
    select @countInLast12Hrs = count(*) from tblAllClicksWork WITH(readuncommitted) where chAddr = @chAddr and chPartnerAccountID = @chPartnerAccountID and dtClicked >= dateadd(hour, -12, @CurDateTime)
    if (@tiValidClick=1 and @countInLast12Hrs > 20)
    begin
    select @tiValidClick = 7
    end

    if (@tiValidClick=1 and exists (select * from tblAdMarketClicksWork WITH(readuncommitted) where chAddr = @chAddr and (dtClicked between dateadd(second, -15, @CurDateTime) and dateadd(second, -1, @CurDateTime) )))
    begin
    select @tiValidClick = 4
    end


    if (not exists (select * from tblPartnerInfo WITH(readuncommitted) where chAccountID = @chPartnerAccountID))
    begin
    set @chPartnerAccountID = null
    end

    declare @NoBay9Filter int
    select @NoBay9Filter = vchValue from tblAccountExtraInfo where chInfoName = 'NO_AdMarket_FILTER' and chAccountID = @chPartnerAccountID
    if (@NoBay9Filter = '1')
    begin
    select @tiValidClick = 1
    end

    insert into tblAdMarketClicksAll(iKey, vchKeywordText, dtClicked, fAmount, chPartnerAccountID, chAddr, chReferURL, chLang, iClickDelay, vchVia, vchXForward, vchUserAgent, vchClientIp, tiValidClick, vchExtraInfo) values(@iKey, @vchKeyword, @CurDateTime, @fAmount, @chPartnerAccountID, @chAddr, @chReferURL, @chLang, @iClickDelay, rtrim(@vchVia), rtrim(@vchXForward), rtrim(@vchUserAgent), rtrim(@vchClientIp), @tiValidClick, @ExtraInfo)
    insert into tblAdMarketClicksWork(iKey, vchKeywordText, dtClicked, fAmount, chPartnerAccountID, chAddr, chReferURL, chLang, iClickDelay, tiValidClick) values(@iKey, @vchKeyword, @CurDateTime, @fAmount, @chPartnerAccountID, @chAddr, @chReferURL, @chLang, @iClickDelay, @tiValidClick)
    insert into tblAllClicksWork(iKey, dtClicked, chSource, vchKeywordText, fAmount, chPartnerAccountID, chAddr, chLang, iClickDelay, tiValidClick) values(@iKey, @CurDateTime, @chFeedType, @vchKeyword, @fAmount*@fRefShare, @chPartnerAccountID, @chAddr, @chLang, @iClickDelay, @tiValidClick)
    if (@tiValidClick != 1)
    begin
    return
    end

    insert into tblAdMarketClicks(iKey, vchKeywordText, dtClicked, fAmount, chPartnerAccountID, chAddr) values(@iKey, @vchKeyword, @CurDateTime, @fAmount, @chPartnerAccountID, @chAddr)
    insert into tblAllClicks(iKey, dtClicked, chSource, vchKeywordText, fAmount, chPartnerAccountID, chAddr, chLang, vchVia, vchXForward, vchUserAgent, vchClientIp, vchUrl, vchExtraInfo) values(@iKey, @CurDateTime, @chFeedType, @vchKeyword, @fAmount*@fRefShare, @chPartnerAccountID, @chAddr, @chLang, @vchVia, @vchXForward, @vchUserAgent, @vchClientIp, @vchFixUrl, @ExtraInfo)

    end
    GO

    Project winner must provide on-going support for 90 days minimum to make minor adjustments / corrections if needed.

    Thanks
    Market

    Additional Info (Added 11/12/2009 at 22:42 EST)...
    Hopefully this added comment will explain my needs better.

    1) need the ppc ad platform that i can input up to 40 xml feeds and system will send traffic to highest bid.

    2) need the aforementioned filters

    3) publisher filters - admin needs capability to turn on / off per publisher

    4) publishers need capability to create accounts / login and view stats

    5) publishers need to view, # of searches, # of clicks, revenue for both their default account and their sub-ids by date range.

    6) need web design with the platform / script
  • Tags:
Project Bids
Programmer Bid Delivery Time Time of Bid Rating  
prog123 $1,500 30 days 11/13/2009 at 5:59 EST (No Feedback Yet)
I did project like that before. I can do it in 30 days.
johnchristi $1,550 30 days 11/12/2009 at 4:22 EST 6.18/10
(13 reviews)
Hello, It would be a pleasure to work on your project. Regards, John
britishyip $1,950 37 days 11/12/2009 at 3:35 EST 8.55/10
(117 reviews)
We're experts in cloning. have completed various cloning projects in recent past. have studied your requirement, can offer you exact site with all features with smooth admin, cms and user interface. Looking forward to have long term business relationship with you. Thanks and Regards Raj