65 lines
1.8 KiB
Python
Executable File
65 lines
1.8 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
import odoorpc
|
|
import os
|
|
from urllib.parse import urlparse
|
|
|
|
url = os.environ.get('ODOO_URL') or 'http://localhost:8069'
|
|
db = os.environ.get('ODOO_DATABASE') or 'odoo'
|
|
username = os.getenv('ODOO_USERNAME') or 'admin'
|
|
password = os.environ.get('ODOO_PASSWORD') or 'admin'
|
|
|
|
# Prepare the connection to the server
|
|
url = urlparse(url)
|
|
if url.scheme == 'https':
|
|
protocol = 'jsonrpc+ssl'
|
|
port = 443
|
|
if url.scheme == 'http':
|
|
protocol = 'jsonrpc'
|
|
port = 80
|
|
odoo = odoorpc.ODOO(url.hostname, protocol=protocol, port=(url.port or port))
|
|
|
|
# Check available databases
|
|
print(odoo.db.list())
|
|
|
|
# Login
|
|
odoo.login(db, username, password)
|
|
|
|
# Current user
|
|
user = odoo.env.user
|
|
print(user.name) # name of the user connected
|
|
print(user.company_id.name) # the name of its company
|
|
|
|
# import json
|
|
# import os
|
|
# import random
|
|
# import urllib.request
|
|
# import getpass
|
|
|
|
# url = os.environ.get('ODOO_URL') or 'http://localhost:8069'
|
|
# db = os.environ.get('ODOO_DATABASE') or 'odoo'
|
|
# username = os.getenv('ODOO_USERNAME') or 'admin'
|
|
# password = os.environ.get('ODOO_PASSWORD') or 'admin'
|
|
|
|
# def json_rpc(url, method, params):
|
|
# data = {
|
|
# "jsonrpc": "2.0",
|
|
# "method": method,
|
|
# "params": params,
|
|
# "id": random.randint(0, 1000000000),
|
|
# }
|
|
# req = urllib.request.Request(url=url, data=json.dumps(data).encode(), headers={
|
|
# "Content-Type":"application/json",
|
|
# })
|
|
# reply = json.loads(urllib.request.urlopen(req).read().decode('UTF-8'))
|
|
# if reply.get("error"):
|
|
# raise Exception(reply["error"])
|
|
# return reply["result"]
|
|
|
|
# def call(url, service, method, *args):
|
|
# return json_rpc(url, "call", {"service": service, "method": method, "args": args})
|
|
|
|
# url = url + "/jsonrpc"
|
|
# uid = call(url, "common", "login", db, username, password)
|
|
|
|
# print(f'Success! uid is {uid}') |