Skip to content

Instantly share code, notes, and snippets.

View gguuss's full-sized avatar

Gus Class gguuss

View GitHub Profile
git clone https://github.com/GoogleCloudPlatform/iot-hexspider-esp8266
export FLASK_APP=server.py
flask run
virtualenv create env && source env/bin/activate
pip install -r requirements.txt
openssl ec -in ec_private.pem -noout -text
gcloud iot devices create test-dev —region=us-central1 —registry=arduino-test \
 —public-key path=ec_public.pem,type=es256
openssl ecparam -genkey -name prime256v1 -noout -out ec_private.pem
openssl ec -in ec_private.pem -pubout -out ec_public.pem
gcloud iot registries create robots-fun --region=us-central1 --event-notification-config-topic=robots-fun
gcloud pubsub topics create robot-fun
gcloud pubsub subscriptions create robot-fun-sub --topic=tour-pub
def pubsub_callback(message):
messages.append(message.data)
message.ack()
app.logger.info(message.data)
@app.before_request
def before_first_request():
subscriber = pubsub_v1.SubscriberClient()
subscription_path = subscriber.subscription_path(PROJECT_ID, subscription_name)
#subscriber.subscribe_experimental(subscription_name, pubsub_callback)
def updateConfig(project_id, region, registry_id, device_id, data):
"""Push the data to the given device as configuration."""
config_data_json = json.dumps(data)
body = {
'version_to_update': 0,
'binary_data': base64.b64encode(
config_data_json.encode('utf-8')).decode('ascii')
}
device_name = ('projects/{}/locations/{}/registries/{}/'