def echo_response_async(message): if message["type"] == "message": if re.search("Get Members", message['text']): conversation_response = GetConversationMembers(fill=message).send() activity_response = GetActivityMembers(fill=message).send() response_text = 'Conversation: {}; Activity: {}'.format(conversation_response.text, activity_response.text) personal_message(message, response_text) if re.search("cat", message['text']): contentUrl = 'https://imgflip.com/s/meme/Cute-Cat.jpg' ReplyToActivity(fill=message, attachments=[{ 'contentType': 'image/jpeg', 'contentUrl': contentUrl, 'name': 'cute cat.jpg', }]).send() else: response_info = ReplyToActivity(fill=message, text=message["text"]).send() sleep(5) # This activity doesn't seem to work in most chat applications. DeleteActivity(fill=message, activityId=response_info.json()['id']).send() sleep(2) personal_message(message, message['text'])
def synchronous_response(message): if message["type"] == "message": if 'synchronous' in message["text"] and 'asynchronous' not in message['text']: ReplyToActivity(fill=message, channelData=None, text='Synchronous Test: {}'.format(message["text"])).send() elif 'config' in message["text"]: config = Config() ReplyToActivity(fill=message, text='Config: {}'.format(config.config)).send() elif 'simple history' in message['text']: state = get_state() ReplyToActivity(fill=message, text=json.dumps({'allHistory': state.get_activities(3, simple=True), 'conversationHistory': state.get_activities(3, simple=True, conversation_id=message['conversation']['id'])})).send() elif 'history' in message['text']: state = get_state() ReplyToActivity(fill=message, text=json.dumps({'allHistory': state.get_activities(3), 'conversationHistory': state.get_activities(3, conversation_id=message['conversation']['id'])})).send() elif "members" in message['text']: conversation_response = GetConversationMembers(fill=message).send() activity_response = GetActivityMembers(fill=message).send() response_text = 'Conversation: {}; Activity: {}'.format(conversation_response.text, activity_response.text) personal_message(message, response_text) elif "image" in message['text']: content_url = 'https://imgflip.com/s/meme/Cute-Cat.jpg' ReplyToActivity(fill=message, attachments=[{ 'contentType': 'image/jpeg', 'contentUrl': content_url, 'name': 'cute cat.jpg', }]).send() elif 'delete' in message['text']: response_info = ReplyToActivity(fill=message, text='Delete Test: {}'.format(message["text"])).send() sleep(2) activity_id = response_info.json()['id'] DeleteActivity(fill=message, activityId=activity_id).send() elif 'personal' in message['text']: personal_message(message, 'Personal Message: {}'.format(message['text'])) elif 'asynchronous' not in message["text"]: ReplyToActivity(fill=message, text='Nothing was queried').send()