def showMessages(request): """show messages for the devices of the logged in samsung user Args: request: django request object Returns: render messages.html """ context = RequestContext(request) #get user_id and token. Needed to retrieve the messages token, userId = getTokenAndId(request.user) #build the message api apiClient = ApiClient(apiKey=token, apiServer = settings.SAMI_SERVER_URL) messagesApi = MessagesApi(apiClient) #get devices associated to a user devicesEnvelope = getUserDevices(token, userId) #build a string containing the devices ids separated by comma devices = ','.join (getDevicesIds(devicesEnvelope)) #get devices types pretty names to show on the html devicesTypes = getDeviceTypesForUser(token, userId) #retrieve the last 20 messages for this devices messageEnvelope = messagesApi.getNormalizedMessagesLast(devices, count = 20) #get the message count from the envelope and the messages count = messageEnvelope.count messages = messageEnvelope.data #get a dict containing the devices ids with an associated device name to show on the html devices = getDeviceIdDict(devicesEnvelope) contextDict = {'active': 'messages', 'count': count, 'messages': messages, 'devicesTypes':devicesTypes, 'devices':devices} return render_to_response("messages.html", contextDict, context)
#!/usr/bin/env python """ The program uses SAMI Python SDK It should be in the root directory of SAMI Python SDK Usage: python exampleGetMessage.py """ deviceID = "YOUR DEVICE ID" deviceToken = "YOUR DEVICE TOKEN" print 'SAMI Python Example -- Get the last normalized message' print '-----------------------' print '' from samiio import ApiClient apiClient = ApiClient(apiKey = deviceToken, apiServer = "https://api.samsungsami.io/v1.1") from MessagesApi import MessagesApi messagesApi = MessagesApi(apiClient) from models import * # Get the latest message: lastNormalizedMessagesEnvelope = messagesApi.getNormalizedMessagesLast(sdids = deviceID, count = 1) print 'Got the last normalized message:' + str(lastNormalizedMessagesEnvelope.data[0].data)
python exampleSendMessage.py """ deviceID = "YOUR DEVICE ID" deviceToken = "YOUR DEVICE TOKEN" print 'SAMI Python example - Send a message to SAMI' print '-----------------------' print '' from samiio import ApiClient apiClient = ApiClient(apiKey=deviceToken, apiServer="https://api.samsungsami.io/v1.1") from MessagesApi import MessagesApi messagesApi = MessagesApi(apiClient) from models import * message = Message.Message() message.sdid = deviceID message.type = "message" # message.data contains the device JSON message # Data below is JSON for the SAMI Demo IPhonePedometer message.data = { 'numberOfSteps': 2000, 'distance': 1.1, 'floorsAscended': 2, 'floorsDescended': 10 }
#!/usr/bin/env python """ The program uses SAMI Python SDK It should be in the root directory of SAMI Python SDK Usage: python exampleGetMessage.py """ deviceID = "YOUR DEVICE ID" deviceToken = "YOUR DEVICE TOKEN" print 'SAMI Python Example -- Get the last normalized message' print '-----------------------' print '' from samiio import ApiClient apiClient = ApiClient(apiKey=deviceToken, apiServer="https://api.samsungsami.io/v1.1") from MessagesApi import MessagesApi messagesApi = MessagesApi(apiClient) from models import * # Get the latest message: lastNormalizedMessagesEnvelope = messagesApi.getNormalizedMessagesLast( sdids=deviceID, count=1) print 'Got the last normalized message:' + str( lastNormalizedMessagesEnvelope.data[0].data)