Allow custom hipchat urls
This commit is contained in:
parent
3b710005ad
commit
bf42535341
1 changed files with 13 additions and 6 deletions
|
@ -54,6 +54,13 @@ options:
|
|||
default: 'yes'
|
||||
choices: ['yes', 'no']
|
||||
version_added: 1.5.1
|
||||
api:
|
||||
description:
|
||||
- API url if using a self-hosted hipchat server
|
||||
required: false
|
||||
default: 'https://api.hipchat.com/v1/rooms/message'
|
||||
version_added: 1.6.0
|
||||
|
||||
|
||||
# informational: requirements for nodes
|
||||
requirements: [ urllib, urllib2 ]
|
||||
|
@ -68,11 +75,8 @@ EXAMPLES = '''
|
|||
# HipChat module specific support methods.
|
||||
#
|
||||
|
||||
MSG_URI = "https://api.hipchat.com/v1/rooms/message?"
|
||||
|
||||
|
||||
def send_msg(module, token, room, msg_from, msg, msg_format='text',
|
||||
color='yellow', notify=False):
|
||||
color='yellow', notify=False, api='https://api.hipchat.com/v1/rooms/message'):
|
||||
'''sending message to hipchat'''
|
||||
|
||||
params = {}
|
||||
|
@ -81,13 +85,14 @@ def send_msg(module, token, room, msg_from, msg, msg_format='text',
|
|||
params['message'] = msg
|
||||
params['message_format'] = msg_format
|
||||
params['color'] = color
|
||||
params['api'] = api
|
||||
|
||||
if notify:
|
||||
params['notify'] = 1
|
||||
else:
|
||||
params['notify'] = 0
|
||||
|
||||
url = MSG_URI + "auth_token=%s" % (token)
|
||||
url = api + "?auth_token=%s" % (token)
|
||||
data = urllib.urlencode(params)
|
||||
response, info = fetch_url(module, url, data=data)
|
||||
if info['status'] == 200:
|
||||
|
@ -113,6 +118,7 @@ def main():
|
|||
msg_format=dict(default="text", choices=["text", "html"]),
|
||||
notify=dict(default=True, type='bool'),
|
||||
validate_certs = dict(default='yes', type='bool'),
|
||||
api = dict(default='https://api.hipchat.com/v1/rooms/message'),
|
||||
),
|
||||
supports_check_mode=True
|
||||
)
|
||||
|
@ -124,9 +130,10 @@ def main():
|
|||
color = module.params["color"]
|
||||
msg_format = module.params["msg_format"]
|
||||
notify = module.params["notify"]
|
||||
api = module.params["api"]
|
||||
|
||||
try:
|
||||
send_msg(module, token, room, msg_from, msg, msg_format, color, notify)
|
||||
send_msg(module, token, room, msg_from, msg, msg_format, color, notify, api)
|
||||
except Exception, e:
|
||||
module.fail_json(msg="unable to sent msg: %s" % e)
|
||||
|
||||
|
|
Loading…
Reference in a new issue