from flask import Blueprint, render_template, request, jsonify, redirect, url_for
from time import gmtime, strftime
import requests
import json


def queryserver():
    flicid = '8451'
    url = "http://artie.eng.fireeye.com/api/v1/machines?asset_id=%s" % flicid
    print url
    response = requests.get(url, verify=False)
    try:
       payload = json.loads(response.text)
       m = payload['machines']
       machines = m[0]
       reserved = machines['reserved_by']
       task = machines['task']
    except:
       reserved = 'None'
       task = " "

    url = "https://flic.fireeye.com/api/v1/assets/%s" % flicid
    print url
    response = requests.get(url, verify=False)
    payload = json.loads(response.text)

    print payload
    print "----------------------"
    hostname = payload['hostname']
    cname    = payload['cname']
    make     = payload['make']
    model    = payload['model']

    location = payload['location']
    city     = location['city']
    rack     = location['rack']
    slot     = location['slot']


    terminal = payload['terminal_server']
    portname = terminal['name'] + '.eng.fireeye.com'
    myport   = int(terminal['port'])
    portstring = 'ssh -p22%02d %s' % ( myport, portname )

    print portstring


    flic = "{}".format(url)
    mbx = "https://my.mbx.com/inventory/system/index.cfm?mbx_serial={}".format(payload['serial_number'])
    art_url = "http://artie.eng.fireeye.com/{}".format(flicid)
    reply = """{cname} ({hostname}) is a {make} {model}
Located in {city} rack {rack} slot {slot}
Used by {reserved_by} for {task}
Reservations: {art_url}
Console: {portstring}
FLIC: {flic}
MBX: {mbx}
IPMI: [{ipmi}](http://{ipmi}/)
{foreman_label} {foreman_link}
""".format(cname=cname, hostname=hostname, make=make, model=model, city=city, rack=rack, slot=slot,
           reserved_by=reserved_by, task=task, art_url=art_url, portstring=portstring,
           flic=flic, mbx=mbx, ipmi=ipmi, foreman_label=foreman_label, foreman_link=foreman_link)



queryserver()

