|
|
|
@ -95,7 +95,7 @@ class NotifyWebexTeams(NotifyBase):
|
|
|
|
|
service_url = 'https://webex.teams.com/'
|
|
|
|
|
|
|
|
|
|
# The default secure protocol
|
|
|
|
|
secure_protocol = 'wxteams'
|
|
|
|
|
secure_protocol = ('wxteams', 'webex')
|
|
|
|
|
|
|
|
|
|
# A URL that takes you to the setup/help of the specific protocol
|
|
|
|
|
setup_url = 'https://github.com/caronc/apprise/wiki/Notify_wxteams'
|
|
|
|
@ -124,7 +124,7 @@ class NotifyWebexTeams(NotifyBase):
|
|
|
|
|
'type': 'string',
|
|
|
|
|
'private': True,
|
|
|
|
|
'required': True,
|
|
|
|
|
'regex': (r'^[a-z0-9]{80}$', 'i'),
|
|
|
|
|
'regex': (r'^[a-z0-9]{80,160}$', 'i'),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
@ -220,7 +220,7 @@ class NotifyWebexTeams(NotifyBase):
|
|
|
|
|
params = self.url_parameters(privacy=privacy, *args, **kwargs)
|
|
|
|
|
|
|
|
|
|
return '{schema}://{token}/?{params}'.format(
|
|
|
|
|
schema=self.secure_protocol,
|
|
|
|
|
schema=self.secure_protocol[0],
|
|
|
|
|
token=self.pprint(self.token, privacy, safe=''),
|
|
|
|
|
params=NotifyWebexTeams.urlencode(params),
|
|
|
|
|
)
|
|
|
|
@ -249,14 +249,15 @@ class NotifyWebexTeams(NotifyBase):
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
result = re.match(
|
|
|
|
|
r'^https?://api\.ciscospark\.com/v[1-9][0-9]*/webhooks/incoming/'
|
|
|
|
|
r'^https?://(api\.ciscospark\.com|webexapis\.com)'
|
|
|
|
|
r'/v[1-9][0-9]*/webhooks/incoming/'
|
|
|
|
|
r'(?P<webhook_token>[A-Z0-9_-]+)/?'
|
|
|
|
|
r'(?P<params>\?.+)?$', url, re.I)
|
|
|
|
|
|
|
|
|
|
if result:
|
|
|
|
|
return NotifyWebexTeams.parse_url(
|
|
|
|
|
'{schema}://{webhook_token}/{params}'.format(
|
|
|
|
|
schema=NotifyWebexTeams.secure_protocol,
|
|
|
|
|
schema=NotifyWebexTeams.secure_protocol[0],
|
|
|
|
|
webhook_token=result.group('webhook_token'),
|
|
|
|
|
params='' if not result.group('params')
|
|
|
|
|
else result.group('params')))
|
|
|
|
|