03-30-2020 08:39 AM - edited 03-30-2020 03:16 PM
Hello,
I am developing with Python and AXL API, i have trouble connection to CUCM AXL API Call Manager the issue is:
Code:
# -*- coding: utf-8 -*- from zeep import Client from zeep.cache import SqliteCache from zeep.transports import Transport from zeep.exceptions import Fault from zeep.plugins import HistoryPlugin from requests import Session from requests.auth import HTTPBasicAuth from urllib3 import disable_warnings from urllib3.exceptions import InsecureRequestWarning from lxml import etree disable_warnings(InsecureRequestWarning) username = 'admon' password = 'ciscopsdt' # If you're not disabling SSL verification, host should be the FQDN of the server rather than IP host = '10.10.20.1' #wsdl = 'file://C:/Development/Resources/axlsqltoolkit/schema/current/AXLAPI.wsdl' wsdl = 'file://C:/Users/HIBARRAR/Documents/SoftM/Cisco DevNet/API CUCM Call Manager/axlsqltoolkit/schema/11.5/AXLAPI.wsdl' location = 'https://{host}:8443/axl/'.format(host = host) binding = "{http://www.cisco.com/AXLAPIService/}AXLAPIBinding" # Create a custom session to disable Certificate verification. # In production you shouldn't do this, # but for testing it saves having to have the certificate in the trusted store. session = Session() session.verify = False session.auth = HTTPBasicAuth(username, password) transport = Transport(cache = SqliteCache(), session = session, timeout = 20) history = HistoryPlugin() client = Client(wsdl = wsdl, transport = transport, plugins = [history]) service = client.create_service(binding, location) def show_history(): for item in [history.last_sent, history.last_received]: print(etree.tostring(item["envelope"], encoding="unicode", pretty_print=True)) try: resp = service.listPhone(searchCriteria={'name': '%'}, returnedTags={'name': '', 'description': ''}) print(resp) except Fault: show_history()
Result:
HTTPSConnectionPool(host='XXX.XXX.XXX.XXX, port=8443):
Max retries exceeded with url: /axl/
(Caused by ProxyError('Cannot connect to proxy.',
OSError('Tunnel connection failed: 502 Tunnel Connection Failed')))
04-01-2020 07:04 AM
Hi,
There could be many reasons for 502 errors like, server might not be reachable from the client, or it might not be able to resolve the server address(FQDN) and so on.
I could find the below link, hope that would give you some ideas in troubleshooting your problem,
Regards,
04-06-2020 01:52 PM
Trying your code above just now on my PC, seems to work...perhaps something in the environment..?:
Ubuntu 19.10
Python 3.7.5
Python libraries:
appdirs==1.4.3
attrs==19.3.0
cached-property==1.5.1
certifi==2020.4.5.1
chardet==3.0.4
defusedxml==0.6.0
idna==2.9
isodate==0.6.0
lxml==4.5.0
pkg-resources==0.0.0
pytz==2019.3
requests==2.23.0
requests-toolbelt==0.9.1
six==1.14.0
urllib3==1.25.8
zeep==3.4.0
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide