diff --git a/Pipfile b/Pipfile index 91ef58f..da03e94 100644 --- a/Pipfile +++ b/Pipfile @@ -7,7 +7,7 @@ verify_ssl = true [packages] slackeventsapi = "~=2.1" -slackclient = "~=1.3" +slackclient = "~=2.1" furl = "~=2.0" extruct = "~=0.7" requests = "~=2.21" diff --git a/Pipfile.lock b/Pipfile.lock index 6a6a96f..9355a69 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "420f276f215f2c50e6355955877b328d512e9bbf635476c6674388525f46cc6f" + "sha256": "3aa5fd9e7035e74b00ce038b75ec205ea8047c75d4f517ab47d114b97452a7d9" }, "pipfile-spec": 6, "requires": { @@ -16,6 +16,39 @@ ] }, "default": { + "aiohttp": { + "hashes": [ + "sha256:1ab7ab0a710135133dcc2980dd48fdd92f6f6066b66ef0356f458f395aa375af", + "sha256:1cf5b433a0aa3cf45b0acd4adb14cb20d99166aaa967ab89f629635ac263ca64", + "sha256:27b2bc8ca5555d5dadeee07cc2d6f8c06092c9d9c3f203c79c124d07474d3cf8", + "sha256:315f55a8469284f3ee54534d76f525b5c104dc514999dca4a007524a458aaba2", + "sha256:4f3c1572716ce2c8f22877a8185414ec213c057df35d27f7195f185691828608", + "sha256:635bef0626e28446372511e1fd31585205db2f18dab37a43d8adb30b0483e1bf", + "sha256:6907359de725e7ccd04b458a0f3322c7d1ba78df3df02e2ceb5abb0e21c975e6", + "sha256:772cfc0ff7c088d9e211377951a51c8a5173110cf56214f3e3d08a89be07badc", + "sha256:a91251585acf5203842551e37d2700c13c0bb411fa61b13485ab9e8d2dd400e9", + "sha256:acbbf0c47aa713d7a4baf52f11a356b01b82cabb53da452328546acaa21c6605", + "sha256:af7809ce7de6709afc7770403a70dfdbc4e988c91451108c8e123fac46b870d9", + "sha256:de611d7b95c1067d9a415979c63503dbdc735b943d08779506886614b410644a", + "sha256:e0fe698d1e6a852a27a88d2844a1a63839ee764d7cf214fd58cbea480407cc1d", + "sha256:fa155e309cc2277d6f9d099aecaf3ce78d86a31f5a62a994debc872e4c34ddf4" + ], + "version": "==3.6.0" + }, + "async-timeout": { + "hashes": [ + "sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f", + "sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3" + ], + "version": "==3.0.1" + }, + "attrs": { + "hashes": [ + "sha256:69c0dbf2ed392de1cb5ec704444b08a5ef81680a61cb899dc08127123af36a79", + "sha256:f0b870f674851ecbfbbbd364d6b5cbdff9dcedbc7f3f5e18a6891057f21fe399" + ], + "version": "==19.1.0" + }, "beautifulsoup4": { "hashes": [ "sha256:05668158c7b85b791c5abde53e50265e16f98ad601c402ba44d70f96c4159612", @@ -169,6 +202,40 @@ ], "version": "==1.1.2" }, + "multidict": { + "hashes": [ + "sha256:024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f", + "sha256:041e9442b11409be5e4fc8b6a97e4bcead758ab1e11768d1e69160bdde18acc3", + "sha256:045b4dd0e5f6121e6f314d81759abd2c257db4634260abcfe0d3f7083c4908ef", + "sha256:047c0a04e382ef8bd74b0de01407e8d8632d7d1b4db6f2561106af812a68741b", + "sha256:068167c2d7bbeebd359665ac4fff756be5ffac9cda02375b5c5a7c4777038e73", + "sha256:148ff60e0fffa2f5fad2eb25aae7bef23d8f3b8bdaf947a65cdbe84a978092bc", + "sha256:1d1c77013a259971a72ddaa83b9f42c80a93ff12df6a4723be99d858fa30bee3", + "sha256:1d48bc124a6b7a55006d97917f695effa9725d05abe8ee78fd60d6588b8344cd", + "sha256:31dfa2fc323097f8ad7acd41aa38d7c614dd1960ac6681745b6da124093dc351", + "sha256:34f82db7f80c49f38b032c5abb605c458bac997a6c3142e0d6c130be6fb2b941", + "sha256:3d5dd8e5998fb4ace04789d1d008e2bb532de501218519d70bb672c4c5a2fc5d", + "sha256:4a6ae52bd3ee41ee0f3acf4c60ceb3f44e0e3bc52ab7da1c2b2aa6703363a3d1", + "sha256:4b02a3b2a2f01d0490dd39321c74273fed0568568ea0e7ea23e02bd1fb10a10b", + "sha256:4b843f8e1dd6a3195679d9838eb4670222e8b8d01bc36c9894d6c3538316fa0a", + "sha256:5de53a28f40ef3c4fd57aeab6b590c2c663de87a5af76136ced519923d3efbb3", + "sha256:61b2b33ede821b94fa99ce0b09c9ece049c7067a33b279f343adfe35108a4ea7", + "sha256:6a3a9b0f45fd75dc05d8e93dc21b18fc1670135ec9544d1ad4acbcf6b86781d0", + "sha256:76ad8e4c69dadbb31bad17c16baee61c0d1a4a73bed2590b741b2e1a46d3edd0", + "sha256:7ba19b777dc00194d1b473180d4ca89a054dd18de27d0ee2e42a103ec9b7d014", + "sha256:7c1b7eab7a49aa96f3db1f716f0113a8a2e93c7375dd3d5d21c4941f1405c9c5", + "sha256:7fc0eee3046041387cbace9314926aa48b681202f8897f8bff3809967a049036", + "sha256:8ccd1c5fff1aa1427100ce188557fc31f1e0a383ad8ec42c559aabd4ff08802d", + "sha256:8e08dd76de80539d613654915a2f5196dbccc67448df291e69a88712ea21e24a", + "sha256:c18498c50c59263841862ea0501da9f2b3659c00db54abfbf823a80787fde8ce", + "sha256:c49db89d602c24928e68c0d510f4fcf8989d77defd01c973d6cbe27e684833b1", + "sha256:ce20044d0317649ddbb4e54dab3c1bcc7483c78c27d3f58ab3d0c7e6bc60d26a", + "sha256:d1071414dd06ca2eafa90c85a079169bfeb0e5f57fd0b45d44c092546fcd6fd9", + "sha256:d3be11ac43ab1a3e979dac80843b42226d5d3cccd3986f2e03152720a4297cd7", + "sha256:db603a1c235d110c860d5f39988ebc8218ee028f07a7cbc056ba6424372ca31b" + ], + "version": "==4.5.2" + }, "orderedmultidict": { "hashes": [ "sha256:04070bbb5e87291cc9bfa51df413677faf2141c73c61d2a5f7b26bea3cd882ad", @@ -220,10 +287,11 @@ }, "slackclient": { "hashes": [ - "sha256:2623a76d9b94671d34c258366a1b726ba6e9499931bf1e515e4a61fea9855445" + "sha256:ed0f60dd5a646b4ccd31ec1f11503b8689850894681e6baae2bc06b941fc1c58", + "sha256:eeb0dad774f6661f7504d80d8a22deadadb941b840e7a0719b5b92d4d84f9015" ], "index": "pypi", - "version": "==1.3.2" + "version": "==2.1.0" }, "slackeventsapi": { "hashes": [ @@ -260,19 +328,28 @@ ], "version": "==0.5.1" }, - "websocket-client": { - "hashes": [ - "sha256:8c8bf2d4f800c3ed952df206b18c28f7070d9e3dcbd6ca6291127574f57ee786", - "sha256:e51562c91ddb8148e791f0155fdb01325d99bb52c4cdbb291aee7a3563fd0849" - ], - "version": "==0.54.0" - }, "werkzeug": { "hashes": [ "sha256:00d32beac38fcd48d329566f80d39f10ec2ed994efbecfb8dd4b320062d05902", "sha256:0a24d43be6a7dce81bae05292356176d6c46d63e42a0dd3f9504b210a9cfaa43" ], "version": "==0.15.6" + }, + "yarl": { + "hashes": [ + "sha256:024ecdc12bc02b321bc66b41327f930d1c2c543fa9a561b39861da9388ba7aa9", + "sha256:2f3010703295fbe1aec51023740871e64bb9664c789cba5a6bdf404e93f7568f", + "sha256:3890ab952d508523ef4881457c4099056546593fa05e93da84c7250516e632eb", + "sha256:3e2724eb9af5dc41648e5bb304fcf4891adc33258c6e14e2a7414ea32541e320", + "sha256:5badb97dd0abf26623a9982cd448ff12cb39b8e4c94032ccdedf22ce01a64842", + "sha256:73f447d11b530d860ca1e6b582f947688286ad16ca42256413083d13f260b7a0", + "sha256:7ab825726f2940c16d92aaec7d204cfc34ac26c0040da727cf8ba87255a33829", + "sha256:b25de84a8c20540531526dfbb0e2d2b648c13fd5dd126728c496d7c3fea33310", + "sha256:c6e341f5a6562af74ba55205dbd56d248daf1b5748ec48a0200ba227bb9e33f4", + "sha256:c9bb7c249c4432cd47e75af3864bc02d26c9594f49c82e2a28624417f0ae63b8", + "sha256:e060906c0c585565c718d1c3841747b61c5439af2211e185f6739a9412dfbde1" + ], + "version": "==1.3.0" } }, "develop": {} diff --git a/eggberg.py b/eggberg.py index 41b2361..807a2be 100755 --- a/eggberg.py +++ b/eggberg.py @@ -5,7 +5,7 @@ Detta är ELAB:s Slack-app. Den har för närvarande i uppgift att göra "affiliate links" av Banggood-länkar. """ from slackeventsapi import SlackEventAdapter -from slackclient import SlackClient +from slack import WebClient import os import json from furl import furl @@ -79,10 +79,10 @@ slack_signing_secret = os.environ['SLACK_SIGNING_SECRET'] slack_events_adapter = SlackEventAdapter(slack_signing_secret, '/slack-eggberg/events') -# Create a SlackClient for your bot to use for Web API requests +# Create a WebClient for your bot to use for Web API requests # Slack token börjar med "xoxp-". token = os.environ['SLACK_TOKEN'] -slack_client = SlackClient(token) +slack_client = WebClient(token) # Prenumerera på eventet `link_shared`. @@ -93,10 +93,9 @@ def link_shared(event_data): unfurls = json.dumps({url: unfurl(make_affiliate(url)) for url in urls}) - slack_client.api_call('chat.unfurl', - channel=event_data['event']['channel'], - ts=event_data['event']['message_ts'], - unfurls=unfurls) + slack_client.chat_unfurl(channel=event_data['event']['channel'], + ts=event_data['event']['message_ts'], + unfurls=unfurls) # Sätt locale (för att få komma som decimaltecken).