{ "id": "153948", "key": "TIMOB-20156", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "18414", "description": "", "name": "Release 6.2.0", "archived": false, "released": true, "releaseDate": "2017-09-13" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-05-24T13:42:13.000+0000", "created": "2015-12-18T13:00:16.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "qe-6.2.0" ], "versions": [], "issuelinks": [], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2017-05-24T14:50:44.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "5.1 added support for TextActions. Works fine for local notifications, unfortunately for Remote notifications the typedText value is ignored and not passed back to Javascript side. \r\n\r\nI've submitted a pull request taking the code that was added for returning 'typedText' in local notifications and added it to the remote notification callback.\r\n", "attachment": [], "flagged": false, "summary": "iOS: typedText not returned for Remote Notifications with Text Actions", "creator": { "name": "mike@teamworkpm.net", "key": "mike@teamworkpm.net", "displayName": "Mike Butler", "active": true, "timeZone": "Europe/London" }, "subtasks": [], "reporter": { "name": "mike@teamworkpm.net", "key": "mike@teamworkpm.net", "displayName": "Mike Butler", "active": true, "timeZone": "Europe/London" }, "environment": null, "comment": { "comments": [ { "id": "373312", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR: https://github.com/appcelerator/titanium_mobile/pull/7593", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-12-19T12:29:23.000+0000", "updated": "2015-12-19T12:29:23.000+0000" }, { "id": "419323", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR: https://github.com/appcelerator/titanium_mobile/pull/9033\r\n\r\nTest-Case: See above, trigger a remote notification and check both the {{localnotificationaction}} (for local notifications) and {{remotenotificationaction}} (for remote notifications) event.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-05-08T20:16:35.000+0000", "updated": "2017-05-08T20:16:35.000+0000" }, { "id": "420101", "author": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Test case for remote notification :\r\n\r\n\r\n{code:java}\r\nvar win = Ti.UI.createWindow({\r\n backgroundColor: \"#fff\"\r\n});\r\n \r\nvar btn = Ti.UI.createButton({\r\n title: \"Send notification\"\r\n});\r\n \r\nbtn.addEventListener(\"click\", sendNotification);\r\n \r\nwin.add(btn);\r\nwin.open();\r\n \r\nTi.App.iOS.addEventListener('remotenotificationaction', function(e) {\r\n // As soon as the app-badge increases to __THREE__, we now it works\r\n Ti.UI.iOS.appBadge = 3;\r\n Ti.API.info(e);\r\n});\r\n \r\nTi.App.iOS.addEventListener('notification', function(e) {\r\n alert(\"Event: notification\");\r\n Ti.API.warn(e);\r\n});\r\n \r\nfunction sendNotification() {\r\n \r\n var answerAction = Ti.App.iOS.createUserNotificationAction({\r\n identifier: \"ANSWER_IDENTIFIER\",\r\n title: \"Answer\",\r\n activationMode: Ti.App.iOS.USER_NOTIFICATION_ACTIVATION_MODE_BACKGROUND,\r\n behavior: Ti.App.iOS.USER_NOTIFICATION_BEHAVIOR_TEXTINPUT\r\n });\r\n \r\n var invitationCategory = Ti.App.iOS.createUserNotificationCategory({\r\n identifier: \"INVITE_CATEGORY\",\r\n actionsForDefaultContext: [answerAction],\r\n actionsForMinimalContext: [answerAction]\r\n });\r\n \r\n Ti.App.iOS.registerUserNotificationSettings({\r\n types: [\r\n Ti.App.iOS.USER_NOTIFICATION_TYPE_ALERT,\r\n Ti.App.iOS.USER_NOTIFICATION_TYPE_BADGE,\r\n Ti.App.iOS.USER_NOTIFICATION_TYPE_SOUND\r\n ],\r\n categories: [invitationCategory]\r\n });\r\n\r\nfunction registerForPush() {\r\n Ti.Network.registerForPushNotifications({\r\n success: function(e) {\r\n Ti.API.info('success')\r\n\r\n Ti.API.info(e.deviceToken);\r\n },\r\n error: function(e) {\r\n Ti.API.info('failed')\r\n },\r\n callback: function(e) {\r\n Ti.API.info('data found');\r\n Ti.API.info(e);\r\n\r\n },\r\n });\r\n // Remove event listener once registered for push notifications\r\n Ti.App.iOS.removeEventListener('usernotificationsettings', registerForPush); \r\n};\r\n \r\n// Wait for user settings to be registered before registering for push notifications\r\nTi.App.iOS.addEventListener('usernotificationsettings', registerForPush);\r\n\r\n}\r\n{code}", "updateAuthor": { "name": "vijaysingh", "key": "vijaysingh", "displayName": "Vijay Singh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-05-22T07:57:09.000+0000", "updated": "2017-05-22T07:57:09.000+0000" }, { "id": "420326", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "body": "Verified as fixed, using the following test steps, typedText was properly returned with the use of remote notifications:\r\n\r\n1. Run test code, click 'Send Notification'.\r\n2. Background the app\r\n3. Send a push notification from arrowDB application with the \"ok\" channel\r\n4. Make sure the 'Category' field is \"INVITE_CATEGORY\"\r\n5. Swipe down on the banner alert and it will let you enter text\r\n6. put whatever you want and push send\r\n7. Check console for typedText property, verify that app badge icon has been set to \"3\"\r\n\r\nTested On:\r\niPhone 7 10.3.2 Device\r\nMac OS Sierra (10.12.2)\r\nTi SDK: 6.2.0.v20170524065210\r\nAppc NPM: 4.2.9-1\r\nApp CLI: 6.1.0\r\nXcode 8.2.1\r\nNode v4.6.0\r\n\r\n*Closing ticket.*\r\n", "updateAuthor": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2017-05-24T14:49:52.000+0000", "updated": "2017-05-24T14:49:52.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }