def sms_reply(): # Retrieve the body of the text message. message_body = request.form['Body'].lower() # Create a TwiML response object to respond to the text message. resp = Response() message_response = 'Thanks for playing :) Hit up @Sagnewshreds on Twitter for questions.'.format( buttons) error_message = 'Please enter a valid Gameboy button: {}'.format(buttons) # Create a list of all words in the message body. message_list = message_body.split(' ') # See if the message was a valid button. if message_body in buttons: # Make sure the button is uppercase for the emulator's API. if message_body in ['a', 'b', 'x', 'y']: message_body = message_body.upper() # Initialize the file we are going to write to. button_file = 'p1.txt' # Determine which player is pressing this button. if request.form['From'] in player_two_numbers: button_file = 'p2.txt' with open(button_file, 'w') as f: f.write(message_body) else: message_response = error_message resp.message(message_response) return str(resp)
def sms_personal(request): name = request.POST.get('Body', '') msg = 'Hey %s, how are you today?' % (name) r = Response() r.message(msg) return r
def sms(request, message, to=None, sender=None, action=None, method='POST', status_callback=None): """See: http://www.twilio.com/docs/api/twiml/sms. Usage:: # urls.py urlpatterns = patterns('', # ... url(r'^sms/$', 'django_twilio.views.sms', { 'message': 'Hello, world!' }), # ... ) """ r = Response() r.message(msg=message, to=to, sender=sender, method='POST', action=action, statusCallback=status_callback) return r
def giveHelp(person_one, request): """ Method for ending a conversation """ help_message = "" help_message += "End conversation: %s Unsubscribe: %s Help: %s" % (end_command, unsubscribe_command, help_command) r = Response() r.message(msg=help_message, to=person_one.phone_number) return r
def sms(request): if request.method == 'GET': return HttpResponse("You are using GET. Use POST to communicate via SMS.") body = request.POST.get('Body', '') body = body.lower() if "call me" in body: client = TwilioRestClient(settings.TWILIO_ACCOUNT_SID, settings.TWILIO_AUTH_TOKEN) call = client.calls.create( to="978-382-3789", from_="19782917626", url="http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient") # monkey mp3 below doesn't work for some reason -> Application error # https://demo.twilio.com/hellomonkey/monkey.mp3 msg = "I'll call you in a sec......" r = Response() r.message(msg) return r msg = 'How are you today? This is what you sent me: %s' % (body) # msg = 'Hello world! Twilio integrated with Django!!!' r = Response() r.message(msg) return r
def handle_noticeboard_inbound(): pusher_key = app.config.get('PUSHER_KEY', None) pusher_secret = app.config.get('PUSHER_SECRET', None) pusher_app_id = app.config.get('PUSHER_APP_ID', None) try: p = Pusher(pusher_app_id, pusher_key, pusher_secret) p['rrk_noticeboard_live'].trigger( 'new_message', { 'image': request.values.get('MediaUrl0', None), 'body': request.values.get('Body', None), 'from': request.values.get('From', None) } ) except: return '<Response />' to = request.values.get('To', '') r = Response() r.message( '''Thank you, your image has been posted to {0}noticeboard/live/{1}'''.format(request.url_root, to)) return r.toxml()
def verify_sms(request): from_number = request.POST.get("From", None) from_text = request.POST.get("Body", None) msg = game_logic(from_number, from_text) r = Response() r.message(msg) return r
def sms(request): name = request.POST.get('Body', '') msg = 'Hey %s' r = Response() r.message(msg) return r
def help_message(): r = Response() message_string = ("Hello! I understand:\n" "'Add Jane Doe' to add Jane Doe as a contact\n" "'Met Jane Doe' to log that you met Jane Doe\n" "'Find Jane Doe' to search for Jane in your contacts") r.message(message_string) return HttpResponse(r.toxml(), content_type='text/xml')
def sms_response_help(poll_title, poll_options): r = Response() r.message( u"%s\nOptions: %s.\n\nReply to this SMS with your vote!\n\nTo see the results text RESULTS.\n\nTo remove a vote text UNVOTE.\n\nTo see which option you have voted for text WHICH. \U0001F37A" % ( poll_title, poll_options ) ) return r
def giveHelp(person_one, request): ''' Method for ending a conversation ''' help_message = '' help_message += 'End conversation: %s Unsubscribe: %s Help: %s' % ( end_command, unsubscribe_command, help_command) r = Response() r.message(msg=help_message, to=person_one.phone_number) return r
def unsubscribe(person_one, request): ''' Method for ending a conversation ''' phone = person_one.phone_number person_one.delete() message = 'You have unsubscribed.' r = Response() r.message(msg=message, to=phone) return r
def sms(request): enrolleeNumber = request.POST.get('Body', '') msg = 'Enrollment for %s confirmed' % (enrolleeNumber) r = Response() r.message(msg) enrollmentMessage = 'You have been enrolled in this progam. Stay tuned!' sendMessage(enrolleeNumber, enrollmentMessage) return r
def sms(request): # name = request.POST.get('Body', '') msg = 'Hey Mike, please send Kennedy a reminder to do a breast self-exam! Go to the page at http://j.mp/SelfChec to get some ideas for what to talk about.' r = Response() r.message(msg) return r
def unsubscribe(person_one, request): """ Method for ending a conversation """ phone = person_one.phone_number person_one.delete() message = "You have unsubscribed." r = Response() r.message(msg=message, to=phone) return r
def smsRes(request): body = request.POST.get('Body', '') number = request.POST.get('From', '') id1 = [ 'I8ckg12tIqOpz613Sf/VLPClcVhOTKH2', '6lAPqTztmhj/1ml4NmER+KXwJev8eMWN', 'I8ckg12tIqOpz613Sf/VLPClcVhOTKH2', 'I8ckg12tIqOpz613Sf/VLPClcVhOTKH2' ] wallet = [ '4817497275977414861', '5622253132157119015', '5243188823714477159', '5014900270407291489' ] #body = request.POST.get('Body', '') #number = request.POST.get('From','') #comma_index= list(find(',',body)) if (body.split(",")[0] == 'payprem'): identity = body.split(",")[1] wc = body.split(",")[2] amt = 20 if (identity in id1) and (wc in wallet): a = confirmpayment(identity, wc, amt) b = wallet_details(identity, wc) msg = a + b elif (body.split(",")[0] == 'getsubs'): identity = body.split(",")[1] wc = body.split(",")[2] amt = 20 if identity in id1 and wc in wallet: a = banktocus(identity, wc, amt) b = wallet_details(identity, wc) msg = a + b elif (body.split(",")[0] == 'tranhis'): identity = body.split(",")[1] wc = body.split(",")[2] amt = 20 if identity in id1 and wc in wallet: a = trans_his(identity, wc) msg = a elif (body.split(",")[0] == 'knowbal'): identity = body.split(",")[1] wc = body.split(",")[2] amt = 20 if identity in id1 and wc in wallet: a = wallet_details(identity, wc) msg = a else: msg = "Invalid Request" r = Response() r.message(msg) return r
def recv(): message = request.values['m'] data = message.split(' ', 1) user = load_user(data[0]) resp = Response() resp.message("Forwarded to %s" % user.email if user else "User not found") return str(resp)
def newUser(request): ''' Create new user ''' phone = request.POST.get('From', '') p = Person(phone_number=phone) p.save() message = 'Welcome! By texting this number you agree to have your number in our database. Text "%s" to remove it. To start a conversation, respond with anything. Text "%s" at any time to get help.' % ( unsubscribe_command, help_command) r = Response() r.message(msg=message, to=p.phone_number) return r
def sms(request): """Will reside in home application only.""" body = request.POST.get('Body', '') from_who = request.POST.get('From', '') #msg = 'Hey %s, how are you today?' % (body) msg = 'Your request has been received and will be processed shortly.' r = Response() r.message(msg) Received.objects.create(from_who=from_who, msg=body) return r
def authorizedEnrollerResponse(senderNumber, smsMessage, request): formattedMessage = formatString(smsMessage) # If they texted a phone number, enroll that person. if isPhoneNumber(formattedMessage): try: enrolleeNumber = formatPhoneNumber(removeCountryCode(formattedMessage)) # store the enrollee phone number in the session for use in between requests request.session[senderNumber] = enrolleeNumber addRecipient(phone_number=enrolleeNumber) # Get the group the enroller belongs to. group = getGroupByPhoneNumber(senderNumber) # Pull campaign info for that group. camps = group.campaign_set.all() campaignIDs = '' for camp in camps: campID = str(camp.id) campName = camp.name campaignIDs = campaignIDs + '\n' + campID + ' - ' + campName msg = 'Please select a campaign:\n %s' % (campaignIDs) r = Response() r.message(msg) return r except Exception as e: return invalidRequest('Error: could not enroll user.') else: try: campaignID = int(smsMessage) # Get the group the enroller belongs to. group = getGroupByPhoneNumber(senderNumber) if isValidCampaignID(campaignID, group) and (request.session[senderNumber] != None): campaignName = Campaign.objects.get(id=campaignID).name enrolleeNumber = request.session[senderNumber] addRecipientToCampaign(enrolleeNumber, campaignID, senderNumber) msg = 'Enrollment in %s confirmed for %s' % (campaignName, enrolleeNumber) r = Response() r.message(msg) enrollmentMessage = 'You have been enrolled in %s. Stay tuned!' % (campaignName) sendMessage(enrolleeNumber, enrollmentMessage) request.session[senderNumber] = None return r else: return invalidRequest('Sorry, we could not find that campaign ID.') except Exception as e: return invalidRequest('Error: could not find that campaign ID.') return invalidRequest('Not a valid enrollment or campaign.')
def continuedConversation(person_one, request): ''' Method for continuing a conversation ''' message = request.POST.get('Body', '') if re.match('speak', message, re.IGNORECASE): message = message[6:] r = Response() r.say(msg=message, to=person_one.partner.phone_number) return r r = Response() r.message(msg=message, to=person_one.partner.phone_number) return r
def continuedConversation(person_one, request): """ Method for continuing a conversation """ message = request.POST.get("Body", "") if re.match("speak", message, re.IGNORECASE): message = message[6:] r = Response() r.say(msg=message, to=person_one.partner.phone_number) return r r = Response() r.message(msg=message, to=person_one.partner.phone_number) return r
def sms_reply(): message_body = request.form['Body'] print message_body send_message(message_body) res = Response() res.message('Thanks for texting our HackPack! After a bit of ' 'rendering, your message should scroll by on our display ' 'shortly :) To find out how to do stuff this on your own ' 'check out: http://twilio.com') return str(res)
def newUser(request): """ Create new user """ phone = request.POST.get("From", "") p = Person(phone_number=phone) p.save() message = ( 'Welcome! By texting this number you agree to have your number in our database. Text "%s" to remove it. To start a conversation, respond with anything. Text "%s" at any time to get help.' % (unsubscribe_command, help_command) ) r = Response() r.message(msg=message, to=p.phone_number) return r
def log_contact(contact, user): time = timezone.now() LogEntry.objects.create(contact=contact, logged_by=user, time=timezone.now(), kind='in person') contact.last_contact = time contact.save() r = Response() r.message("Updated {} ({})".format(contact.name, contact.get_complete_url())) return HttpResponse(r.toxml(), content_type='text/xml')
def endConversation(person_one, request): """ Method for ending a conversation """ if person_one.partner == None: r = Response() r.message(msg="You are not in an active conversation.", to=person_one.phone_number) return r person_one.partner.partner = None person_one.partner.save() person_one.partner = None person_one.save() r = Response() r.message(msg="You have ended this conversation.", to=person_one.phone_number) return r
def sms_reply(request): if request.method == "POST": from_number = format_number(request.POST['From']) message = request.POST['Body'] elif request.method == "GET": from_number = format_number(request.GET['From']) message = request.GET['Body'] r = Response() reply = gen_reply(from_number, message) if reply != None: r.message(reply) return r
def sms_ahoy_reply(): """Respond to incoming messages with a friendly SMS.""" number = request.form['From'] message_body = request.form['Body'] # Start our response resp = Response() # Add a message resp.message("Hype, {}. This works! You just sent: {}".format( number, message_body)) return str(resp)
def endConversation(person_one, request): ''' Method for ending a conversation ''' if person_one.partner == None: r = Response() r.message(msg='You are not in an active conversation.', to=person_one.phone_number) return r person_one.partner.partner = None person_one.partner.save() person_one.partner = None person_one.save() r = Response() r.message(msg='You have ended this conversation.', to=person_one.phone_number) return r
def twilio_add(request): # TODO: Query the proper playlist playlist_id = RdioPlaylist.objects.get(default=True).id query = request.POST['Body'] rdio_objs = query_to_playlist(playlist_id, query) if rdio_objs is None: return HttpResponse(status=200) rdio_playlist, rdio_track = rdio_objs sms_body = build_sms_body(rdio_playlist, rdio_track) r = Response() r.message(sms_body) return r
def get_text(): message = request.form['Body'] (tickers, more) = parse.parse_text(message) stock_info = [] if not tickers: print 'No companies recieved' for t in tickers: stock_info = map(partial(scrape.get_stock_info,more_info=more),tickers) resp = Response() resp.message(print_text(stock_info, more)) return str(resp)
def newConversation(person_one, request): """ Person wanting a new conversation """ phone = request.POST.get("From", "") people = Person.objects.filter(partner=None).exclude(phone_number=phone).all() # All available people if len(people) == 0: # No one is available r = Response() r.message(msg="Sorry, there are no open conversations right now. Please check back later.", to=phone) return r person_two = people[random.randint(0, len(people) - 1)] # Choose a random person person_one.partner = person_two person_one.save() person_two.partner = person_one person_two.save() message = "New message: %s" % (request.POST.get("Body", "")) r = Response() r.message(msg=message, to=person_two.phone_number) return r
def sms(request): category_name = request.POST.get('Body', '') category_obj = Category.objects.filter(name=category_name).first() msg = '' if category_obj: msg = '%s\n' % category_obj.url attributes = category_obj.attribute_set.all().order_by('name') for attribute_obj in attributes: msg += '%s,%s,%s\n' % (attribute_obj.name, attribute_obj.address, attribute_obj.phone_number) else: msg = 'Sorry, I don\'t understand your text. Please text me one of the following: Shelters, Showers, Food, Clothing' r = Response() r.message(msg) return r
def sms(request): if request.method == 'POST': num = str(request.POST.get('From', '')) body = str(request.POST.get('Body', '')) status = parser(body) r = Response() if status: if status == 'pl': msg = play(num, body) if status == 'st': msg = 'Hang tight! we are getting things ready.' else: msg = str(status) else: msg = "Hey! Reply with 'play as <name>', to dive!" r.message(msg) return r
def sms(request): """ Returns SMS of latest statistics collected, and saves them for future reference. """ body = request.POST.get('Body', '') from_who = request.POST.get('From', '') try: Received(from_who=from_who, msg=body).save() except Exception as e: print e msg = 'Your request has been received and will be processed shortly.' r = Response() r.message(msg) try: Sent(to=from_who, msg=msg).save() except Exception as e: print e return r
def enrolleeResponse(senderNumber, smsMessage, request): try: # TODO: test this enrolleeNumber = senderNumber enrolleeMessage = smsMessage time = datetime.utcnow() recipient = Recipient.objects.get(phone_number=senderNumber) membership = Membership.objects.get(recipient=recipient) campaign = membership.campaign; addResponse(senderNumber, smsMessage, campaign, time) msg = 'Thanks for the update!' r = Response() r.message(msg) request.session[senderNumber] = None return r except Exception as e: return invalidRequest('Error: could not handle enrollee response.')
def enrolleeResponse(senderNumber, smsMessage, request): try: # TODO: test this enrolleeNumber = senderNumber enrolleeMessage = smsMessage time = datetime.utcnow() recipient = Recipient.objects.get(phone_number=senderNumber) membership = Membership.objects.get(recipient=recipient) campaign = membership.campaign addResponse(senderNumber, smsMessage, campaign, time) msg = 'Thanks for the update!' r = Response() r.message(msg) request.session[senderNumber] = None return r except Exception as e: return invalidRequest('Error: could not handle enrollee response.')
def sms(request): msg = request.POST.get('Body', '') if msg[:9] == 'Not coming': showingUp(1, '') elif msg[:10] == 'Arriving at': showingUp(2, msg[12:16]) elif msg[:3] == 'Here': showingUp(3, '') elif msg[:3] == 'Gone': showingUp(4, '') elif msg[4:11] == 'finished': completeOrder(msg[:2], True) elif msg[4:13] == 'unfinished': completeOrder(msg[:2], False) elif msg[4:7] == 'left': leftOrder(msg[:2]) else: response = Response() response.message('Your message was not in the correct format. Please try again.') return response
def incoming_message(request): twiml = Response() body = request.POST.get('Body', '') body = body.lower() pokemon_url = '/api/v1/pokemon/{0}/'.format(body) pokemon = query_pokeapi(pokemon_url) if pokemon: sprite_uri = pokemon['sprites'][0]['resource_uri'] description_uri = pokemon['descriptions'][0]['resource_uri'] sprite = query_pokeapi(sprite_uri) description = query_pokeapi(description_uri) message = '{0}, {1}'.format(pokemon['name'], description['description']) image = '{0}{1}'.format(BASE_URL, sprite['image']) frm = request.POST.get('From', '') if '+44' in frm: twiml.message('{0} {1}'.format(message, image)) return twiml twiml.message(message).media(image) return twiml twiml.message("Something went wrong! Try 'Pikachu' or 'Rotom'") return twiml
def sms(request): message_body = request.GET.get('Body', '') from_number = request.GET.get('From', '') from_zip = request.GET.get('FromZip', '') key = re.findall(key_exp, message_body, re.I|re.DOTALL)[0] value = re.findall(value_exp, message_body, re.I|re.DOTALL)[0] r = Response() print(from_zip) r.message(from_number + " " + from_zip + " " + key + " " + value) if (key == "NAME"): mother = Mother(phone_num=from_number, first_name=value) mother.save() if (key == "AGE"): mother = Mother(phone_num=from_number, age=value) mother.save() if (key == "POSTALCODE"): mother = Mother(phone_num=from_number, postal_code=value) mother.save() if (key == "GIVEAID"): mother = Mother(phone_num=from_number, give_aid=value) mother.save() if (key == "RECEIVEAID"): mother = Mother(phone_num=from_number, receive_aid=value) mother.save() if (key == "MOTHERCONDITION"): mother = Mother(phone_num=from_number, mother_condition=value) mother.save() return r
def sms(request): msg = request.POST.get('Body', '') if msg[:9] == 'Not coming': showingUp(1, '') elif msg[:10] == 'Arriving at': showingUp(2, msg[12:16]) elif msg[:3] == 'Here': showingUp(3, '') elif msg[:3] == 'Gone': showingUp(4, '') elif msg[4:11] == 'finished': completeOrder(msg[:2], True) elif msg[4:13] == 'unfinished': completeOrder(msg[:2], False) elif msg[4:7] == 'left': leftOrder(msg[:2]) else: response = Response() response.message( 'Your message was not in the correct format. Please try again.') return response
def sms(request): incomingMessage = request.POST.get('Body', '') incomingMessage = "0" + incomingMessage incomingDigits = ''.join(x for x in incomingMessage if x.isdigit()) incomingNumber = request.POST.get('From', 0)[2:] try: user = User.objects.get(phoneNumber=incomingNumber) except: r = Response() r.message("This number isn't registered. To get in on the pushups, go to lpgpushups.herokuapp.com") return r try: workout = Workout.objects.get(participantID=user,status="pending") except: r = Response() r.message("Too late! " + user.firstName + ", next time text back how many pushups you did within 5 minutes.") return r workout.score = int(incomingDigits) workout.status = "completed" workout.save() r = Response() return r
def do_auto_respond(): sms_message = request.form.get('sms-message', '') voice_message = request.form.get('voice-message', '') if len(sms_message) == 0 and len(voice_message) == 0: flash('Please provide a message', 'danger') return redirect('/auto-respond') sms_url = '' voice_url = '' if len(sms_message) > 0: r = Response() mms_media = check_is_valid_url(request.form.get('media', '')) if mms_media: r.message(sms_message).media(mms_media) else: r.message(sms_message) sms_url = echo_twimlet(r.toxml()) if len(voice_message) > 0: twiml = '<Response><Say>{}</Say></Response>'.format(voice_message) voice_url = echo_twimlet(twiml) try: client = twilio() client.phone_numbers.update(request.form['twilio_number'], friendly_name='[RRKit] Auto-Respond', voice_url=voice_url, voice_method='GET', sms_url=sms_url, sms_method='GET') flash('Auto-Respond has been configured', 'success') except Exception: flash('Error configuring number', 'danger') return redirect('/auto-respond')
def handle_noticeboard_inbound(): pusher_key = app.config.get('PUSHER_KEY', None) pusher_secret = app.config.get('PUSHER_SECRET', None) pusher_app_id = app.config.get('PUSHER_APP_ID', None) try: p = Pusher(pusher_app_id, pusher_key, pusher_secret) p['rrk_noticeboard_live'].trigger( 'new_message', { 'image': request.values.get('MediaUrl0', None), 'body': request.values.get('Body', None), 'from': request.values.get('From', None) }) except: return '<Response />' to = request.values.get('To', '') r = Response() r.message('''Thank you, your image has been posted to {0}noticeboard/live/{1}'''.format(request.url_root, to)) return r.toxml()
def newConversation(person_one, request): ''' Person wanting a new conversation ''' phone = request.POST.get('From', '') people = Person.objects.filter(partner=None).exclude( phone_number=phone).all() # All available people if len(people) == 0: # No one is available r = Response() r.message( msg= 'Sorry, there are no open conversations right now. Please check back later.', to=phone) return r person_two = people[random.randint(0, len(people) - 1)] # Choose a random person person_one.partner = person_two person_one.save() person_two.partner = person_one person_two.save() message = 'New message: %s' % (request.POST.get('Body', '')) r = Response() r.message(msg=message, to=person_two.phone_number) return r
def text(): request_body = request.form["Body"] msg_body = "Message from " + request.form["From"] + " at " \ + datetime.now().strftime('%H:%M:%S') + ": " + request_body if app.config['is_silent']: resp = Response() resp.message("Will is busy right now. \ Your messages will be sent when he is available.") print("Tried to contact someone in silent mode.") app.config['message_queue'].append(msg_body); return str(resp) else: print("Not busy right not, let the sms go through") print(msg_body) msg = client.messages.create( to=user_num, from_=TWILIO_NUMBER, body=msg_body, ) return msg.sid
def sms(request): """ :param request: message received from twillo :return: message to be sent to twillo """ msg = request.POST.get('Body', '') sender = request.POST.get('From', '') scheme = msg.split(' ')[0].upper() # split message and route to appropriate function if scheme == 'REG': msg = do_reg(msg.split(' ')[1:], sender) elif scheme == 'SEARCH': msg = do_search(msg.split(' ')[1:]) elif scheme == 'CHANGE': msg = do_change(msg.split(' ')[1:]) elif scheme == 'RATE': msg = do_rate(msg.split(' ')[1:]) r = Response() r.message(msg) return r
def sms(request): try: senderNumber = request.POST.get('From', '') smsMessage = request.POST.get('Body', '') # Check if the person texting is authorized to enroll people. if isAuthorizedEnroller(senderNumber): return authorizedEnrollerResponse(senderNumber, smsMessage, request) # Check if the person texting is a recipient. elif isEnrollee(senderNumber): return enrolleeResponse(senderNumber, smsMessage, request) # Else, it's an unknown person. else: msg = "Hello! We don't know you yet. If you're part of a group, please contact your group administrator." r = Response() r.message(msg) request.session[senderNumber] = None return r except Exception as e: # print e return invalidRequest('Error.')
def sms_write(request): r = Response() r.message("Sup") return HttpResponse(r.toxml(), content_type='text/xml')
def invalidRequest(errorString): print errorString msg = 'Invalid request!' r = Response() r.message(msg) return r
def authorizedEnrollerResponse(senderNumber, smsMessage, request): formattedMessage = formatString(smsMessage) # If they texted a phone number, enroll that person. if isPhoneNumber(formattedMessage): try: enrolleeNumber = formatPhoneNumber( removeCountryCode(formattedMessage)) # store the enrollee phone number in the session for use in between requests request.session[senderNumber] = enrolleeNumber addRecipient(phone_number=enrolleeNumber) # Get the group the enroller belongs to. group = getGroupByPhoneNumber(senderNumber) # Pull campaign info for that group. camps = group.campaign_set.all() campaignIDs = '' for camp in camps: campID = str(camp.id) campName = camp.name campaignIDs = campaignIDs + '\n' + campID + ' - ' + campName msg = 'Please select a campaign:\n %s' % (campaignIDs) r = Response() r.message(msg) return r except Exception as e: return invalidRequest('Error: could not enroll user.') else: try: campaignID = int(smsMessage) # Get the group the enroller belongs to. group = getGroupByPhoneNumber(senderNumber) if isValidCampaignID( campaignID, group) and (request.session[senderNumber] != None): campaignName = Campaign.objects.get(id=campaignID).name enrolleeNumber = request.session[senderNumber] addRecipientToCampaign(enrolleeNumber, campaignID, senderNumber) msg = 'Enrollment in %s confirmed for %s' % (campaignName, enrolleeNumber) r = Response() r.message(msg) enrollmentMessage = 'You have been enrolled in %s. Stay tuned!' % ( campaignName) sendMessage(enrolleeNumber, enrollmentMessage) request.session[senderNumber] = None return r else: return invalidRequest( 'Sorry, we could not find that campaign ID.') except Exception as e: return invalidRequest('Error: could not find that campaign ID.') return invalidRequest('Not a valid enrollment or campaign.')
def create_message(message, to, sender): r = Response() r.message(message, to=to, sender=sender) return HttpResponse(r.toxml(), content_type='text/xml')
class TextResponse: """ Textself.Response is initialized with a string of the user's phone # """ def __init__(self, locale=None): self.locale = locale self.response = Response() def error(self, error=None): if not error: error = DEFAULT_ERROR_MESSAGE self.response.message(error) logger.info(self.response) return self.response def success(self, message=None): if not message: message = DEFAULT_SUCCESS_MESSAGE self.response.message(message) logger.info(self.response) return self.response def help(self, message=None): if not message: message = DEFAULT_HELP_MESSAGE self.response.message(message) logger.info("Help message sent") return self.response def improper_format(self, message=None): if not message: message = DEFAULT_IMPROPER_MESSAGE self.response.message(message) logger.info("Improper format message sent") return self.response def alias_not_found(self, message=None): if not message: message = DEFAULT_NOT_FOUND_MESSAGE self.response.message(message) logger.info("Alias not found message sent") return self.response def feedback_success(self, message=None): if not message: message = DEFAULT_FEEDBACK_SUCCESS self.response.message(message) logger.info("Feedback received") return self.response
def sms(request): r = Response() r.message('Hello world! Get in touch - [email protected]') return r