
內容簡介
此外掛程式管理志願者網絡,更具體來說,他們的貢獻已在此配置您的活動。
它讓您建立“活動”,您需要從不同想要貢獻您事業的人收集數據。對於每個活動,您可以定義特定的數據模型(使用我們實現的數據類型,如地理、圖像、字典、文本、數字、日期...),可以接收結構化數據的貢獻。
此外掛程式在您的域名下公開了一個 RESTful API,可被任何客戶端使用,我們已建立了一個 Android 客戶端, 但您也可以編程其他客戶端。
API 方法:
GET /cindaAPI/server/info/
返回一般伺服器數據
GET /cindaAPI/campaigns/list/
活動列表
GET /cindaAPI/campaign/([0-9]+)/
活動詳情。
GET /cindaAPI/campaign/([0-9]+)/model/
貢獻活動的數據模型
GET /cindaAPI/campaign/([0-9]+)/listData/
活動的貢獻列表
POST /cindaAPI/campaign/([0-9]+)/sendData/
發送/保存貢獻
GET /cindaAPI/campaign/([0-9]+)/listVolunteers/
列出在伺服器上註冊的志願者
GET /cindaAPI/topVolunteers/
獲取前幾位貢獻者
POST /cindaAPI/campaign/([0-9]+)/suscribe/
訂閱活動
POST /cindaAPI/campaign/([0-9]+)/unsuscribe/
停止關注活動
POST /cindaAPI/volunteer/register/
註冊/登入伺服器中的用戶。返回呼叫受保護操作所需的令牌。
POST /cindaAPI/volunteer/update-endpoint/
為推送通知更新用戶的設備端點
GET /cindaAPI/volunteer/([0-9]+)/
志願者資料
GET /cindaAPI/volunteer/([0-9]+)/listData/
提交的貢獻列表由志願者提交
GET /cindaAPI/volunteer/activate-login/
啟用帳戶以在 WebAPP 中操作,它會發送一封電子郵件與數據說明
GET /cindaAPI/contribution/([0-9]+)/
貢獻詳情
GET /cindaAPI/realtime/contributions/
一個特殊的操作,專門設計為從 Companion App 呼叫,以將數據發送到可穿戴裝置上。
GET /cindaAPI/realtime/nearby-activity/
可穿戴裝置相關的東西,正在進行中...
GET /cindaAPI/realtime/watchface/
要在 Android Wear 智能手錶的表面上繪製的數據
GET /cindaAPI/dictionary/([0-9]+)/
返回可在活動中的特殊類型的字段的值
GET /cindaAPI/trackings/
返回用戶記錄的路線軌跡。
GET /cindaAPI/tracking/([0-9]+)/
軌跡詳情
POST /cindaAPI/tracking/send/
發送軌跡
GET /cindaAPI/opendata/campaigns/
展示有關活動的所有信息以公開數據平台的一種方式
GET /cindaAPI/opendata/contributions/
展示有關貢獻的所有信息以公開數據平台的一種方式
外掛標籤
開發者團隊
原文外掛簡介
This plugin manages volunteer networks. More specifically, the contributions of these volunteers have configured your campaigns here.
It lets you create “campaigns” in which you need to collect data from different people who want to contribute to your cause. For each campaign you can define a specific data model (using data types that we have implemented, such as geo, images, dictionaries, text, numbers, dates, …) and can receive contributions of structured data.
The plugin exposes a RESTful API in yourdomain.tld/cindaAPI/ that can be consumed by any client. We have built one for Android (especially nice;-)), but if you want you can program another.
API Methods:
GET /cindaAPI/server/info/
Returns general server data
GET /cindaAPI/campaigns/list/
Campaigns list
GET /cindaAPI/campaign/([0-9]+)/
Details of a campaign.
GET /cindaAPI/campaign/([0-9]+)/model/
Data model of contributions to a campaign
GET /cindaAPI/campaign/([0-9]+)/listData/
List of contributions to a campaign
POST /cindaAPI/campaign/([0-9]+)/sendData/
Send/Save a contribution
GET /cindaAPI/campaign/([0-9]+)/listVolunteers/
List Volunteers registered on the server
GET /cindaAPI/topVolunteers/
Get the top contributors
POST /cindaAPI/campaign/([0-9]+)/suscribe/
Subscription to a campaign
POST /cindaAPI/campaign/([0-9]+)/unsuscribe/
Stop following a campaign
POST /cindaAPI/volunteer/register/
Register/login of a user on the server. Returns a token required to call protected operations.
POST /cindaAPI/volunteer/update-endpoint/
Updates the user device endpoint for push notifications
GET /cindaAPI/volunteer/([0-9]+)/
Data of a volunteer
GET /cindaAPI/volunteer/([0-9]+)/listData/
List of contributions for submitted by a volunteer
GET /cindaAPI/volunteer/activate-login/
Activate account to operate in WebAPP, it send a mail with data instructions
GET /cindaAPI/contribution/([0-9]+)/
Details of a contribution
GET /cindaAPI/realtime/contributions/
A special operation, designed to be called from the companion App to send data to a wearable.
GET /cindaAPI/realtime/nearby-activity/
Wearable related stuff, in progress…
GET /cindaAPI/realtime/watchface/
Data to paint on the watch face of and Android Wear smartwatch
GET /cindaAPI/dictionary/([0-9]+)/
Returns values for a special type of field available on the campaigns
GET /cindaAPI/trackings/
Returns tracks of routes recorded for a user.
GET /cindaAPI/tracking/([0-9]+)/
Details of a track
POST /cindaAPI/tracking/send/
Send a track
GET /cindaAPI/opendata/campaigns/
One way of show all the info about Campaigns to expose an Open Data platform
GET /cindaAPI/opendata/contributions/
One way of show all the info about Contributions to expose an Open Data Platform
before any POST you need to get a temporary token (nonce), here is the way you can get it:
Register: /cindaAPI/nonce/volunteer_register/?token=[token]
update endpoint: /cindaAPI/nonce/volunteer_update_endpoint/?token=[token]
Subscribe: /cindaAPI/nonce/campaign_suscribe/?token=[token]
Unsubscribe: /cindaAPI/nonce/campaign_unsuscribe/?token=[token]
Send contribution: /cindaAPI/nonce/campaign_sendData/?token=[token]
Send tracking: /cindaAPI/nonce/tracking_send/?token=[token]
The token especified is obtained on the (POST /cindaAPI/volunteer/register/) and before you must call /cindaAPI/nonce/volunteer_register, so you have to generate your own unique “first token” for this call (ex. = device UUID)
Almost the GET operations have a (optional) token. It is not compulsory, but necessary to consult own data.
Client
You can download and compile your own version of Android client https://github.com/si2info/cinda-android
We are in process of writing some documentation, please be patient 🙂
More info
You can visit http://www.cinda.science/ for more information about this free citizen science project designed and promoted by http://iecolab.es and developed by http://si2.info
