In [1]:
import json
s = {
  "Details": {
    "Story": "Rabbit Story",
    "Username": "Anonymous",
    "Frame_start": 1,
    "Frame_end": 2
  },
  "Frames": 
  [
    {
      "Characters":
      [
        {
          "Name"        : "Rabbit",
          "Direction"   : "Left",
          "Text"        : "",
          "Emotion"     : "Happy",
          "URL"         : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile.png",
          "Mouthpoint"  : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile_mouthpoint.txt"
        },
        {
          "Name"        : "Turtle",
          "Direction"   : "Right",
          "Text"        : "",
          "Emotion"     : "Sad",
          "URL"         : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png",
          "Mouthpoint"  : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt"
        }
      ],

      "Background": 
      {
        "Image_name": "ground1"
      }
    },

    {
      "Characters": 
      [
        {
          "Name"        : "Rabbit",
          "Direction"   : "Left",
          "Text"        : "",
          "Emotion"     : "Sad",
          "URL"         : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad.png",
          "Mouthpoint"  : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad_mouthpoint.txt"
        },
        {
          "Name"        : "Turtle",
          "Direction"   : "Right",
          "Text"        : "",
          "Emotion"     : "Sad",
          "URL"         : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png",
          "Mouthpoint"  : "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt"
        }
      ],

      "Background": 
      {
        "Image_name": "ground2"
      }
    }
  ]

}

print json.dumps(s)
s


{"Frames": [{"Background": {"Image_name": "ground1"}, "Characters": [{"Emotion": "Happy", "Direction": "Left", "Mouthpoint": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile_mouthpoint.txt", "Name": "Rabbit", "URL": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile.png", "Text": ""}, {"Emotion": "Sad", "Direction": "Right", "Mouthpoint": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt", "Name": "Turtle", "URL": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png", "Text": ""}]}, {"Background": {"Image_name": "ground2"}, "Characters": [{"Emotion": "Sad", "Direction": "Left", "Mouthpoint": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad_mouthpoint.txt", "Name": "Rabbit", "URL": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad.png", "Text": ""}, {"Emotion": "Sad", "Direction": "Right", "Mouthpoint": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt", "Name": "Turtle", "URL": "http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png", "Text": ""}]}], "Details": {"Username": "Anonymous", "Frame_start": 1, "Story": "Rabbit Story", "Frame_end": 2}}
Out[1]:
{'Details': {'Frame_end': 2,
  'Frame_start': 1,
  'Story': 'Rabbit Story',
  'Username': 'Anonymous'},
 'Frames': [{'Background': {'Image_name': 'ground1'},
   'Characters': [{'Direction': 'Left',
     'Emotion': 'Happy',
     'Mouthpoint': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile_mouthpoint.txt',
     'Name': 'Rabbit',
     'Text': '',
     'URL': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/fakesmile.png'},
    {'Direction': 'Right',
     'Emotion': 'Sad',
     'Mouthpoint': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt',
     'Name': 'Turtle',
     'Text': '',
     'URL': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png'}]},
  {'Background': {'Image_name': 'ground2'},
   'Characters': [{'Direction': 'Left',
     'Emotion': 'Sad',
     'Mouthpoint': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad_mouthpoint.txt',
     'Name': 'Rabbit',
     'Text': '',
     'URL': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Rabbit/sad.png'},
    {'Direction': 'Right',
     'Emotion': 'Sad',
     'Mouthpoint': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad_mouthpoint.txt',
     'Name': 'Turtle',
     'Text': '',
     'URL': 'http://ec2-34-208-169-220.us-west-2.compute.amazonaws.com/Turtle/sad.png'}]}]}

In [9]:
import json

#JSON Generator

def generate_response(username, story, frame_start, frame_end):
    url = 'http://34.208.169.220/'
    json_response = {'Details' : 
                       {"Story": story,
                        "Username": username,
                        "Frame_start": frame_start,
                        "Frame_end": frame_end
                       },
                     'Frames' : []
                    }
    
    count = 0
    for elem in range(frame_start, frame_end + 1):
        
        json_response['Frames'].append({})        
        json_response['Frames'][count]['Background'] = {'Image_name' :  url + 'mint_background.jpg'}
        
        json_response['Frames'][count]['Characters'] = []
        #add as many characters that are in the frame
        
        for char in range(2):
            json_response['Frames'][count]['Characters'].append({}) 
            json_response['Frames'][count]['Characters'][char]['Direction']  = 'Left'
            json_response['Frames'][count]['Characters'][char]['Emotion']    = "Happy"
            json_response['Frames'][count]['Characters'][char]['Mouthpoint'] = url + "Shark/" + "happy" + '_mouthpoint.txt'
            json_response['Frames'][count]['Characters'][char]['Name']       = 'Shark'
            json_response['Frames'][count]['Characters'][char]['Text']       = ""
            json_response['Frames'][count]['Characters'][char]['URL']        = url + "Shark/"+"happy"+ '.png'
            
        count += 1
        
    return json.dumps(json_response)
    
    #grab all this shit from db
print generate_response('a','b', 1,2)


{"Frames": [{"Characters": [{"Emotion": "Happy", "Direction": "Left", "Mouthpoint": "http://34.208.169.220/Shark/happy_mouthpoint.txt", "Name": "Shark", "URL": "http://34.208.169.220/Shark/happy.png", "Text": ""}, {"Emotion": "Happy", "Direction": "Left", "Mouthpoint": "http://34.208.169.220/Shark/happy_mouthpoint.txt", "Name": "Shark", "URL": "http://34.208.169.220/Shark/happy.png", "Text": ""}], "Background": {"Image_name": "http://34.208.169.220/mint_background.jpg"}}, {"Characters": [{"Emotion": "Happy", "Direction": "Left", "Mouthpoint": "http://34.208.169.220/Shark/happy_mouthpoint.txt", "Name": "Shark", "URL": "http://34.208.169.220/Shark/happy.png", "Text": ""}, {"Emotion": "Happy", "Direction": "Left", "Mouthpoint": "http://34.208.169.220/Shark/happy_mouthpoint.txt", "Name": "Shark", "URL": "http://34.208.169.220/Shark/happy.png", "Text": ""}], "Background": {"Image_name": "http://34.208.169.220/mint_background.jpg"}}], "Details": {"Username": "a", "Frame_start": 1, "Story": "b", "Frame_end": 2}}

In [ ]:


In [ ]: