社群評分和標章

概覽

AEM Communities的得分和徽章功能提供識別和獎勵社區成員的能力。

評分和徽章的主要方面是:

  • 定標誌,以標識成員在社區中的角色

  • 基本授予會 員以鼓勵其參與(建立的內容數量)

  • 進階授與徽 章,將會員識別為專家(建立的內容品質)

請注 意,預設不會 啟用標章授予

注意

當UI可用時,CRXDE Lite中可見的實作結構可能會變更。

徽章

標章會放在成員名稱下,以指出其角色或在社群中的地位。 標章可以顯示為影像或名稱。 當顯示為影像時,名稱會包含為協助工具的替代文字。

預設情況下,徽章位於

  • /etc/community/badging/images

如果儲存在不同的位置,則每個人都應該可以讀取。

在UGC中,徽章會區分為是指派徽章,還是根據規則賺取徽章。 目前,指派的標章會顯示為文字,而免費標章會顯示為影像。

徽章管理UI

社區標章控制台提供添加自定義標章的功能,這些標章可在獲得(授予)成員或成員在社區中承擔特定角色(指派)時顯示。

指派的標章

基於角色的徽章由管理員根據社區成員在社區中的角色指派給社區成員。

已分配(和已喚醒)的標誌儲存在選定的SRP中,不能直接訪問。 在GUI可用之前,指派角色標章的唯一方法就是使用程式碼或cURL。 如需cURL指示,請參閱指派和廢止標章一節。

此發行包含3個以角色為基礎的標章:

  • 版主

    /etc/community/badging/images/moderator/jcr:content/moderator.png

  • 群組管理員

    /etc/community/badging/images/group-manager/jcr:content/group-manager.png

  • 特權成員

    /etc/community/badging/images/privileged-member/jcr:content/privileged-member.png

chlimage_1-366

獎章

評分服務會根據社區成員在社區活動中適用的規則,向社區成員頒發獎勵標章。

為了讓徽章作為活動的獎勵出現,必須有兩件事:

  • 標籤必須為enabled,才能使用功能元件
  • 計分和標籤規則必須applied至元件所在的頁面(或上階)

本版包含3個獎勵型徽章:

  • 金級

    /etc/community/badging/images/gold-badge/jcr:content/gold.png

  • 銀級

    /etc/community/badging/images/silver-badge/jcr:content/silver.png

  • 銅級

    /etc/community/badging/images/bronze-badge/jcr:content/bronze.png

chlimage_1-367

注意

評分規則可設定為為標示為不適當之貼文指派負點,進而影響分數值。 不過,一旦獲得徽章,就不會因為計分點減少或計分規則變更而自動移除徽章。

吊銷獎章的方式與吊銷標章相同。 請參閱指派和撤銷標章一節。 未來的改進將包括管理會員徽章的UI。

自訂標章

可使用標章控制台安裝自訂標章,並可在標章規則中指定或指定。

當從Badges控制台安裝時,自訂標章會自動複製至發佈環境。

啟用計分

預設未啟用計分。 標章設定與啟用評分與授獎的基本步驟為:

請參閱快速測試區段,以啟用社群網站的評分,使用論壇和留言的預設計分和標籤規則。

套用規則至內容

若要啟用計分和標章,請將屬性scoringRulesbadgingRules新增至網站內容樹中的任何節點。

如果網站已發佈,在套用所有規則並啟用元件後,請重新發佈網站。

適用於啟用徽章的元件的規則是當前節點或其祖先的規則。

如果節點類型為cq:Page(建議),則使用CRXDE|Lite將屬性添加到其jcr:content節點。

屬性 類型 說明
badgingRules String[] 標籤規則的陣列清單
計分規則 字串[] 計分規則的陣列清單
注意

如果評分規則似乎對獎勵徽章沒有影響,請確定評分規則未被評分規則的scoringRules屬性封鎖。 請參閱標籤規則一節。

啟用元件的標章

計分和標籤規則僅對通過在編寫模式中編輯元件配置而啟用標籤的元件的實例有效。

布林屬性allowBadges會啟用/停用元件例項的標章顯示。 它可在論壇的元件編輯對話框中配置,並通過標有​顯示標章​的複選框對元件進行注釋。

範例:論壇元件實例的allowBadges

chlimage_1-368

注意

任何元件都可重疊,以顯示標章,例如論壇、QnA和註解中的HBS程式碼。

計分規則

評分規則是評分標誌的基礎。

很簡單,每個計分規則都是一或多個子規則的清單。 計分規則會套用至社群網站內容,以識別在啟用標章時套用的規則。

計分規則是繼承的,但不是加法的。 例如:

  • 如果page2包含計分規則2,其上階page1包含計分規則1

  • page2元件上的動作會同時叫用規則1和規則2

  • 如果兩個規則都包含相同topic/verb的適用子規則:

    • 只有規則2的子規則會影響分數
    • 兩個子規則的分數不會加在一起

當有多個計分規則時,會針對每個規則分別維護分數。

計分規則是類型cq:Page的節點,其jcr:content節點上具有指定定義該節點的子規則清單的屬性。

分數會儲存在SRP中。

注意

最佳實務:為每個計分規則指定唯一名稱。

計分規則名稱應全局唯一;不應以同名結尾。

not​的範例:
/etc/community/scoring/rules/site1/forums-scoring
/etc/community/scoring/rules/site2/forums-scorning

計分子規則

計分子規則包含詳細說明參與社群的值的屬性。

每個計分子規則識別

  • 追蹤哪些活動
  • 其中包含哪些特定的社群功能
  • 獲得多少分

預設情況下,除非子規則指定接收點(forOwner)的內容所有者,否則將向採取操作的成員授予點數。

每個子規則可以包含在一個或多個計分規則中。

子規則的名稱通常遵循使用​主旨、物件​和​動詞​的模式。 例如:

  • member-comment-create
  • 會員接收投票

子規則是類型cq:Page的節點,其jcr:content節點具有指定動詞和主題的屬性。

屬性 類型 值說明
VERB 長整數
  • 必要;動詞與事件動作相對應
  • 至少有一個動詞屬性
  • 動詞必須輸入全部大寫
  • 有多個動詞屬性,但沒有重複
  • 值是要套用至此事件的分數
  • 值可以是正數或負數
  • 主題與動詞章節中支援的動詞清單
topics String[]
  • 可選;將子規則限制為由事件主題標識的社區元件
  • 如果已指定,則:值是事件主題的多值字串
  • 主題和動詞部分中列出了此版本中的主題清單
  • default is to apply to all topics associated with verb(s)
forOwner 布林值 (Boolean)
  • 可選;與會員根據其擁有的內容行事無關
  • 若為真,則對所處理內容的擁有者套用分數
  • 如果為false,請將分數套用至執行動作的成員
  • default is false
scoringType 字串
  • 可選;識別計分引擎
  • 如果為"basic",則根據數量指定計分引擎
    • 包含在發行中
  • 如果為「進階」,則根據品質和數量指定計分引擎
  • 預設值為"basic"

包含計分規則和子規則

此發行包含論壇功能的兩個計分規則(論壇功能的「論壇」和「評論」元件各一個):

  1. /etc/community/scorting/rules/comments-scorting

    • subRules[] =

      /etc/community/scoring/rules/subrules/member-comment-create

      /etc/community/scoring/rules/sub-rules/member-receive-pote

      /etc/community/scoring/rules/sub-rules/member-give-pote

      /etc/community/scoring/rules/subrules/member-is-horaded

  2. /etc/community/scoring/rules/forums-scoring

    • subRules[] =

      /etc/community/scoring/rules/subrules/member-forum-create

      /etc/community/scoring/rules/sub-rules/member-receive-pote

      /etc/community/scoring/rules/sub-rules/member-give-pote

      /etc/community/scoring/rules/subrules/member-is-horaded

附註:

  • rulessub-rules節點都屬於cq:Page

  • subRules是類型為[] Stringon規則節點的屬 jcr:content

  • sub-rules 可能與各種計分規則共用

  • rules應位於具有每個人的讀取權限的儲存庫位置

    • 規則名稱必須是唯一的,無論位置為何

啟用自訂計分規則

在作者環境中對計分規則或子規則所做的任何變更或新增,都必須安裝在發佈上。

標籤規則

標籤規則會指定下列項目,將計分規則連結至標章:

  • 哪個計分規則
  • 需要察覺特定徽章的分數

標籤規則是類型cq:Page的節點,其jcr:content節點上的屬性會將計分規則與分數和標籤建立關聯。

標籤規則包含必備的thresholds屬性,此屬性是映射至標章的分數順序清單。 分數必須依增加值排序。 例如:

  • 1|/etc/community/badging/images/bronze-badge/jcr:content/bronze.png

    • 獲得1分的銅牌
  • 60|/etc/community/badging/images/silver-badge/jcr:content/silver.png

    • 當積分達60分時,將頒發一枚銀牌
  • 80|/etc/community/badging/images/gold-badge/jcr:content/gold.png

    • 當累積80分時,就會發現金牌

標籤規則與計分規則配對,可決定點數的累積方式。 請參閱將規則套用至內容一節。

標籤規則上的scoringRules屬性只會限制哪些計分規則可與該特定標籤規則配對。

注意

最佳實務:建立每個網站專屬的徽章AEM影像。

chlimage_1-369

屬性 類型 值說明
閾值 字串[] (必要) 「number|path」格式的多值字串
  • 數字=分數
  • | =垂直線字元(U+007C)
  • 路徑=標籤映像資源的完整路徑
字串必須依序排列,如此數字值就會增加,數字和路徑之間不應出現空白空格。
範例項目:
80|/etc/community/badging/images/gold-badge/jcr:content/gold.png
badgingType 字串 (選用) 將計分引擎識別為「基本」或「進階」。如果需要進階計分引擎,請參閱進階計分和標章。 預設值為「basic」。
scoringRules 字串[] (optional)多值字串,將標籤規則限制為由計分規則識別的計分事件

包含的標籤規則

此發行包含兩個與論壇和留言計分規則對應的標籤規則。

  • /etc/community/badging/rules/comments-badging
  • /etc/community/badging/rules/forums-badging

附註:

  • rules 節點的類型cq:Page

  • rules應位於具有每個人的讀取權限的儲存庫位置

    • 規則名稱必須是唯一的,無論位置為何

啟用自訂標籤規則

在作者環境中對標籤規則或影像所做的任何變更或新增動作都必須安裝在發佈上。

指派和撤銷標章

可以使用members console或使用cURL命令以程式設計方式將標章指派給成員。

下列cURL命令顯示HTTP要求指派和廢止標章的必要項。 基本格式為:

cURL -i -XPOST-H header -u *signin * -F *operation * -F *badge * member-profile-url

header = "Accept:application/json"
要傳遞至伺服器的自訂標題(必要)

signin = administrator-id:password
例如:admin:admin

operation = ":operation=social:assignBadge" OR ":operation=social:deleteBadge"

badge = "badgeContentPath=badge-image-file"

badge-image-file = badge映像檔案在儲存庫中的位置
例如:/etc/community/badging/images/coldrator/jcr/content/moderator.png

member-profile-url =發佈時成員配置檔案的端點
例如:https://<server>:<port>/home/users/community/riley/profile.social.json

注意

member-profile-url

範例:

指派協調者徽章

curl -i -X POST -H "Accept:application/json" -u admin:admin -F ":operation=social:assignBadge" -F "badgeContentPath=/etc/community/badging/images/moderator/jcr:content/moderator.png" /home/users/community/updcs9DndLEI74DB9zsB/profile.social.json

撤銷指派的銀色標章

curl -i -X POST -H "Accept:application/json" -u admin:admin -F ":operation=social:deleteBadge" -F "badgeContentPath=/etc/community/badging/images/silver/jcr:content/silver.png" /home/users/community/updcs9DndLEI74DB9zsB/profile.social.json
注意

使用cURL指派和撤銷標章適用於任何標章影像,但當指派標章(而非獲得)時,它們會標示為已指派的標章並據以處理。

自訂元件的計分和標章

可通過將為元件建立的事件主題與動詞關聯,為自定義元件建立計分和標籤規則。

主題和動詞

當成員與社群功能互動時,會傳送可觸發非同步接聽程式的事件,例如通知和計分。

元件的SocialEvent例項會將事件記錄為topic所發生的事件。 actionsSocialEvent包含傳回與動作相關聯之verb的方法。 在actionsverbs之間存在​n-1​關係。

對於傳遞的社區元件,下表說明為評分子規則中可用的每個topic定義的verbs

注意

新的布林屬性allowBadges可啟用/停用元件例項的標章顯示。 它將可通過標有​顯示標章​的複選框在更新的元件編輯對話框中進行配置。

日曆
元件SocialEvent topic= com/adobe/cq/social/calendar

動詞 說明
POST 成員建立日曆事件
新增 日曆事件上的成員注釋
更新 會編輯成員的日曆事件或注釋
刪除 會員的日曆事件或留言已刪除

Comments
ComponentSocialEvent topic= com/adobe/cq/social/comment

動詞 說明
POST 成員建立注釋
新增 成員回覆評論
更新 已編輯成員的注釋
刪除 會員的注釋已刪除

檔案庫
元件SocialEvent topic= com/adobe/cq/social/fileLibrary

動詞 說明
POST 成員建立資料夾
附加 成員上傳檔案
更新 成員更新資料夾或檔案
刪除 成員刪除資料夾或檔案


壇ComponentSocialEvent topic= com/adobe/cq/social/forum

動詞 說明
POST 成員建立論壇主題
新增 成員對論壇主題的回覆
更新 編輯成員的論壇主題或回覆
刪除 會員的論壇主題或回覆被刪除

Journal
ComponentSocialEvent topic= com/adobe/cq/social/journal

動詞 說明
POST 成員建立部落格
新增 部落格文章中的成員注釋
更新 會編輯會員的部落格文章或留言
刪除 會員的部落格文章或留言已刪除

QnA
ComponentSocialEvent topic = com/adobe/cq/social/qna

動詞 說明
POST 成員建立QnA問題
新增 成員建立QnA答案
更新 成員的QnA問題或答案已編輯
選擇 已選擇成員的答案
取消選擇 會員的答案為取消選擇
刪除 刪除成員的QnA問題或答案

Reviews
ComponentSocialEvent topic= com/adobe/cq/social/review

動詞 說明
POST 成員建立審閱
更新 會員的審核已編輯
刪除 會員的審核已刪除


分ComponentSocialEvent topic= com/adobe/cq/social/tally/rating

動詞 說明
新增評分 會員的內容已被評級
移除評分 會員的內容已降級

投票
元件SocialEvent topic= com/adobe/cq/social/tally/poting

動詞 說明
新增投票 會員的內容已通過投票
移除投票 會員的內容已被否決

啟用協調
的元件SocialEvent topic= com/adobe/cq/social/協調

動詞 說明
拒絕 會員的內容被拒絕
不適當的旗幟 會員的內容已標籤
取消標幟為不當 會員的內容已取消標幟
接受 會員的內容由協調者核准
關閉 成員關閉編輯和回覆的注釋
開啟 成員重新開啟注釋

自訂元件事件

對於自訂元件,會執行個體化SocialEvent,將元件的事件記錄為topic所發生的actions

若要支援計分,SocialEvent將需要覆寫方法getVerb(),以便針對每個action傳回適當的verb。 針對動作傳回的verb可以是常用的(例如POST)或專為元件(例如ADD RATING)。 在actionsverbs之間存在​n-1​關係。

疑難排解

徽章未出現

如果已將分數和徽章規則套用至網站的內容,但未察覺任何活動的徽章,請確定已為該元件的例項啟用徽章。

請參閱啟用元件標章

計分規則無效

如果已對網站內容套用計分和徽章規則,且某些動作(但非其他動作)會授與徽章,請檢查徽章規則是否未限制套用的計分規則。

請參閱標籤規則scoringRules屬性。

區分大小寫類型

大部分的屬性和值,尤其是動詞,都會區分大小寫。 在計分子規則中使用動詞時,必須全部為大寫。

如果功能未如預期運作,請確定資料已正確輸入。

快速測試

使用快速入門教學課程(參與)網站,可快速嘗試計分和標籤:

  • 作者的存取CRXDE Lite

  • 瀏覽至基本頁:

    • /content/sites/engage/tw/jcr:content
  • 新增badgingRules屬性:

    • 名稱: badgingRules
    • 類型: String
    • 選擇​
    • 選擇​添加
    • 輸入/etc/community/badging/rules/forums-badging
    • 選取 +
    • 輸入/etc/community/badging/rules/comments-badging
    • 選擇​確定
  • 新增scoringRules屬性:

    • 名稱: scoringRules
    • 類型: String
    • 選擇​
    • 選擇​添加
    • 輸入/etc/community/scoring/rules/forums-scoring
    • 選取 +
    • 輸入/etc/community/scoring/rules/comments-scoring
    • 選擇​確定
  • 選擇​全部保存

chlimage_1-370

接下來,請確定論壇和注釋元件允許顯示標章:

  • 再次使用CRXDE Lite

  • 瀏覽至論壇元件

    • /content/sites/engage/en/forum/jcr:content/content/primary/forum
  • 視需要新增allowBadges布林屬性,並確定其為true

    • 名稱: allowBadges
    • 類型: Boolean
    • : true

chlimage_1-371

接著,republish社群網站。

最後,

  • 瀏覽至發佈例項上的元件

  • 以社群成員身分登入(例如:weston.mccall@dodgit.com /密碼)

  • 張貼新論壇主題

  • 頁面必須重新整理,才能顯示徽章

    • 註銷並作為不同的社區成員登錄(例如:aaron.mcdonald@mailinator.com /密碼)
  • 選擇論壇

這應該會為社群成員贏得銅像徽章,其論壇貼文會顯示此徽章,因為第一個論壇徽章規則的第一個臨界值為1。

鑄幣

其他資訊

有關詳細資訊,請參閱開發人員的 Scoring and Badges Essentials頁面。

有關高級計分引擎的資訊,請參閱高級計分和標章

可配置的Lederboard 元件函式簡化了成員在社區站點上的顯示及其分數。

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now