Pushnotification service - Internal Server Error

0 votes

Hi All,

Is there any body who faced such Internal Server Error while sending push notification. 

This only happens with iPad mini and only from United Kingdom. I know this is something strange. But i never faced this problem till now (I am from india and using latest 2.7 iOS sdk).  I have been using this platform services more than 2-3 months.

Here is the log what i got from my client after sending push notification from his iPad mini. It seems push notification doesnot send notification and he got INTERNAL SERVER ERROR as response.

 

Push Response : {"app42Fault":{"httpErrorCode":500,"appErrorCode":1500,"message":"Internal Server Error","details":"Internal Server Error. Please try again"}}
Edit : 
 
My code to send push notification.
 

@try

{

NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];

            [dictionary setObject:self.txtMessage.text forKey:@"alert"];

            [dictionary setObject:@"default" forKey:@"sound"];            

            NSLog(@"Push User: %@",self.txtUser.text);

            NSLog(@"Push Dictionary: %@",dictionary);

            PushNotificationService *pushService=[App42API buildPushService];

            PushNotification *push = [pushService sendPushMessageToUser:self.txtUser.text  withMessageDictionary:dictionary];

            NSLog(@"Push Response : %@",push.strResponse);

}

        @catch (App42Exception *exception)

        {

            NSLog(@"Push Exception = %@",exception.reason);

        }

        @finally

        {

        }

 
Here is my client's log for my above code.
 
Jun  4 11:37:28 iPadMini backboardd[28] <Error>: HID: The 'Rate Controlled' connection 'AppWarpDemo' access to protected services is denied.
Jun  4 11:37:42 iPadMini AppWarpDemo[802] <Warning>: Push User: nilesh
Jun  4 11:37:42 iPadMini AppWarpDemo[802] <Warning>: Push Dictionary: {
   alert = hello;
   sound = default;
}
Jun  4 11:37:42 iPadMini AppWarpDemo[802] <Warning>: Push Exception = {"app42Fault":{"httpErrorCode":500,"appErrorCode":1500,"message":"Internal Server Error","details":"Internal Server Error. Please try again"}}
 
It seems its an iOS bug. I googled for this "HID: The 'Rate Controlled' connection <app_name> access to protected services is denied". Please let me know if you find anything regarding this.  
 
Thanks for your help in advance :)
 

 

 

 

asked Jun 3, 2014 in App42 Cloud API-BaaS by nilesh (109 points)
edited Jun 4, 2014 by nilesh

1 Answer

+1 vote
 
Best answer

Hi,

Can you share iPad Mini version and iOS version installed on it.

Can you try enabling App42Trace just after you initialised App42API as:

    [App42API enableApp42Trace:YES];

It will print the internal logs of SDK. Can you share the logs from the xcode console when you get this exception.

Thanks.

answered Jun 3, 2014 by rajeev.etc (1,660 points)
selected Jun 13, 2014 by nilesh
i will do that and share the details here for the same. iPadMini with 7.1.1 ios installed.
please see my edits.
Hi,

Can you add this:
 [App42API enableApp42Trace:YES];
just before calling the "sendPushMessageToUser" API inside the try block and send the the internal logs from your xcode console.

The logs i am looking for will be something like:

App42Trace: -[App42Service populateSignParams].....IN
App42Trace: -[App42Service populateSignParams].....OUT
App42Trace: -[App42Service populateMetaHeaderParams].....IN
App42Trace: InstallationId=3218da48a8fb62c68cd331104406671d
App42Trace: -[App42Service populateMetaHeaderParams].....OUT
App42Trace: MetaHeaders={
    SDKName = iOS;
    deviceId = 3218da48a8fb62c68cd331104406671d;
}
App42Trace: urlString=https://api.shephertz.com/cloud/1.0/push/sendMessage/Rohit_iPAD?
App42Trace: headerParams={
    SDKName = iOS;
    apiKey = "API_KEY";
    deviceId = 3218da48a8fb62c68cd331104406671d;
    signature = "rlBmfgJM9hF8w4D9kqC3WlxZrKU%3D";
    timeStamp = "2014-06-04T14:04:05.955Z";
    version = "1.0";
}
App42Trace: queryParams={
}

I need to know, what are the headerParams in your case, it will help us to find the problem.

Thanks.
Also you can disable "Replay Attack Protect" option in the AppHQ Dashboard and check whether it solves the problem.

To disable "Replay Attack Protect", Open AppHQ Dashboard->Go to App Manager in AppHQ Menu-> Click View Apps -> Click Disable under "Replay Attack Protect"  for that particular app.
"Reply Attack Protect" is already disabled. I can see the logs as you shown while debugging app. I sent build to my client but it does not print logs in console. enableApp42Trace = YES  will not work on release builds ?
We have made some changes in the SDK and uploaded to this link: https://github.com/RajeevRShephertz/App42_IOS_SDK/archive/master.zip .
Can you please try this SDK and let us know if the issue is resolved.
ok thanks, i will let you know.
rajeev, i tested this by integrating your new updated sdk. but problem still exist. I also tried in my client's iPad mini with debugger. SDK Internal logs are not printing there.
thanks rajeev for the support you provided so far :)
Download Widgets
Welcome to ShepHertz Product line forum, where you can ask questions and receive answers from the community. You can also reach out to us on support@shephertz.com
...