3
votes

I've configured a client to subscribe to Push Notifications from a Godaddy Hosted Exchange 2007 SP1 server via EWS Managed API.

I can successfully request and then receive a Subscription ID from GoDaddy's server (mail.ex1.secureserver.net) but then don't receive any push notifications. I've contacted GoDaddy to make sure EWS Push Notifications aren't disabled, and according to them, they aren't; so, the problem must be in my listener service.

I am subscribing to the DistinguishedFolderIdNameType.inbox folder and to the following events: NotificationEventTypeType.NewMailEvent, CopiedEvent, CreatedEvent, DeletedEvent, ModifiedEvent, and MovedEvent.

The SendNotification method is never run:

[WebService(Namespace = "http://microsoft.com/webservices/")]
public class PushNotificationClient : WebService, INotificationServiceBinding

    [WebMethod(Description="Creates a push notification subscription")]
    public string Subscribe(){/* code to subscribe goes here. It seems to work perfectly and I receive a SubscriptionID, Watermark, and no error messages. */}

    public SendNotificationResultType SendNotification(SendNotificationResponseType sendNotification)
    {
        // this never happens
        WriteEventToLog("SendNotification happened!");
    }
}

The web service is publicly accessible at the URL specified in the Pull Subscription Request (http://my-sub-domain.my-site.com/Service.asmx). I've verified that POSTing to the URL manually does work as expected.

What am I missing?

1

1 Answers

1
votes

I would imagine that the SSL cert not being trusted will matter. Try subscribing to it using an http url instead. In theory you're not sending sensitive data over the wire, as you have to call back to get the data if memory serves correctly.