webex-bot 1.0.1__py2.py3-none-any.whl → 1.0.3__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
webex_bot/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  """Top-level package for Webex Bot."""
2
2
 
3
3
  __author__ = """Finbarr Brady"""
4
- __version__ = '1.0.1'
4
+ __version__ = '1.0.3'
webex_bot/webex_bot.py CHANGED
@@ -23,9 +23,9 @@ class WebexBot(WebexWebsocketClient):
23
23
 
24
24
  def __init__(self,
25
25
  teams_bot_token,
26
- approved_users=[],
27
- approved_domains=[],
28
- approved_rooms=[],
26
+ approved_users=None,
27
+ approved_domains=None,
28
+ approved_rooms=None,
29
29
  include_demo_commands=False,
30
30
  bot_name="Webex Bot",
31
31
  bot_help_subtitle="Here are my available commands. Click one to begin.",
@@ -61,11 +61,12 @@ class WebexBot(WebexWebsocketClient):
61
61
  on_card_action=self.process_incoming_card_action,
62
62
  proxies=proxies)
63
63
 
64
+ me = self.get_me_info()
64
65
  if help_command is None:
65
66
  self.help_command = HelpCommand(
66
67
  bot_name=bot_name,
67
68
  bot_help_subtitle=bot_help_subtitle,
68
- bot_help_image=self.teams.people.me().avatar)
69
+ bot_help_image=me.avatar)
69
70
  else:
70
71
  self.help_command = help_command
71
72
 
@@ -83,12 +84,11 @@ class WebexBot(WebexWebsocketClient):
83
84
  self.help_command.commands = self.commands
84
85
 
85
86
  self.card_callback_commands = {}
86
- self.approved_users = approved_users
87
- self.approved_domains = approved_domains
88
- self.approved_rooms = approved_rooms
87
+ self.approved_users = approved_users if approved_users is not None else []
88
+ self.approved_domains = approved_domains if approved_domains is not None else []
89
+ self.approved_rooms = approved_rooms if approved_rooms is not None else []
89
90
  self.approval_parameters_check()
90
91
  self.bot_display_name = ""
91
- self.get_me_info()
92
92
  self.threads = threads
93
93
 
94
94
  @backoff.on_exception(backoff.expo, requests.exceptions.ConnectionError)
@@ -100,6 +100,7 @@ class WebexBot(WebexWebsocketClient):
100
100
  self.bot_display_name = me.displayName
101
101
  log.info(f"Running as {me.type} '{me.displayName}' with email {me.emails}")
102
102
  log.debug(f"Running as bot '{me}'")
103
+ return me
103
104
 
104
105
  def add_command(self, command_class: Command):
105
106
  """
@@ -51,6 +51,8 @@ class WebexWebsocketClient(object):
51
51
  self.tracking_id = f"webex-bot_{uuid.uuid4()}"
52
52
  self.session = requests.Session()
53
53
  self.session.headers = self._get_headers()
54
+ sdk_ua = self.teams._session.headers["User-Agent"]
55
+ self.teams._session.update_headers(self._get_headers(add_to_ua=f" ({sdk_ua})"))
54
56
  # log the tracking ID
55
57
  logger.info(f"Tracking ID: {self.tracking_id}")
56
58
  self.device_info = None
@@ -67,10 +69,11 @@ class WebexWebsocketClient(object):
67
69
  if proxy_connect is None:
68
70
  raise ImportError("Failed to load libraries for proxy, maybe forgot [proxy] option during installation.")
69
71
 
70
- def _get_headers(self):
72
+ def _get_headers(self, add_to_ua=''):
71
73
  return {
72
74
  "Authorization": f"Bearer {self.access_token}",
73
- "User-Agent": f"webex_bot/{__version__}",
75
+ "Content-type": "application/json;charset=utf-8",
76
+ "User-Agent": f"webex_bot/{__version__}{add_to_ua}",
74
77
  "trackingid": self.tracking_id
75
78
  }
76
79
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: webex_bot
3
- Version: 1.0.1
3
+ Version: 1.0.3
4
4
  Summary: Python package for a Webex Bot based on websockets.
5
5
  Home-page: https://github.com/fbradyirl/webex_bot
6
6
  Author: Finbarr Brady
@@ -447,9 +447,10 @@ bot = WebexBot(teams_bot_token=os.getenv("WEBEX_ACCESS_TOKEN")
447
447
 
448
448
  * Fix for [issue #48][i48] - Fix for `Commands not being received` issue.
449
449
 
450
- ### 1.0.1 (2025-Jun-04)
450
+ ### 1.0.3 (2025-Jun-04)
451
451
 
452
452
  * Add connection headers to requests.
453
+ * Only call me people API once per run.
453
454
 
454
455
  [1]: https://github.com/aaugustin/websockets
455
456
 
@@ -1,7 +1,7 @@
1
- webex_bot/__init__.py,sha256=Ba94OAcUVxOZ9CT2e5BJD6f23esc-61Npra1Kos2f1I,95
1
+ webex_bot/__init__.py,sha256=wj46dBgRfdEfusELHz-gJWhMLFfmxqYol-gbZF8c9qY,95
2
2
  webex_bot/exceptions.py,sha256=qs9yVitfJtvxwBMC8uCvTDOxUQ_oZjWFf1dU8Oaue14,740
3
3
  webex_bot/formatting.py,sha256=jvPKym-z8CIJygpPVTVbt6vFXQo9_HQHpRDJB-nh-SI,382
4
- webex_bot/webex_bot.py,sha256=np5uGnVJc-l9jrbD9UPeoZU5JeuD8THLWd6Ml9HTlJ4,21153
4
+ webex_bot/webex_bot.py,sha256=QRia8QBXnWNt6iwj1kfpcWgPi7RT_DoQfqtdUUbsUTo,21278
5
5
  webex_bot/cards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  webex_bot/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  webex_bot/commands/echo.py,sha256=STY-MikBRjUteDK-g8G4GPB0V-Yi7siPN1DRMXrT-QU,3399
@@ -10,9 +10,9 @@ webex_bot/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
10
10
  webex_bot/models/command.py,sha256=MyThlDaEkGlj1fDE_i_wr79O3QboakimRme8yI744yo,5327
11
11
  webex_bot/models/response.py,sha256=d4k2ohR5SUVzvuQzcnm7jQQVTMB0gH9Kz9y09vkoAaU,2545
12
12
  webex_bot/websockets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- webex_bot/websockets/webex_websocket_client.py,sha256=v9fljWBqJKytu9KjXU6Av_zRFF6IQocTTv34TmHqeZ4,12279
14
- webex_bot-1.0.1.dist-info/licenses/LICENSE,sha256=93eGb10xmgkBP2Fh_n0E9YDXe0c0oz-FsnAimXG0S4Y,1072
15
- webex_bot-1.0.1.dist-info/METADATA,sha256=8Nii561-A21ZzTitu9VuzlhGl4Q0_-FETcKlUIW8qZI,14654
16
- webex_bot-1.0.1.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
17
- webex_bot-1.0.1.dist-info/top_level.txt,sha256=q1Y0RtYYinR7oXSwL93cK59c2KN_CbMVca8MLWeF63M,10
18
- webex_bot-1.0.1.dist-info/RECORD,,
13
+ webex_bot/websockets/webex_websocket_client.py,sha256=9V5y6yFSoXggaDVjCU6UfQjQKDNLsk6c1vhN8At-2as,12513
14
+ webex_bot-1.0.3.dist-info/licenses/LICENSE,sha256=93eGb10xmgkBP2Fh_n0E9YDXe0c0oz-FsnAimXG0S4Y,1072
15
+ webex_bot-1.0.3.dist-info/METADATA,sha256=zyqdimzCG4GD9BHKkbnsDkZ9Q6VE_JCWE8-34mt4Dq4,14694
16
+ webex_bot-1.0.3.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
17
+ webex_bot-1.0.3.dist-info/top_level.txt,sha256=q1Y0RtYYinR7oXSwL93cK59c2KN_CbMVca8MLWeF63M,10
18
+ webex_bot-1.0.3.dist-info/RECORD,,