## 項目設計
### 設計草圖
圖一

圖二

### 流程設計
1. 平臺發布一期廣告(發起者/創建者為:平臺)
1. 設置流量主報名門檻(公眾號的粉絲量須達到多少,允許參加的公眾號類型)
2. 設置1 ~ 16個廣告位的定價
3. 設置流量主報名時間段(`2017-5-22 08:00:00 - 2017-5-22-10:00:00`)
4. 設置廣告主報名/投放(購買廣告位)時間段(`2017-5-22 10:00:00 - 2017-5-22 12:00:00`)
5. 設置這一期廣告的操作截止時間(`2017-5-22 13:00:00`)
6. 設置這一期廣告的發布時間(`2017-5-22 14:00:00`)
2. 流量主報名
3. 廣告商報名,并開始選擇廣告位投放廣告(先報名,報名了才能投放廣告)
4. 流量主 & 廣告商 的調整時間
5. 進入鎖定時間
6. 進入發布時間
7. 系統后臺人工發布或者自動發布
8. 系統檢測
9. 推送
10. 結算,完成
* * * * *
### 其他重要細節說明
~~~
流程/概念/細節說明:
1. 流量主只能在報名時間段內報名,其它時間報名通道自動關閉,就不能再報名
2. 廣告主只能在報名/投放時間段內報名/投放,其它時間報名/投放通道自動關閉,就不能再報名/投放(注意這里是報名/投放)
3. 調整時間 = 廣告主報名/投放結束時間 至 操作截止時間 (2017-5-22 12:00:00 - 2017-5-22 13:00:00)
- 調整時間可以:
- 流量主可以選擇不認可的廣告 —— 公眾號挑流量主(廣告)
- 廣告主可以屏蔽的不想投放的流量主(公眾號),注意不能夠再改變廣告位了 —— 流量主(廣告)挑公眾號
5. 鎖定時間 = 操作截止時間 至 發布時間 (2017-5-22 13:00:00 - 2017-5-22 14:00:00)
6 鎖定時間:
- 流量主報名已完畢(流量主報名結束時就已完畢)
- 流量主想屏蔽的廣告位設置完畢(調整時間段就已完畢)
- 列出我將要推送的每條廣告,價格,以及每條廣告的廣告商
- 計算出流量主預計(最大)收益,推廣粉絲數,供瀏覽(生成效果報表)
- 廣告商報名/投放已完畢(廣告商報名/投放結束時就已完畢)
- 廣告商想屏蔽的流量主(公眾號)設置完畢(調整時間段就已完畢)
- 列出我投放的廣告位,廣告,價格,以及每個廣告位的推廣流量主(公眾號)
- 計算出廣告商預計(最大)費用,推廣人次,供瀏覽(生成效果報表)
7. 鎖定時間,所有通道、入口都被鎖定,不能在進行任何操作
- 系統會檢查廣告商參與資格,余額是否充足等,對于不合格的廣告商及時聯系和清退
- 系統會檢查流量主信息(待完善考慮)
8. 流量主(公眾號)報名資格控制:
- 報名前的一個小時內系統強制公眾號必須拉取一次粉絲數量(這個報名時間是實際操作報名時間,而不是報名開始或結束時間)
- 一個小時內已經拉取過的話就不在拉取(防止頻繁操作這種拉取粉絲的耗時接口)
9. 資金,費用結算問題:
- 所有的費用,收益都只會在成功推送了廣告才會計算
- 對于廣告商來說,每條廣告(廣告位)被每個流量主(公眾號)推送成功才會產生實際的費用
- 對于流量主(公眾號)來說,成功推送出每一條廣告(廣告位)才會產生實際的收益
10. 報名的意思:
- 對于流量主(公眾號)來說,報名意味著接受所有滿足條件的(投放了廣告,且沒有屏蔽我,而我也沒有屏蔽它)廣告位的廣告,當然,在調整時間段可以有選擇性的屏蔽某些廣告
- 對于廣告商來說,報名(和流量主不同,報名只是個形式而已,還需要選擇廣告位投放廣告位才行)意味著,投放一個廣告位默認會投放到所有滿足條件的(報名,且沒有屏蔽我,而我也沒有屏蔽它)流量主(公眾號)上去,當然,在調整時間段可以有選擇性的屏蔽不想要的 流量主(公眾號)
11. 對于廣告商如果想提現,則需要有一個提現周期的控制,因為要防止和他的廣告投放付費產生沖突,需要控制好。
12. 涉及到重要的操作以及資金變化操作,要有必要的日志。每一步重要流程,操作,狀態都有日志,廣告期日志貫穿整個流程,整個廣告的生命周期
~~~
**廣告商報名問題**
廣告商需要先在后臺添加廣告文案,投放廣告時選擇一個文案,投放成功后此文案被鎖定,不能再被修改,取消投放時文案才被解鎖,這么做的原因是因為,調整階段,公眾號就是看廣告的內容合不合適,如果確定后還能改那就沒意義了。**也就是說廣告內容隨著廣告投放通道的關閉而鎖定。**
**調整有什么用?**
當所有公眾號確定后,廣告也確定后,公眾號可以選擇他不想發的某些廣告,同樣廣告商也可以選擇不想讓誰發他的廣告,仔細想一下這個需求,比如公眾號不喜歡某類的文章廣告,覺得與他的公眾號屬性不符,粉絲群體不符,或者廣告商不喜歡某種類型的公眾號,畢竟一切要以用戶為主,公眾號既要賺錢又要維護粉絲的利益,廣告商則想利益最大化,成本最小化,所以這個“調整”的需求其實挺重要的。
調整很重要,但也有副作用:
“調整”會帶來廣告位“空位”的問題,如1空位,那么2就會在1那兒,但用的錢還是2的錢哦。
如果廣告位出現空位,且空位數小于8(沒有全部空)的情況下,可以在最后補一個比如:“沒關注這些你就out了的文章”(讓粉絲都相互關注,增強粉絲數量),或者實現一些替補機制,反正要最大利用每天的推送機會,不能夠浪費了。
>[danger] 其實這個可以讓公眾號自己準備文案,他也想發自己的。不能以廣告為主,否則傷害了用戶,大家全部完蛋,**幫助公眾號經營粉絲,廣告商營銷,共同創造收入,這才是我們的初衷,不然只會自己作死自己**。
~~~
服務號每個自然月最多有4次群發消息的機會,每次最多8條消息
訂閱號每天有1次群發消息的機會,每次最多8條消息
~~~
~~~
1. 廣告主a廣告a1屏蔽了公眾號A,那么A推送的廣告A1就沒有了,A的推送自然就會少一條消息
2. 同理,公眾號A屏蔽了廣告a1,那么A推送的消息中就沒有A1了,被下面的取代了。
3. TODO: 更極端的情況是廣告主屏蔽了所有公眾號,或者公眾號屏蔽了所有廣告位,因此需要有一種機制檢測此類問題。【待完善】
~~~
**預計是不考慮“調整”和推送結果的**
調整會降低廣告費用和廣告收益,預計費用是不考慮調整的,實際費用可能低于預計費用的原因是因為:有一部分調整過了,就沒推送消息,有的是推送失敗的也不會計算費用很收益的。(這里預計費用和預計推送量等同理,存在同樣的情況哦)
廣告商報名時要付的錢(凍結)就是按預計算的,預計是最大的,是假設都沒屏蔽,都推送成功的最大費用。
**流程說明**
公眾號報名 插入 fn_ad_wechat_account_participate表
廣告商報名 插入 fn_ad_advertisers_participate 表
廣告商報名/投放時,凍結預計費用,并操作 fn_ad_advertisers_order 生成【訂單】,進入鎖定階段時,生成【訂單條目】和【公眾號的訂單】,這種模式比較別扭,但是是最好的解決方式,報名時要生成每個公眾號的記錄,那么顯然不合適,所以只能這樣。
鎖定期間做,所以把這一部成為 【生成預效果報表】其實就是出 【訂單條目】和【公眾號的訂單】,可以讓他們提前看到詳情信息,最后一步就是要得到推送的反饋結果了,如果沒來得及做這一步,推送時也會做的。這一步做時更好,可以提前看到“報表”。
最后推送完畢,根據反饋結果,完善“報表”就可以了。
* * * * *
### 其他玩法
**1. 做一個公眾號影響力排行榜列表**
- 公眾號的影響力的屬性:累計交易量,粉絲量,公眾號類型,文章閱讀量截圖,微信認證,平臺加認證,勛章等等
**2. 做一個廣告商影響力排行榜列表**
- 廣告商的影響力的屬性累計交易量,保證金等等
有想法的廣告商可以自主邀請公眾號參加報名,自助設置廣告位出價,還可以讓其他公眾號自主報名
有想法的流量主可以自主設置廣告位定價出售,讓廣告商來購買廣告位,也可以向其他廣告商發出邀請
~~~
其實這兩類和上面的玩法都一樣,這里就涉及到一個“一期廣告”是由誰發起的問題了,下面給出:
1. 平臺發起的
- 創建者為平臺
- 平臺定價
- 讓廣告商和流量主都來報名
2. 廣告商發起的
- 創建者為發起廣告商
- 創建者自動第一個報名
- 創建者出價
- 創建者可以邀請流量主報名(發送通知消息)
- 流量主(公眾號)可以自主報名,但需要需經過創建者審核
3. 流量主發起的
- 創建者為流量主(公眾號)
- 創建者自動第一個報名
- 創建者設置廣告位定價
- 創建者可以邀請廣告商報名(發送通知消息)
- 廣告商可以自主報名,但需要創建者審核
TODO: 實際上存在一個問題,一個廣告位只能給一個廣告商,但是如果此廣告商屏蔽了所有流量主(公眾號),或者所有流量主都屏蔽了某條廣告,那么就會造成空位,但又不能讓一個位置給多個廣告商家,這樣做不好控制,太復雜了。
~~~
**個性化的廣告**
XXX你有一分禮物代收哦,XXX可以獲取到關注公眾號用戶的用戶名。通過一些技術手段,統一獲取到用戶的openid是可以做到的。
* * * * *
### 項目技術難點
| 難點 | 難度等級 |
| --- | --- |
| 1. 定時/延時任務的管理 | 5級 |
|2. 系統流程,架構 |4級 |
|3. 公眾號圖文消息群發推送處理 |2級 |
|4. 微信公眾號接口令牌的維護 |1級 |
last update:2017-6-1 12:06:12