64 lines
1.8 KiB
Python
64 lines
1.8 KiB
Python
from slack_sdk import WebClient
|
|
from slack_sdk.errors import SlackApiError
|
|
from datetime import datetime
|
|
|
|
|
|
class SlackBot:
|
|
BOT_TOKEN = None
|
|
CHANNEL_ID = None
|
|
client = None
|
|
|
|
def __init__(self):
|
|
# family
|
|
# self.BOT_TOKEN = "xoxb-1214605084611-4694289701799-1lCW10baLrihe60DvW1oZ32V"
|
|
# self.CHANNEL_ID = "C021KN0GG94"
|
|
|
|
# ncue
|
|
self.BOT_TOKEN = "xoxb-305350122625-5129491733572-JsBui5wmj7bBoSibRvtz1trj"
|
|
self.CHANNEL_ID = "C03TNCAHQHE"
|
|
self.client = WebClient(token=self.BOT_TOKEN)
|
|
|
|
return
|
|
|
|
def post_to_slack(self, stock_code, stock_name, type, price, count):
|
|
try:
|
|
this_time = datetime.now()
|
|
text = "DATE TIME:" + this_time.strftime('%Y-%m-%d %H:%M:%S') + ", " + "stock_code:" + stock_code + ", " + "stock_name:" + stock_name + ", " + "type:" + type + ", " + "price:" + str(price) + ", " + "count:" + str(count)
|
|
result = self.client.chat_postMessage(
|
|
channel=self.CHANNEL_ID,
|
|
text=text
|
|
)
|
|
print(text)
|
|
|
|
except SlackApiError as e:
|
|
print(f"Error posting message: {e}")
|
|
|
|
return
|
|
|
|
def sendMsg(self, msg):
|
|
try:
|
|
this_time = datetime.now()
|
|
text = "DATE TIME:" + this_time.strftime('%Y-%m-%d %H:%M:%S') + ", " + "msg:" + msg
|
|
result = self.client.chat_postMessage(
|
|
channel=self.CHANNEL_ID,
|
|
text=text
|
|
)
|
|
print(text)
|
|
|
|
except SlackApiError as e:
|
|
print(f"Error posting message: {e}")
|
|
|
|
return
|
|
|
|
|
|
if __name__ == "__main__":
|
|
this_time = datetime.now()
|
|
stock_code = "252670"
|
|
stock_name = "x2"
|
|
type = "BUY"
|
|
price = 2000
|
|
count = 2
|
|
|
|
slackBot = SlackBot()
|
|
slackBot.post_to_slack(stock_code, stock_name, type, price, count)
|