private void sendEventRequest() {
		JSONObject json = new JSONObject();
		json.put("accountId", accountId);
		json.put("applicationId", applicationId);
		json.put("screenId", screenId);
		json.put("userId",userId);
		json.put("mediaresourceId", mediaresourceId);
		json.put("type", type);
		json.put("objectId", objectId);
		
		//add object information
		JSONObject object = new JSONObject();
		object.put("objectId", objectId);
		
		//add entities array
		JSONArray entities = new JSONArray();			
		
		for (Iterator<GAINObjectEntity> it = this.entities.iterator(); it.hasNext(); ) {
			GAINObjectEntity ent = it.next();
			
			JSONObject entity = new JSONObject();			
			entity.put("source", ent.source);
			entity.put("lod", ent.lod);
			entity.put("type", ent.type);
			entity.put("label", ent.label);
			entity.put("typeLabel", ent.typeLabel);
			entity.put("entityType", ent.entityType);
			entity.put("confidence", ent.confidence);
			entity.put("relevance", ent.relevance);
			
			entities.add(entity);
		}
		
		object.put("entities", entities);		
		json.put("object", object);
		
		JSONObject attributes = new JSONObject();
		attributes.put("category", category);
		attributes.put("action", action);
		
		//screen orientation specific
		if (category.equals("screen") && action.equals("orientation")) {
			attributes.put("orientation", orientation);
		}
		
		//player event specific
		if (category.equals("player")) {
			attributes.put("location", videoTime);
		}
		
		//user viewtime specific
		if (category.equals("user") && action.equals("viewtime")) {
			attributes.put("viewtime", viewtime);
		}
		
		JSONObject client = new JSONObject();
		client.put("type",CLIENT_TYPE);
		client.put("version", CLIENT_VERSION);
		
		attributes.put("client", client);
		json.put("attributes", attributes);
		
		String body = json.toString();
		
		sendRequest(body);
	}