snapshot of https://github.com/zulip/zulip.git @ 48c69911c7dd4e03b20552eb3bd77ad8151c1357 (2026-09-15)
Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
This commit is contained in:
0
zerver/webhooks/basecamp/__init__.py
Normal file
0
zerver/webhooks/basecamp/__init__.py
Normal file
30
zerver/webhooks/basecamp/doc.md
Normal file
30
zerver/webhooks/basecamp/doc.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# Zulip Basecamp integration
|
||||
|
||||
Receive notifications about Basecamp events in Zulip!
|
||||
|
||||
{start_tabs}
|
||||
|
||||
1. {!create-an-incoming-webhook.md!}
|
||||
|
||||
1. {!generate-webhook-url-basic.md!}
|
||||
|
||||
1. Go to your project on Basecamp, and toggle the **Settings** menu in
|
||||
the top right corner. Click on **Set up webhooks**, and then select
|
||||
**Add a new webhook**.
|
||||
|
||||
1. Set **Payload URL** to the URL generated above. Select the
|
||||
[events](#filtering-incoming-events) you'd like to be notified about,
|
||||
and toggle the checkbox under **Enable this webhook**. Finally, click
|
||||
**Add this webhook**.
|
||||
|
||||
{end_tabs}
|
||||
|
||||
{!congrats.md!}
|
||||
|
||||

|
||||
|
||||
{!event-filtering-additional-feature.md!}
|
||||
|
||||
### Related documentation
|
||||
|
||||
{!webhooks-url-specification.md!}
|
||||
69
zerver/webhooks/basecamp/fixtures/comment_created.json
Normal file
69
zerver/webhooks/basecamp/fixtures/comment_created.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 657037928,
|
||||
"kind": "comment_created",
|
||||
"details": {
|
||||
"notified_recipient_ids": []
|
||||
},
|
||||
"created_at": "2017-03-13T08:31:54.661+01:00",
|
||||
"recording": {
|
||||
"id": 427058780,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:31:54.647+01:00",
|
||||
"updated_at": "2017-03-13T08:31:54.647+01:00",
|
||||
"type": "Comment",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/comments/427058780.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624#__recording_427058780",
|
||||
"parent": {
|
||||
"id": 427055624,
|
||||
"title": "New task",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Re: New task",
|
||||
"content": "\u003cdiv\u003eComment\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
70
zerver/webhooks/basecamp/fixtures/doc_active.json
Normal file
70
zerver/webhooks/basecamp/fixtures/doc_active.json
Normal file
@@ -0,0 +1,70 @@
|
||||
{
|
||||
"id": 664749146,
|
||||
"kind": "document_active",
|
||||
"details": {
|
||||
"status_was": "drafted",
|
||||
"notified_recipient_ids": []
|
||||
},
|
||||
"created_at": "2017-03-16T07:39:52.731+01:00",
|
||||
"recording": {
|
||||
"id": 432522214,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:39:52.725+01:00",
|
||||
"updated_at": "2017-03-16T07:39:52.727+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/432522214.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/432522214",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Event Planning - Annual Conference",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Sponsorship Package Outline",
|
||||
"content": "\u003cdiv\u003eabc\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/doc_archived.json
Normal file
69
zerver/webhooks/basecamp/fixtures/doc_archived.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 667389851,
|
||||
"kind": "document_archived",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-17T07:51:26.948+01:00",
|
||||
"recording": {
|
||||
"id": 434455988,
|
||||
"status": "archived",
|
||||
"created_at": "2017-03-17T07:49:41.480+01:00",
|
||||
"updated_at": "2017-03-17T07:51:26.944+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/434455988.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/434455988",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "new doc",
|
||||
"content": "\u003cdiv\u003econtent\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/doc_content_changed.json
Normal file
67
zerver/webhooks/basecamp/fixtures/doc_content_changed.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664750610,
|
||||
"kind": "document_content_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T07:41:19.273+01:00",
|
||||
"recording": {
|
||||
"id": 432522214,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:39:52.725+01:00",
|
||||
"updated_at": "2017-03-16T07:41:19.266+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/432522214.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/432522214",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New doc edit",
|
||||
"content": "\u003cdiv\u003eabc new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/doc_created.json
Normal file
69
zerver/webhooks/basecamp/fixtures/doc_created.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 667388601,
|
||||
"kind": "document_created",
|
||||
"details": {
|
||||
"notified_recipient_ids": []
|
||||
},
|
||||
"created_at": "2017-03-17T07:49:41.495+01:00",
|
||||
"recording": {
|
||||
"id": 434455988,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-17T07:49:41.480+01:00",
|
||||
"updated_at": "2017-03-17T07:49:41.486+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/434455988.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/434455988",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "new doc",
|
||||
"content": "\u003cdiv\u003econtent\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/doc_publicized.json
Normal file
67
zerver/webhooks/basecamp/fixtures/doc_publicized.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 667390593,
|
||||
"kind": "document_publicized",
|
||||
"details": {},
|
||||
"created_at": "2017-03-17T07:52:24.586+01:00",
|
||||
"recording": {
|
||||
"id": 434455988,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-17T07:49:41.480+01:00",
|
||||
"updated_at": "2017-03-17T07:52:24.560+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/434455988.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/434455988",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "new doc",
|
||||
"content": "\u003cdiv\u003econtent\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/doc_title_changed.json
Normal file
67
zerver/webhooks/basecamp/fixtures/doc_title_changed.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664750302,
|
||||
"kind": "document_title_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T07:40:40.056+01:00",
|
||||
"recording": {
|
||||
"id": 432522214,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:39:52.725+01:00",
|
||||
"updated_at": "2017-03-16T07:40:40.049+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/432522214.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/432522214",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New doc edit",
|
||||
"content": "\u003cdiv\u003eabc\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/doc_trashed.json
Normal file
69
zerver/webhooks/basecamp/fixtures/doc_trashed.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 667391344,
|
||||
"kind": "document_trashed",
|
||||
"details": {
|
||||
"status_was": "archived"
|
||||
},
|
||||
"created_at": "2017-03-17T07:53:08.753+01:00",
|
||||
"recording": {
|
||||
"id": 434455988,
|
||||
"status": "trashed",
|
||||
"created_at": "2017-03-17T07:49:41.480+01:00",
|
||||
"updated_at": "2017-03-17T07:53:08.750+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/434455988.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/434455988",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "new doc",
|
||||
"content": "\u003cdiv\u003econtent\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/doc_unarchive.json
Normal file
67
zerver/webhooks/basecamp/fixtures/doc_unarchive.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 667390272,
|
||||
"kind": "document_unarchived",
|
||||
"details": {},
|
||||
"created_at": "2017-03-17T07:52:01.726+01:00",
|
||||
"recording": {
|
||||
"id": 434455988,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-17T07:49:41.480+01:00",
|
||||
"updated_at": "2017-03-17T07:52:01.722+01:00",
|
||||
"type": "Document",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/documents/434455988.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/documents/434455988",
|
||||
"parent": {
|
||||
"id": 419211339,
|
||||
"title": "Docs \u0026 Files",
|
||||
"type": "Vault",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/vaults/419211339.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/vaults/419211339"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "new doc",
|
||||
"content": "\u003cdiv\u003econtent\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/message_archived.json
Normal file
69
zerver/webhooks/basecamp/fixtures/message_archived.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 662187149,
|
||||
"kind": "message_archived",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-15T06:35:09.047+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "archived",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:35:09.042+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title new",
|
||||
"content": "\u003cdiv\u003emessage content new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 662185533,
|
||||
"kind": "message_content_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-15T06:33:46.917+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:33:46.905+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title new",
|
||||
"content": "\u003cdiv\u003emessage content new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/message_created.json
Normal file
69
zerver/webhooks/basecamp/fixtures/message_created.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 662184942,
|
||||
"kind": "message_created",
|
||||
"details": {
|
||||
"notified_recipient_ids": []
|
||||
},
|
||||
"created_at": "2017-03-15T06:32:23.372+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:32:23.363+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title",
|
||||
"content": "\u003cdiv\u003emessage content\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/message_title_changed.json
Normal file
67
zerver/webhooks/basecamp/fixtures/message_title_changed.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 662185532,
|
||||
"kind": "message_subject_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-15T06:33:46.912+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:33:46.905+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title new",
|
||||
"content": "\u003cdiv\u003emessage content new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/message_trashed.json
Normal file
69
zerver/webhooks/basecamp/fixtures/message_trashed.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 662192755,
|
||||
"kind": "message_trashed",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-15T06:43:24.578+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "trashed",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:43:24.574+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title new",
|
||||
"content": "\u003cdiv\u003emessage content new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/message_unarchived.json
Normal file
67
zerver/webhooks/basecamp/fixtures/message_unarchived.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 662187655,
|
||||
"kind": "message_unarchived",
|
||||
"details": {},
|
||||
"created_at": "2017-03-15T06:35:36.450+01:00",
|
||||
"recording": {
|
||||
"id": 430680605,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-15T06:32:23.357+01:00",
|
||||
"updated_at": "2017-03-15T06:35:36.445+01:00",
|
||||
"type": "Message",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/messages/430680605.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/messages/430680605",
|
||||
"parent": {
|
||||
"id": 419211298,
|
||||
"title": "Message Board",
|
||||
"type": "Message::Board",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/message_boards/419211298.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/message_boards/419211298"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Message Title new",
|
||||
"content": "\u003cdiv\u003emessage content new\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/question_archived.json
Normal file
69
zerver/webhooks/basecamp/fixtures/question_archived.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 664770869,
|
||||
"kind": "question_archived",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-16T08:10:06.297+01:00",
|
||||
"recording": {
|
||||
"id": 432527747,
|
||||
"status": "archived",
|
||||
"created_at": "2017-03-16T07:50:33.085+01:00",
|
||||
"updated_at": "2017-03-16T08:10:06.293+01:00",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747",
|
||||
"parent": {
|
||||
"id": 419211313,
|
||||
"title": "Automatic Check-ins",
|
||||
"type": "Questionnaire",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questionnaires/419211313.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questionnaires/419211313"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Question",
|
||||
"content": null
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/question_created.json
Normal file
67
zerver/webhooks/basecamp/fixtures/question_created.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664755986,
|
||||
"kind": "question_created",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T07:50:33.111+01:00",
|
||||
"recording": {
|
||||
"id": 432527747,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:50:33.085+01:00",
|
||||
"updated_at": "2017-03-16T07:50:33.104+01:00",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747",
|
||||
"parent": {
|
||||
"id": 419211313,
|
||||
"title": "Automatic Check-ins",
|
||||
"type": "Questionnaire",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questionnaires/419211313.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questionnaires/419211313"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Question",
|
||||
"content": null
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/question_trashed.json
Normal file
69
zerver/webhooks/basecamp/fixtures/question_trashed.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 664774403,
|
||||
"kind": "question_trashed",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-16T08:15:36.234+01:00",
|
||||
"recording": {
|
||||
"id": 432527747,
|
||||
"status": "trashed",
|
||||
"created_at": "2017-03-16T07:50:33.085+01:00",
|
||||
"updated_at": "2017-03-16T08:15:36.230+01:00",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747",
|
||||
"parent": {
|
||||
"id": 419211313,
|
||||
"title": "Automatic Check-ins",
|
||||
"type": "Questionnaire",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questionnaires/419211313.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questionnaires/419211313"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Question",
|
||||
"content": null
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
69
zerver/webhooks/basecamp/fixtures/question_unarchived.json
Normal file
69
zerver/webhooks/basecamp/fixtures/question_unarchived.json
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 664770869,
|
||||
"kind": "question_unarchived",
|
||||
"details": {
|
||||
"status_was": "archived"
|
||||
},
|
||||
"created_at": "2017-03-16T08:10:06.297+01:00",
|
||||
"recording": {
|
||||
"id": 432527747,
|
||||
"status": "archived",
|
||||
"created_at": "2017-03-16T07:50:33.085+01:00",
|
||||
"updated_at": "2017-03-16T08:10:06.293+01:00",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747",
|
||||
"parent": {
|
||||
"id": 419211313,
|
||||
"title": "Automatic Check-ins",
|
||||
"type": "Questionnaire",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questionnaires/419211313.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questionnaires/419211313"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Question",
|
||||
"content": null
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664771987,
|
||||
"kind": "question_answer_archived",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T08:12:12.335+01:00",
|
||||
"recording": {
|
||||
"id": 432529636,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:54:28.393+01:00",
|
||||
"updated_at": "2017-03-16T08:12:12.331+01:00",
|
||||
"type": "Question::Answer",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/question_answers/432529636.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636",
|
||||
"parent": {
|
||||
"id": 432527747,
|
||||
"title": "Question?",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Answer to “Question”",
|
||||
"content": "\u003cdiv\u003eAnswer edited\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664758729,
|
||||
"kind": "question_answer_content_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T07:55:02.936+01:00",
|
||||
"recording": {
|
||||
"id": 432529636,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:54:28.393+01:00",
|
||||
"updated_at": "2017-03-16T07:55:02.926+01:00",
|
||||
"type": "Question::Answer",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/question_answers/432529636.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636",
|
||||
"parent": {
|
||||
"id": 432527747,
|
||||
"title": "Question",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Answer to “Question”",
|
||||
"content": "\u003cdiv\u003eAnswer edited\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 664758443,
|
||||
"kind": "question_answer_created",
|
||||
"details": {
|
||||
"notified_recipient_ids": []
|
||||
},
|
||||
"created_at": "2017-03-16T07:54:28.416+01:00",
|
||||
"recording": {
|
||||
"id": 432529636,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:54:28.393+01:00",
|
||||
"updated_at": "2017-03-16T07:54:28.399+01:00",
|
||||
"type": "Question::Answer",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/question_answers/432529636.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636",
|
||||
"parent": {
|
||||
"id": 432527747,
|
||||
"title": "Question",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Answer to “Question”",
|
||||
"content": "\u003cdiv\u003eAnswer\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"id": 664774404,
|
||||
"kind": "question_answer_trashed",
|
||||
"details": {
|
||||
"status_was": "active"
|
||||
},
|
||||
"created_at": "2017-03-16T08:15:36.288+01:00",
|
||||
"recording": {
|
||||
"id": 432529636,
|
||||
"status": "trashed",
|
||||
"created_at": "2017-03-16T07:54:28.393+01:00",
|
||||
"updated_at": "2017-03-16T08:15:36.282+01:00",
|
||||
"type": "Question::Answer",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/question_answers/432529636.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/question_answers/432529636",
|
||||
"parent": {
|
||||
"id": 432527747,
|
||||
"title": "Question",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Answer to “Question”",
|
||||
"content": "\u003cdiv\u003eAnswer edited\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 664771987,
|
||||
"kind": "question_answer_unarchived",
|
||||
"details": {},
|
||||
"created_at": "2017-03-16T08:12:12.335+01:00",
|
||||
"recording": {
|
||||
"id": 432529636,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-16T07:54:28.393+01:00",
|
||||
"updated_at": "2017-03-16T08:12:12.331+01:00",
|
||||
"type": "Question::Answer",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/question_answers/432529636.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636",
|
||||
"parent": {
|
||||
"id": 432527747,
|
||||
"title": "Question",
|
||||
"type": "Question",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/questions/432527747.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/questions/432527747"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "Answer to “Question”",
|
||||
"content": "\u003cdiv\u003eAnswer edited\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"id": 657033623,
|
||||
"kind": "todo_assignment_changed",
|
||||
"details": {
|
||||
"added_person_ids": [
|
||||
10695738
|
||||
],
|
||||
"removed_person_ids": []
|
||||
},
|
||||
"created_at": "2017-03-13T08:25:28.451+01:00",
|
||||
"recording": {
|
||||
"id": 427055624,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:25:28.380+01:00",
|
||||
"updated_at": "2017-03-13T08:25:28.458+01:00",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624",
|
||||
"parent": {
|
||||
"id": 427050190,
|
||||
"title": "NEW Name TO DO LIST ",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New task",
|
||||
"content": "New task"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/todo_completed.json
Normal file
67
zerver/webhooks/basecamp/fixtures/todo_completed.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657034069,
|
||||
"kind": "todo_completed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:26:25.057+01:00",
|
||||
"recording": {
|
||||
"id": 427055624,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:25:28.380+01:00",
|
||||
"updated_at": "2017-03-13T08:26:25.046+01:00",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624",
|
||||
"parent": {
|
||||
"id": 427050190,
|
||||
"title": "NEW Name TO DO LIST ",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New task",
|
||||
"content": "New task"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/todo_created.json
Normal file
67
zerver/webhooks/basecamp/fixtures/todo_created.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657033622,
|
||||
"kind": "todo_created",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:25:28.399+01:00",
|
||||
"recording": {
|
||||
"id": 427055624,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:25:28.380+01:00",
|
||||
"updated_at": "2017-03-13T08:25:28.386+01:00",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624",
|
||||
"parent": {
|
||||
"id": 427050190,
|
||||
"title": "NEW Name TO DO LIST ",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New task",
|
||||
"content": "New task"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/todo_due_on_changed.json
Normal file
67
zerver/webhooks/basecamp/fixtures/todo_due_on_changed.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657034435,
|
||||
"kind": "todo_due_on_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:27:14.412+01:00",
|
||||
"recording": {
|
||||
"id": 427055624,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:25:28.380+01:00",
|
||||
"updated_at": "2017-03-13T08:27:14.406+01:00",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624",
|
||||
"parent": {
|
||||
"id": 427050190,
|
||||
"title": "NEW Name TO DO LIST ",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New task",
|
||||
"content": "New task"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/todo_list_created.json
Normal file
67
zerver/webhooks/basecamp/fixtures/todo_list_created.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657024888,
|
||||
"kind": "todolist_created",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:15:41.930+01:00",
|
||||
"recording": {
|
||||
"id": 427050190,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:15:41.915+01:00",
|
||||
"updated_at": "2017-03-13T08:15:41.921+01:00",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190",
|
||||
"parent": {
|
||||
"id": 419211304,
|
||||
"title": "To-dos",
|
||||
"type": "Todoset",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todosets/419211304.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todosets/419211304"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "NEW TO DO LIST",
|
||||
"content": ""
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657032933,
|
||||
"kind": "todolist_description_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:24:23.570+01:00",
|
||||
"recording": {
|
||||
"id": 427050190,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:15:41.915+01:00",
|
||||
"updated_at": "2017-03-13T08:24:23.563+01:00",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190",
|
||||
"parent": {
|
||||
"id": 419211304,
|
||||
"title": "To-dos",
|
||||
"type": "Todoset",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todosets/419211304.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todosets/419211304"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "NEW TO DO LIST",
|
||||
"content": "\u003cdiv\u003eNew description\u003c/div\u003e"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657032392,
|
||||
"kind": "todolist_name_changed",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:23:21.882+01:00",
|
||||
"recording": {
|
||||
"id": 427050190,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:15:41.915+01:00",
|
||||
"updated_at": "2017-03-13T08:23:21.875+01:00",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190",
|
||||
"parent": {
|
||||
"id": 419211304,
|
||||
"title": "To-dos",
|
||||
"type": "Todoset",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todosets/419211304.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todosets/419211304"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "NEW Name TO DO LIST",
|
||||
"content": ""
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
67
zerver/webhooks/basecamp/fixtures/todo_uncompleted.json
Normal file
67
zerver/webhooks/basecamp/fixtures/todo_uncompleted.json
Normal file
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"id": 657034085,
|
||||
"kind": "todo_uncompleted",
|
||||
"details": {},
|
||||
"created_at": "2017-03-13T08:26:26.812+01:00",
|
||||
"recording": {
|
||||
"id": 427055624,
|
||||
"status": "active",
|
||||
"created_at": "2017-03-13T08:25:28.380+01:00",
|
||||
"updated_at": "2017-03-13T08:26:26.806+01:00",
|
||||
"type": "Todo",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todos/427055624.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todos/427055624",
|
||||
"parent": {
|
||||
"id": 427050190,
|
||||
"title": "NEW Name TO DO LIST ",
|
||||
"type": "Todolist",
|
||||
"url": "https://3.basecampapi.com/3688623/buckets/2957043/todolists/427050190.json",
|
||||
"app_url": "https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190"
|
||||
},
|
||||
"bucket": {
|
||||
"id": 2957043,
|
||||
"name": "Zulip HQ",
|
||||
"type": "Project"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
},
|
||||
"title": "New task",
|
||||
"content": "New task"
|
||||
},
|
||||
"creator": {
|
||||
"id": 10695738,
|
||||
"attachable_sgid": "BAh7CEkiCGdpZAY6BkVUSSIpZ2lkOi8vYmMzL1BlcnNvbi8xMDY5NTczOD9leHBpcmVzX2luBjsAVEkiDHB1cnBvc2UGOwBUSSIPYXR0YWNoYWJsZQY7AFRJIg9leHBpcmVzX2F0BjsAVDA=--eb8f230d022d5e8ab202e2f62a86f767219c1c83",
|
||||
"name": "Tomasz",
|
||||
"email_address": "tomaszkolek0@gmail.com",
|
||||
"personable_type": "User",
|
||||
"title": null,
|
||||
"bio": null,
|
||||
"created_at": "2017-03-07T07:21:08.088+01:00",
|
||||
"updated_at": "2017-03-07T07:21:27.633+01:00",
|
||||
"admin": true,
|
||||
"owner": true,
|
||||
"time_zone": "Europe/Amsterdam",
|
||||
"avatar_url": "https://3.basecamp-static.com/3688623/people/BAhpAzo0ow==--9f2bd7e6c043c8b45d6afb82efc1a897fbbee92c/avatar-64-x4",
|
||||
"company": {
|
||||
"id": 796227,
|
||||
"name": "Zulip"
|
||||
}
|
||||
}
|
||||
}
|
||||
48
zerver/webhooks/basecamp/support_event.py
Normal file
48
zerver/webhooks/basecamp/support_event.py
Normal file
@@ -0,0 +1,48 @@
|
||||
DOC_SUPPORT_EVENTS = [
|
||||
"document_active",
|
||||
"document_created",
|
||||
"document_archived",
|
||||
"document_unarchived",
|
||||
"document_publicized",
|
||||
"document_title_changed",
|
||||
"document_content_changed",
|
||||
"document_trashed",
|
||||
"document_publicized",
|
||||
]
|
||||
|
||||
QUESTION_SUPPORT_EVENTS = [
|
||||
"question_archived",
|
||||
"question_created",
|
||||
"question_trashed",
|
||||
"question_unarchived",
|
||||
"question_answer_archived",
|
||||
"question_answer_content_changed",
|
||||
"question_answer_created",
|
||||
"question_answer_trashed",
|
||||
"question_answer_unarchived",
|
||||
]
|
||||
|
||||
MESSAGE_SUPPORT_EVENTS = [
|
||||
"message_archived",
|
||||
"message_content_changed",
|
||||
"message_created",
|
||||
"message_subject_changed",
|
||||
"message_trashed",
|
||||
"message_unarchived",
|
||||
"comment_created",
|
||||
]
|
||||
|
||||
TODOS_SUPPORT_EVENTS = [
|
||||
"todolist_created",
|
||||
"todolist_description_changed",
|
||||
"todolist_name_changed",
|
||||
"todo_assignment_changed",
|
||||
"todo_completed",
|
||||
"todo_uncompleted",
|
||||
"todo_created",
|
||||
"todo_due_on_changed",
|
||||
]
|
||||
|
||||
SUPPORT_EVENTS = (
|
||||
DOC_SUPPORT_EVENTS + QUESTION_SUPPORT_EVENTS + MESSAGE_SUPPORT_EVENTS + TODOS_SUPPORT_EVENTS
|
||||
)
|
||||
140
zerver/webhooks/basecamp/tests.py
Normal file
140
zerver/webhooks/basecamp/tests.py
Normal file
@@ -0,0 +1,140 @@
|
||||
from zerver.lib.test_classes import WebhookTestCase
|
||||
|
||||
TOPIC_NAME = "Zulip HQ"
|
||||
|
||||
|
||||
class BasecampHookTests(WebhookTestCase):
|
||||
def test_basecamp_makes_doc_active(self) -> None:
|
||||
expected_message = "Tomasz activated the document [Sponsorship Package Outline](https://3.basecamp.com/3688623/buckets/2957043/documents/432522214)."
|
||||
self._send_and_test_message(
|
||||
"doc_active", expected_message, "Event Planning - Annual Conference"
|
||||
)
|
||||
|
||||
def test_basecamp_makes_doc_archived(self) -> None:
|
||||
expected_message = "Tomasz archived the document [new doc](https://3.basecamp.com/3688623/buckets/2957043/documents/434455988)."
|
||||
self._send_and_test_message("doc_archived", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_changed_content(self) -> None:
|
||||
expected_message = "Tomasz changed content of the document [New doc edit](https://3.basecamp.com/3688623/buckets/2957043/documents/432522214)."
|
||||
self._send_and_test_message("doc_content_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_changed_title(self) -> None:
|
||||
expected_message = "Tomasz changed title of the document [New doc edit](https://3.basecamp.com/3688623/buckets/2957043/documents/432522214)."
|
||||
self._send_and_test_message("doc_title_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_publicized(self) -> None:
|
||||
expected_message = "Tomasz publicized the document [new doc](https://3.basecamp.com/3688623/buckets/2957043/documents/434455988)."
|
||||
self._send_and_test_message("doc_publicized", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_created(self) -> None:
|
||||
expected_message = "Tomasz created the document [new doc](https://3.basecamp.com/3688623/buckets/2957043/documents/434455988)."
|
||||
self._send_and_test_message("doc_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_trashed(self) -> None:
|
||||
expected_message = "Tomasz trashed the document [new doc](https://3.basecamp.com/3688623/buckets/2957043/documents/434455988)."
|
||||
self._send_and_test_message("doc_trashed", expected_message)
|
||||
|
||||
def test_basecamp_makes_doc_unarchived(self) -> None:
|
||||
expected_message = "Tomasz unarchived the document [new doc](https://3.basecamp.com/3688623/buckets/2957043/documents/434455988)."
|
||||
self._send_and_test_message("doc_unarchive", expected_message)
|
||||
|
||||
def test_basecamp_makes_questions_answer_archived(self) -> None:
|
||||
expected_message = "Tomasz archived the [answer](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636) of the question [Question?](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)"
|
||||
self._send_and_test_message("questions_answer_archived", expected_message)
|
||||
|
||||
def test_basecamp_makes_questions_answer_content_changed(self) -> None:
|
||||
expected_message = "Tomasz changed content of the [answer](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636) of the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("questions_answer_content_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_questions_answer_created(self) -> None:
|
||||
expected_message = "Tomasz created the [answer](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636) of the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("questions_answer_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_questions_answer_trashed(self) -> None:
|
||||
expected_message = "Tomasz trashed the [answer](https://3.basecamp.com/3688623/buckets/2957043/question_answers/432529636) of the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("questions_answer_trashed", expected_message)
|
||||
|
||||
def test_basecamp_makes_questions_answer_unarchived(self) -> None:
|
||||
expected_message = "Tomasz unarchived the [answer](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747/answers/2017-03-16#__recording_432529636) of the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("questions_answer_unarchived", expected_message)
|
||||
|
||||
def test_basecamp_makes_question_archived(self) -> None:
|
||||
expected_message = "Tomasz archived the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("question_archived", expected_message)
|
||||
|
||||
def test_basecamp_makes_question_created(self) -> None:
|
||||
expected_message = "Tomasz created the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("question_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_question_trashed(self) -> None:
|
||||
expected_message = "Tomasz trashed the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("question_trashed", expected_message)
|
||||
|
||||
def test_basecamp_makes_question_unarchived(self) -> None:
|
||||
expected_message = "Tomasz unarchived the question [Question](https://3.basecamp.com/3688623/buckets/2957043/questions/432527747)."
|
||||
self._send_and_test_message("question_unarchived", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_archived(self) -> None:
|
||||
expected_message = "Tomasz archived the message [Message Title new](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_archived", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_content_change(self) -> None:
|
||||
expected_message = "Tomasz changed content of the message [Message Title new](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_content_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_created(self) -> None:
|
||||
expected_message = "Tomasz created the message [Message Title](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_title_change(self) -> None:
|
||||
expected_message = "Tomasz changed subject of the message [Message Title new](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_title_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_trashed(self) -> None:
|
||||
expected_message = "Tomasz trashed the message [Message Title new](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_trashed", expected_message)
|
||||
|
||||
def test_basecamp_makes_message_unarchived(self) -> None:
|
||||
expected_message = "Tomasz unarchived the message [Message Title new](https://3.basecamp.com/3688623/buckets/2957043/messages/430680605)."
|
||||
self._send_and_test_message("message_unarchived", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_list_created(self) -> None:
|
||||
expected_message = "Tomasz created the todo list [NEW TO DO LIST](https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190)."
|
||||
self._send_and_test_message("todo_list_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_list_description_changed(self) -> None:
|
||||
expected_message = "Tomasz changed description of the todo list [NEW TO DO LIST](https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190)."
|
||||
self._send_and_test_message("todo_list_description_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_list_modified(self) -> None:
|
||||
expected_message = "Tomasz changed name of the todo list [NEW Name TO DO LIST](https://3.basecamp.com/3688623/buckets/2957043/todolists/427050190)."
|
||||
self._send_and_test_message("todo_list_name_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_assignment_changed(self) -> None:
|
||||
expected_message = "Tomasz changed assignment of the todo task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("todo_assignment_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_completed(self) -> None:
|
||||
expected_message = "Tomasz completed the todo task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("todo_completed", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_uncompleted(self) -> None:
|
||||
expected_message = "Tomasz uncompleted the todo task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("todo_uncompleted", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_created(self) -> None:
|
||||
expected_message = "Tomasz created the todo task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("todo_created", expected_message)
|
||||
|
||||
def test_basecamp_makes_todo_due_on_changed(self) -> None:
|
||||
expected_message = "Tomasz changed due_on of the todo task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("todo_due_on_changed", expected_message)
|
||||
|
||||
def test_basecamp_makes_comment_created(self) -> None:
|
||||
expected_message = "Tomasz created the [comment](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624#__recording_427058780) of the task [New task](https://3.basecamp.com/3688623/buckets/2957043/todos/427055624)."
|
||||
self._send_and_test_message("comment_created", expected_message)
|
||||
|
||||
def _send_and_test_message(
|
||||
self, fixture_name: str, expected_message: str, topic_name: str = TOPIC_NAME
|
||||
) -> None:
|
||||
self.check_webhook(fixture_name, topic_name, expected_message)
|
||||
178
zerver/webhooks/basecamp/view.py
Normal file
178
zerver/webhooks/basecamp/view.py
Normal file
@@ -0,0 +1,178 @@
|
||||
import re
|
||||
import string
|
||||
|
||||
from django.http import HttpRequest, HttpResponse
|
||||
|
||||
from zerver.decorator import webhook_view
|
||||
from zerver.lib.exceptions import UnsupportedWebhookEventTypeError
|
||||
from zerver.lib.response import json_success
|
||||
from zerver.lib.typed_endpoint import JsonBodyPayload, typed_endpoint
|
||||
from zerver.lib.validator import WildValue, check_string
|
||||
from zerver.lib.webhooks.common import check_send_webhook_message
|
||||
from zerver.models import UserProfile
|
||||
|
||||
from .support_event import SUPPORT_EVENTS
|
||||
|
||||
DOCUMENT_TEMPLATE = "{user_name} {verb} the document [{title}]({url})"
|
||||
QUESTION_TEMPLATE = "{user_name} {verb} the question [{title}]({url})"
|
||||
QUESTIONS_ANSWER_TEMPLATE = (
|
||||
"{user_name} {verb} the [answer]({answer_url})"
|
||||
" of the question [{question_title}]({question_url})"
|
||||
)
|
||||
COMMENT_TEMPLATE = (
|
||||
"{user_name} {verb} the [comment]({answer_url}) of the task [{task_title}]({task_url})"
|
||||
)
|
||||
MESSAGE_TEMPLATE = "{user_name} {verb} the message [{title}]({url})"
|
||||
TODO_LIST_TEMPLATE = "{user_name} {verb} the todo list [{title}]({url})"
|
||||
TODO_TEMPLATE = "{user_name} {verb} the todo task [{title}]({url})"
|
||||
|
||||
ALL_EVENT_TYPES = [
|
||||
"document",
|
||||
"question_answer",
|
||||
"question",
|
||||
"message",
|
||||
"todolist",
|
||||
"todo",
|
||||
"comment",
|
||||
]
|
||||
|
||||
|
||||
@webhook_view("Basecamp", all_event_types=ALL_EVENT_TYPES)
|
||||
@typed_endpoint
|
||||
def api_basecamp_webhook(
|
||||
request: HttpRequest,
|
||||
user_profile: UserProfile,
|
||||
*,
|
||||
payload: JsonBodyPayload[WildValue],
|
||||
) -> HttpResponse:
|
||||
event = get_event_type(payload)
|
||||
|
||||
if event not in SUPPORT_EVENTS:
|
||||
raise UnsupportedWebhookEventTypeError(event)
|
||||
|
||||
topic_name = get_project_name(payload)
|
||||
if event.startswith("document_"):
|
||||
body = get_document_body(event, payload)
|
||||
event = "document"
|
||||
elif event.startswith("question_answer_"):
|
||||
body = get_questions_answer_body(event, payload)
|
||||
event = "question_answer"
|
||||
elif event.startswith("question_"):
|
||||
body = get_questions_body(event, payload)
|
||||
event = "question"
|
||||
elif event.startswith("message_"):
|
||||
body = get_message_body(event, payload)
|
||||
event = "message"
|
||||
elif event.startswith("todolist_"):
|
||||
body = get_todo_list_body(event, payload)
|
||||
event = "todolist"
|
||||
elif event.startswith("todo_"):
|
||||
body = get_todo_body(event, payload)
|
||||
event = "todo"
|
||||
elif event.startswith("comment_"):
|
||||
body = get_comment_body(event, payload)
|
||||
event = "comment"
|
||||
else:
|
||||
raise UnsupportedWebhookEventTypeError(event)
|
||||
|
||||
check_send_webhook_message(request, user_profile, topic_name, body, event)
|
||||
return json_success(request)
|
||||
|
||||
|
||||
def get_project_name(payload: WildValue) -> str:
|
||||
return payload["recording"]["bucket"]["name"].tame(check_string)
|
||||
|
||||
|
||||
def get_event_type(payload: WildValue) -> str:
|
||||
return payload["kind"].tame(check_string)
|
||||
|
||||
|
||||
def get_event_creator(payload: WildValue) -> str:
|
||||
return payload["creator"]["name"].tame(check_string)
|
||||
|
||||
|
||||
def get_topic_url(payload: WildValue) -> str:
|
||||
return payload["recording"]["app_url"].tame(check_string)
|
||||
|
||||
|
||||
def get_topic_title(payload: WildValue) -> str:
|
||||
return payload["recording"]["title"].tame(check_string)
|
||||
|
||||
|
||||
def get_verb(event: str, prefix: str) -> str:
|
||||
verb = event.replace(prefix, "")
|
||||
if verb == "active":
|
||||
return "activated"
|
||||
|
||||
matched = re.match(r"(?P<subject>[A-z]*)_changed", verb)
|
||||
if matched:
|
||||
return "changed {} of".format(matched.group("subject"))
|
||||
return verb
|
||||
|
||||
|
||||
def add_punctuation_if_necessary(body: str, title: str) -> str:
|
||||
if title[-1] not in string.punctuation:
|
||||
body = f"{body}."
|
||||
return body
|
||||
|
||||
|
||||
def get_document_body(event: str, payload: WildValue) -> str:
|
||||
return get_generic_body(event, payload, "document_", DOCUMENT_TEMPLATE)
|
||||
|
||||
|
||||
def get_questions_answer_body(event: str, payload: WildValue) -> str:
|
||||
verb = get_verb(event, "question_answer_")
|
||||
question = payload["recording"]["parent"]
|
||||
title = question["title"].tame(check_string)
|
||||
template = add_punctuation_if_necessary(QUESTIONS_ANSWER_TEMPLATE, title)
|
||||
|
||||
return template.format(
|
||||
user_name=get_event_creator(payload),
|
||||
verb=verb,
|
||||
answer_url=get_topic_url(payload),
|
||||
question_title=title,
|
||||
question_url=question["app_url"].tame(check_string),
|
||||
)
|
||||
|
||||
|
||||
def get_comment_body(event: str, payload: WildValue) -> str:
|
||||
verb = get_verb(event, "comment_")
|
||||
task = payload["recording"]["parent"]
|
||||
template = add_punctuation_if_necessary(COMMENT_TEMPLATE, task["title"].tame(check_string))
|
||||
|
||||
return template.format(
|
||||
user_name=get_event_creator(payload),
|
||||
verb=verb,
|
||||
answer_url=get_topic_url(payload),
|
||||
task_title=task["title"].tame(check_string),
|
||||
task_url=task["app_url"].tame(check_string),
|
||||
)
|
||||
|
||||
|
||||
def get_questions_body(event: str, payload: WildValue) -> str:
|
||||
return get_generic_body(event, payload, "question_", QUESTION_TEMPLATE)
|
||||
|
||||
|
||||
def get_message_body(event: str, payload: WildValue) -> str:
|
||||
return get_generic_body(event, payload, "message_", MESSAGE_TEMPLATE)
|
||||
|
||||
|
||||
def get_todo_list_body(event: str, payload: WildValue) -> str:
|
||||
return get_generic_body(event, payload, "todolist_", TODO_LIST_TEMPLATE)
|
||||
|
||||
|
||||
def get_todo_body(event: str, payload: WildValue) -> str:
|
||||
return get_generic_body(event, payload, "todo_", TODO_TEMPLATE)
|
||||
|
||||
|
||||
def get_generic_body(event: str, payload: WildValue, prefix: str, template: str) -> str:
|
||||
verb = get_verb(event, prefix)
|
||||
title = get_topic_title(payload)
|
||||
template = add_punctuation_if_necessary(template, title)
|
||||
|
||||
return template.format(
|
||||
user_name=get_event_creator(payload),
|
||||
verb=verb,
|
||||
title=get_topic_title(payload),
|
||||
url=get_topic_url(payload),
|
||||
)
|
||||
Reference in New Issue
Block a user