diff --git a/appengine/xmpp/app.yaml b/appengine/xmpp/app.yaml index 114dae7d522..5fb971c52b5 100644 --- a/appengine/xmpp/app.yaml +++ b/appengine/xmpp/app.yaml @@ -13,4 +13,3 @@ inbound_services: - xmpp_presence - xmpp_subscribe - xmpp_error - diff --git a/appengine/xmpp/xmpp.py b/appengine/xmpp/xmpp.py index abd1eae8644..91bdc8a7c6d 100644 --- a/appengine/xmpp/xmpp.py +++ b/appengine/xmpp/xmpp.py @@ -68,10 +68,25 @@ def post(self): # [END error] +# [START send-chat-to-user] +class SendChatHandler(webapp2.RequestHandler): + def post(self): + user_address = 'example@gmail.com' + msg = ('Someone has sent you a gift on Example.com. ' + 'To view: http://example.com/gifts/') + status_code = xmpp.send_message(user_address, msg) + chat_message_sent = (status_code == xmpp.NO_ERROR) + + if not chat_message_sent: + # Send an email message instead... + # [END send-chat-to-user] + pass +# [START send-chat-to-user] + + # [START chat] class XMPPHandler(webapp2.RequestHandler): def post(self): - print "REQUEST POST IS %s " % self.request.POST message = xmpp.Message(self.request.POST) if message.body[0:5].lower() == 'hello': message.reply("Greetings!") @@ -83,4 +98,5 @@ def post(self): ('/_ah/xmpp/presence/available', PresenceHandler), ('/_ah/xmpp/error/', ErrorHandler), ('/send_presence', SendPresenceHandler), + ('/send_chat', SendChatHandler), ]) diff --git a/appengine/xmpp/xmpp_test.py b/appengine/xmpp/xmpp_test.py index eb97a228b15..ed670505778 100644 --- a/appengine/xmpp/xmpp_test.py +++ b/appengine/xmpp/xmpp_test.py @@ -58,3 +58,8 @@ def test_error(xmpp_mock, app): 'from': 'sender@example.com', 'stanza': 'hello world' }) + + +@mock.patch('xmpp.xmpp') +def test_send_chat(xmpp_mock, app): + app.post('/send_chat')