示例#1
0
def global_keyword_start(verified_number, text, msg, text_words,
                         open_sessions):
    outbound_metadata = MessageMetadata(workflow=WORKFLOW_KEYWORD, )

    if len(text_words) > 1:
        keyword = text_words[1]
        k = Keyword.get_keyword(verified_number.domain, keyword)
        if k:
            if not contact_can_use_keyword(verified_number, k):
                return False
            process_survey_keyword_actions(verified_number, k,
                                           text[6:].strip(), msg)
        else:
            message = get_message(MSG_KEYWORD_NOT_FOUND, verified_number,
                                  (keyword, ))
            send_sms_to_verified_number(verified_number,
                                        message,
                                        metadata=outbound_metadata)
    else:
        message = get_message(MSG_START_KEYWORD_USAGE, verified_number,
                              (text_words[0], ))
        send_sms_to_verified_number(verified_number,
                                    message,
                                    metadata=outbound_metadata)
    return True
示例#2
0
 def clean_keyword(self):
     value = self.cleaned_data.get("keyword")
     if value is not None:
         value = value.strip().upper()
     if value is None or value == "":
         raise ValidationError(_("This field is required."))
     if len(value.split()) > 1:
         raise ValidationError(_("Keyword should be one word."))
     duplicate = Keyword.get_keyword(self.domain, value)
     if duplicate and duplicate.couch_id != self.survey_keyword_id:
         raise ValidationError(_("Keyword already exists."))
     return value
示例#3
0
 def clean_keyword(self):
     value = self.cleaned_data.get("keyword")
     if value is not None:
         value = value.strip().upper()
     if value is None or value == "":
         raise ValidationError(_("This field is required."))
     if len(value.split()) > 1:
         raise ValidationError(_("Keyword should be one word."))
     duplicate = Keyword.get_keyword(self._cchq_domain, value)
     if duplicate and duplicate.couch_id != self._sk_id:
         raise ValidationError(_("Keyword already exists."))
     return value
示例#4
0
def global_keyword_start(v, text, msg, text_words, open_sessions):
    outbound_metadata = MessageMetadata(
        workflow=WORKFLOW_KEYWORD,
    )

    if len(text_words) > 1:
        keyword = text_words[1]
        k = Keyword.get_keyword(v.domain, keyword)
        if k:
            if not contact_can_use_keyword(v, k):
                return False
            process_survey_keyword_actions(v, k, text[6:].strip(), msg)
        else:
            message = get_message(MSG_KEYWORD_NOT_FOUND, v, (keyword,))
            send_sms_to_verified_number(v, message, metadata=outbound_metadata)
    else:
        message = get_message(MSG_START_KEYWORD_USAGE, v, 
            (text_words[0],))
        send_sms_to_verified_number(v, message, metadata=outbound_metadata)
    return True