SORACOM Beam을 사용하여 SAP Cloud Platform으로 데이터 전송

※2019년 7월 현재, SAP CP의 NEO 환경의 IoT 서비스는 이용할 수 없게 되어 있습니다.

목적



SORACOM 서비스인 SORACOM Beam을 사용하여 SAP Cloud Platform의 IoT 서비스로 데이터를 전송합니다.

※자세한 것은 이하의 블로그를 참조
SORACOM Beam을 사용하여 SAP Cloud Platform으로 데이터 전송

절차



①SAP Cloud Platform의 IoT 서비스 설정
②SORACOM Beam 설정
③Python 파일 작성/실행
④ 전송된 데이터 확인

절차 ① SAP Cloud Platform의 IoT 서비스 설정



SAP Cloud Platform에 로그인.

Cloud Platform Cockpit에서 '사물 인터넷' 선택
서비스가 유효한지 확인하고 서비스로 이동을 선택합니다.
메시지 유형, 장치 유형 및 장치를 순서대로 등록

②SORACOM Beam 설정



SORACOM 관리 콘솔에서 SORACOM Beam 설정
※「HTTP 엔트리 포인트」를 사용



파란 선 부분은 임의의 문자열로.

호스트 이름은 "iotmms(SAP CP 계정 ID).hanatrial.ondemand.com"
※ 내 SAP CP 계정은 평가판 계정이므로 "~trial"

경로는 "/com.sap.iotservices.mms/v1/api/http/data/(장치 ID)"

이것으로 완료. 아래 빨간색 테두리가 진입점


③Python 파일 작성/실행



beamscpiot.py
import time 
import json 
import datetime 
import urllib3 

#SAP CP 
#oAuth Device
oauth_credentials = (デバイスのトークン) 

#Message Type ID
message_type_id = (メッセージタイプID)

#URL
http = urllib3.PoolManager() 
headers = urllib3.util.make_headers(user_agent=None) 
headers['Authorization'] = 'Bearer ' + oauth_credentials 
headers['Content-Type'] = 'application/json;charset=utf-8' 

url = 'http://beam.soracom.io:8888/scpiot'
urllib3.disable_warnings() 


#send data
timestamp = int(time.time())
value = 'Python to SCP IoT test(SORACOM Beam)'

body = '{"mode":"sync", "messageType":"' + str(message_type_id) + '", "messages":[{"timestamp":'+ ' "' + str(timestamp) + '"'+ ', "value":'+ ' "' +  str(value) + '"'+ ' }]}' 
r = http.urlopen('POST', url, body=body, headers=headers) 

print(body) 
print(r.data) 

RaspberryPi 측에서 "beamscpiot.py"를 실행.

④ 전송된 데이터 확인



메시지 관리 서비스 조종석에서 데이터 확인
'저장된 메시지 표시'를 선택합니다.

다음 명칭으로 테이블이 생성되었습니다.
T_IOT_ (메시지 유형 ID)

제출한 데이터가 등록되었는지 확인

좋은 웹페이지 즐겨찾기