def __init__(self, login_info): """ Initializing the SkySpark class creates the SkySpark session (when the parameters are correct, the session object is bound to our SkySpark instance) :param login_info: a dict containing the login info """ try: self.session = pyhaystack.connect(implementation='skyspark', uri=login_info['uri'], username=login_info['username'], password=login_info['password'], project=login_info['project'], pint=True) except pyhaystack.util.state.NotReadyError as e: # could do error handling here raise e # getting the site from the session. This is the top level item self._site = self.session.site self._equip = None self._equip_name = None self._point = None self._his_frame = None
from pyhaystack.client.skyspark import SkysparkHaystackSession import logging logging.getLogger().setLevel(logging.INFO) # or DEBUG import certifi certifi.where() import requests from requests.packages.urllib3.exceptions import InsecureRequestWarning requests.packages.urllib3.disable_warnings(InsecureRequestWarning) import requests.packages.urllib3 from requests.packages.urllib3.exceptions import SubjectAltNameWarning requests.packages.urllib3.disable_warnings(SubjectAltNameWarning) import datetime import pyhaystack session = pyhaystack.connect(implementation='skyspark', uri='http://54.153.123.192:8080', username='******', password='******', project='kW_Link', pint=True) #session results op = session.about() op.wait() outputSession = op.result
server_lookup = { "niagara_iot_s1": { "implementation": "n4", "uri": "http://your_server:port", "username": "******", "password": "******", "pint": True } } import pyhaystack import hszinc # get session server_name = 'niagara_iot_s1' session = pyhaystack.connect(**server_lookup[server_name]) from elasticsearch import Elasticsearch from elasticsearch.helpers import bulk es = Elasticsearch() def update_metadata_es(): metadata_op = session.find_entity("site or equip or point") metadata_op.wait() metadata = metadata_op.result # converting to es format metadata_actions = [] es_index = "niagara4_metadata_server1" es_type = "metadata" for es_id in metadata.keys():
import logging import numpy as np logging.getLogger().setLevel(logging.INFO) from pyhaystack.util import filterbuilder as fb # %% import pyhaystack import datetime from datetime import timezone session = pyhaystack.connect(implementation='skyspark', uri='http://skyspark.hanson-inc.com:8080', username='******', password='******', project='springfieldHanson', pint=True) #%% session op = session.about() op.wait() nav = op.result print(nav) #%% site=session.site my_equip = site['rtu1'] # equip = site.equipments #%% # res = my_equip.find_points(fb.Field('navName') == fb.Scalar('rtu1_RACO2')).result # res.points point = list(my_equip.find_entity(fb.Field('navName') == fb.Scalar('rtu1_RACO2')).result.values())[0]
def getNiagaraSessionInstance(): if 'niagaraSessionInstance' not in globals(): server_name = 'niagara.server' globals()['niagaraSessionInstance'] = pyhaystack.connect( **config.get(server_name)) return globals()['niagaraSessionInstance']