Tim Abbott
cec7686f3d
push notifications: Clean up unregistered/bad APNS tokens.
...
We've had this sort of logic for GCM for a long time; it's worth
adding for APNS as well.
Writing this is a bit of a reminder that I'm not a fan of how our unit
tests for push notifications work.
2018-05-21 11:30:56 -07:00
Aditya Bansal
5416d137d3
zerver/tests: Change use of typing.Text to str.
2018-05-12 15:22:39 -07:00
Tim Abbott
7cbff8b521
push registration: Use standard error message for auth problems.
...
This avoids adding an unnecessary new translated string.
2018-05-04 09:04:39 -07:00
Tim Abbott
43098a6f7c
zilencer: Add automated signup system for push notifications.
...
Based on an initial version by Rishi Gupta.
Fixes #7325 .
2018-05-03 21:27:49 -07:00
Tim Abbott
6f87091120
test_push_notifications: Cover the last lines of validate_api_key.
...
This push notification bouncer error case wasn't previously tested.
2018-04-25 22:36:48 -07:00
Tim Abbott
2217285ac0
test_push_notifications: Add a better test for auth code path.
...
This is mostly to prevent an issue similar to the one fixed in the
last commit.
2018-04-25 21:51:24 -07:00
Tim Abbott
2fa58fe9ad
decorator: Fix exception format for invalid API key.
...
This exception class was clearly missing the part where `role` gets
stored, which was intended to be inherited from
InvalidZulipServerError.
This fixes an unnecessary 500 error in the push notifications bouncer.
2018-04-25 21:44:31 -07:00
Preston Hansen
e168f9938c
tests: Refactor use of test and webhook data fixtures.
2018-04-19 21:50:29 -07:00
Preston Hansen
76d6c71595
tests: Move zerver/fixtures to zerver/tests/fixtures for clarity.
...
Fixes #9153 .
2018-04-19 21:50:17 -07:00
Aditya Bansal
9eeb1c59f6
bugdown: Remove email from rendered content of messages with mentions.
...
This field has been unused by clients for some time, and isn't great
for our public archive feature plans (where we'll not want to be
including email addresses in messages).
2018-03-04 20:04:27 -08:00
Greg Price
693a9a5e70
push notifs: For group PMs, identify the users in the group.
2018-02-16 16:06:03 -08:00
Greg Price
ecbc72b857
push notifs: Add a diagnostic in API of whether push notifs enabled.
...
When the answer is False, this will allow the mobile app to show a
warning that push notifications will not work and the server admin
should set them up.
Based partly on Kunal's PR #7810 . Provides the necessary backend API
for zulip/zulip-mobile#1507 .
2018-02-12 14:34:59 -08:00
Greg Price
8be2dfa81c
APNs: Fix a case I broke while working out tests.
...
I got distracted, came back later to a successful test run in my
terminal, and thought I remembered finishing the change and just
kicking off a final test run to check.
In fact, there was an `assert False` right in the normal case for
production, and I just hadn't finished a test for that path. (m.-)
Definitely the most grateful I've been for our coverage checks,
which highlighted this for me.
Remove the `assert False`, and also finish writing the test it was
there to help me write. Those lines are covered now.
2018-02-09 18:28:16 -08:00
Greg Price
7f6a1714aa
APNs: Don't try to send anything when not configured.
2018-02-09 17:16:21 -08:00
Greg Price
014900c2e5
push notifs: Include same stream and sender info on GCM as on APNs.
...
This takes the information added to APNs payloads by #7080 , and adds
to our GCM payloads the parts that it didn't already have.
2017-12-18 15:32:56 -08:00
Alena Volkova
39915d9835
tests: Replace all get_auth usages with auth methods and delete it.
2017-12-18 09:24:09 -05:00
Alena Volkova
26eb23afc7
tests: Replace api_auth usages with auth methods in zerver/tests.
2017-12-18 09:24:09 -05:00
kunall17
98943a8333
Include data of stream/private sender details in apns push notifications
2017-12-11 20:51:09 -08:00
Tim Abbott
6bc1a682de
notifications: Separate push and email notifications checks.
...
This is an early step in a larger refactor to properly decouple the
email and push notification code paths.
2017-11-28 17:51:18 -08:00
Vishnu Ks
b9bc1c2b33
Eliminate get_user_profile_by_email from test_classes.
2017-11-26 15:47:56 -08:00
rht
3ec90f8b33
zerver/tests: Use python 3 syntax for typing (final).
2017-11-21 22:01:19 -08:00
rht
e3daa09b05
zerver/tests: Use python 3 syntax for typing.
2017-11-21 22:01:19 -08:00
Tim Abbott
982bd9c38d
Fix push notifications for soft-deactivated users.
...
Previously, these push notification events were being generated, but
then ignored in handle_push_notification because there was no
user_message object.
2017-11-09 15:52:29 -08:00
Tim Abbott
64b4d83038
push_notifications: Improve debugging of lookup problems.
...
We're having this error being thrown often, and don't know why.
2017-11-09 15:20:24 -08:00
rht
c7fa1d4146
zerver/tests: Remove inheritance from object.
2017-11-06 08:53:48 -08:00
rht
c4fcff7178
refactor: Replace super(.*self) with Python 3-specific super().
...
We change all the instances except for the `test_helpers.py`
TimeTrackingCursor monkey-patching, which actually needs to specify
the base class.
2017-10-30 14:30:25 -07:00
Tim Abbott
9b791acf50
test_push_notifications: Fix tests failing due to rebase.
...
message.triggers got recently renamed.
2017-10-19 18:34:28 -07:00
Maarten Rijke
841f02934d
push_notifications: Add setting to redact content.
...
This commit adds a setting that toggles redacting content of push
notifications and replacing it with "***REDACTED***".
2017-10-19 18:16:06 -07:00
Tim Abbott
e98ca0714b
notifications: Simplify how triggers are passed around.
...
This removes the utterly unnecessary `triggers` dict (which always was
a dict with exactly one value True) in favor of a single field,
'trigger'.
Inspired by Kunal Gupta's work in #6659 .
2017-10-18 21:42:05 -07:00
Tim Abbott
b5c107ed27
push_notifications: Remove unnecessary check for no devices.
...
This should have been checked by the caller anyway.
2017-10-13 17:30:20 -07:00
Tim Abbott
27a450b58d
push_notifications: Improve error message for GCM sending issues.
...
This addresses one of the sources of confusion in #6993 .
2017-10-13 17:30:11 -07:00
Tim Abbott
676a6af8cb
push_notifications: Get back to 100% test coverage.
...
We didn't have tests for a few new code paths.
2017-10-11 20:17:27 -07:00
Tim Abbott
298c59f7fd
push_notifications: Fix error message for unregistered bouncer.
...
Previously, we were just returning a JSON error to the client, when it
was a server problem.
Fixes #6639 .
2017-10-11 19:09:24 -07:00
Harshit Bansal
7b88e3eea7
tests: Add a test suite for verifying the mobile push notifs content.
...
This test suite works by using the expected_output and new text_output
fields in the bugdown test cases to verify that each syntax is
correctly translated by this new function.
Some of these translations, like strikethrough, are kinda poor; but
this framework should make it easy to iterate on the formatting.
Fixes : #6720 .
2017-10-06 16:47:27 -07:00
Harshit Bansal
5a6584890d
push_notifications: Start using `get_mobile_push_content()` function.
2017-10-06 16:47:25 -07:00
kunall17
f091823fc8
push_notifications: Set APNS badge as 0 for now.
...
We don't yet have support for tracking the number of open APNS
notifications server-side, so setting this to 0 will at least avoid
confusing users.
2017-10-03 17:07:49 -07:00
Tim Abbott
7581e0e1c5
settings: Remove remaining references to REALMS_HAVE_SUBDOMAINS.
2017-10-02 16:43:54 -07:00
derAnfaenger
d1afab7199
Replace deprecated Logging.warn calls with Logging.warning.
2017-10-02 11:11:42 +02:00
Greg Price
7b8f725707
APNs: Accept 1.6-format payloads in bouncer.
...
This is just enough of a quick fix to work with a stock Zulip 1.6
server. We should really also make this robust to arbitrary input
from the remote Zulip server, even though it'll be a little tedious.
2017-09-28 10:01:16 -07:00
rht
26f5d9a32c
zerver/tests: Remove print_function.
2017-09-27 18:05:45 -07:00
rht
1e87a4b68c
zerver/tests: Remove absolute_import.
2017-09-27 10:00:39 -07:00
kunall17
1436d558a3
APNs: Add message body to notification payload.
...
(Edited by greg to leave the badge logic as is for now.)
2017-09-18 16:37:02 -07:00
Tim Abbott
5722237f59
push: Rename received_pm to private_message.
...
This is a clearer name for this now more broadly used interface.
2017-09-14 05:41:37 -07:00
Sarah
97571a203d
push: Add new formatting for stream message push and add tests.
...
This should make the push notifications for messages to streams with
the new stream push notifications setting enabled make sense.
2017-09-14 05:41:37 -07:00
Sarah
c3a8138f74
user_settings: Add push notifications for all stream messages.
...
Add setting to enable push notifications for all stream messages.
2017-09-14 05:41:37 -07:00
Greg Price
a4bcf1a64b
APNs: Handle HTTP connection errors, and retry.
...
Should help with #6321 as at least a band-aid.
2017-08-29 15:27:41 -07:00
Greg Price
780e1ac5b2
push notifs: Add a simple test for the new APNs provider.
2017-08-29 15:27:41 -07:00
Steve Howell
0959c978c3
Fix lint error from recent subdomains commit.
...
We did a code sweep recently for subdomains (see
60be89d0
).
2017-08-29 08:35:37 -07:00
Tim Abbott
60be89d00e
test_push_notifications: Declare subdomains explicitly.
2017-08-28 23:19:07 -07:00
Tim Abbott
92efe94a27
tests: Remove unnecessary apns mock.
2017-08-26 15:00:08 -07:00