Skip to content

Instantly share code, notes, and snippets.

@epcnt19
Created June 3, 2018 16:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save epcnt19/fca1be3307fe51bf14dbff6ce8fc9c3b to your computer and use it in GitHub Desktop.
Save epcnt19/fca1be3307fe51bf14dbff6ce8fc9c3b to your computer and use it in GitHub Desktop.
import requests
import time
import json
from datetime import datetime
slacl_server_url = 'https://slack.com/api/'
camera_server_url = 'http://127.0.0.1:8080'
token = 'slack api token'
def PostSlackMsg(msg, channel):
arguments = {
'token': token,
'channel': channel,
'text': msg
}
res = requests.post(slacl_server_url + 'chat.postMessage', arguments)
return res
def PostSlackImg(filename,image,channels):
joined_channels = ','.join(channels)
argments = {
'token':token,
'title':filename,
'channels':joined_channels
}
res = requests.post(slacl_server_url + 'files.upload',params=argments,files={'file':image})
return res
def GetCameraStatus():
camera_server_dect_url = camera_server_url + '/detect'
now = int(time.time())
filename = str(now) + ".png"
data = {'filename':filename}
res = requests.post(camera_server_dect_url,data)
return res
def GetCameraImg(filename):
camera_server_img_url = camera_server_url + '/' + filename
camera_img = requests.get(camera_server_img_url,stream=True)
if camera_img.status_code == 200:
return camera_img.raw
def main():
while True:
res_camera = GetCameraStatus()
res_camera_dict = res_camera.json()[0]
print(res_camera_dict)
if res_camera.status_code == 200:
count = res_camera_dict['count']
filename = res_camera_dict['filename']
camera_status = res_camera_dict['result']
if camera_status == 'success' and int(count) > 0:
camera_img = GetCameraImg(filename)
res_slack_img = PostSlackImg(filename,camera_img,['test_private'])
time.sleep(1)
"""
res_slack_msg = PostSlackMsg('test', 'test_private')
with open('image.jpg','rb') as file:
res_slack_img = PostSlackImg('image.jpg',file.read(),['test_private'])
"""
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment