'Get the data on the PlexPy notification logs table.
Required parameters:
None
Optional parameters:
order_column (str):             "timestamp", "agent_name", "notify_action",
"subject_text", "body_text", "script_args"
order_dir (str):                "desc" or "asc"
start (int):                    Row to start from, 0
length (int):                   Number of items to return, 25
search (str):                   A string to search for, "Telegram"
Returns:
json:
{"draw": 1,
"recordsTotal": 1039,
"recordsFiltered": 163,
"data":
[{"agent_id": 13,
"agent_name": "Telegram",
"body_text": "Game of Thrones - S06E01 - The Red Woman [Transcode].",
"id": 1000,
"notify_action": "play",
"poster_url": "http://i.imgur.com/ZSqS8Ri.jpg",
"rating_key": 153037,
"script_args": "[]",
"session_key": 147,
"subject_text": "PlexPy (Winterfell-Server)",
"timestamp": 1462253821,
"user": "DanyKhaleesi69",
"user_id": 8008135'

@cherrypy.expose
@cherrypy.tools.json_out()
@requireAuth(member_of('admin'))
@addtoapi()
def get_notification_log(self, **kwargs):

    if (not kwargs.get('json_data')):
        dt_columns = [('timestamp', True, True), ('agent_name', True, True), ('notify_action', True, True), ('subject_text', True, True), ('body_text', True, True), ('script_args', True, True)]
        kwargs['json_data'] = build_datatables_json(kwargs, dt_columns, 'timestamp')
    data_factory = datafactory.DataFactory()
    notifications = data_factory.get_notification_log(kwargs=kwargs)
    return notifications
