예제 #1
0
def upload_to_sfdc(request):
    gmail_service = Google.get_gmail_service(request.session['user_id'])
    attachment_id = request.GET['att_id']
    message_id = request.GET['msg_id']
    file_name = request.GET['file_name']
    attachment = gmail_service.users().messages().attachments().get(userId='me',
                                                                    messageId=message_id, id=attachment_id).execute()
    file_data = attachment['data']
    if file_data:
        sf_auth = Salesforce.objects.get(user__id=request.session['user_id'])
        Sfdc.insert_document(sf_auth, file_name, file_data)
    return HttpResponse('success')
예제 #2
0
def list_threads(request):
    gmail_service = Google.get_gmail_service(request.session['user_id'])
    query = request.GET['query']
    user_id = 'me'

    threads_resp = gmail_service.users().threads().list(userId=user_id, q=query).execute()
    threads = threads_resp['threads'] if 'threads' in threads_resp else []
    threads_with_messages = []
    for thread in threads:
        # do a get on thread using id to fill messages
        thread = gmail_service.users().threads().get(userId=user_id, id=thread['id']).execute()
        messages = thread['messages']
        parsed_messages = []

        if messages:
            # parse the message content
            for message in messages:
                parsed_messages.append(parse_message(message))

        thread['messages'] = parsed_messages
        threads_with_messages.append(thread)

    data = json.dumps(threads_with_messages)
    return HttpResponse(data, mimetype='application/json')