A set of tools to ease the execution of 3GPP meetings
The purpose of this project is to facilitate the actual work of 3GPP SA2 delegates by automating certain repetitive tasks caused by the meeting procedures. This includes:
- Searching of TDocs in the folder structure combining web locations, a local repository and a local inbox folder where contributions are uploaded on-the-fly
- Searching of the last agenda file in the meeting folder structure (both local and remote)
- Caching TDocs for offline use/review in an ordered local file structure
- Merging of TDoc comments from different colleagues to form a consolidated list that can be used by the delegate during the meeting
- Automaticly sorting of eMeeting and email approval emails by Agenda Item
- Comparing of different TDoc revisions during offline meetings
- Caching of specification files including conversion to PDF format so that opening a big specification does not block Word (and hence any opened TDoc)
- Changing of the author name for document changes for an active Word Document
- Export of TDoc lists to an Excel file
- Export of CR cover pages to an Excel file
- Introduction
- Installation
- Installing Python
- Installing dependencies
- Installing the tricky libraries before running pip
- Configuring your firewall
- Running
Small Python application designed to make life easier for 3GPP SA2 delegates.
The program is written in Python. It should work on Python 3.7 and higher. The basic requirement is that you have Python installed and you then install the application dependencies.
The application should work both in the 3GPP WLAN, Internet and corporate network (as long as you know the HTTP proxy configuration).
Go to python.org and download the latest version of Python (3.8 as of the time this document was written).
I would recommend that you select "add Python to PATH" so that you call python by simply using the python
command on the console, but that is up to you.
While techncially, if you have the proper environment, you could download all of them by going to the folder where you saved the application and running pip install -r requirements.txt
, in practice some libraries may be a bit tricky to install if you do not have a developer environment (which I assume you don't).
Also, since the application has code to generate Word/Excel/Outlook calls via COM, you will need pywin32 for your Python release (e.g. Python 3.8 32-bit).
If the installation of some libraries failed, you most probably need to install pre-compiled libraries for some of the dependencies. Luckily, you can find all of them also in Wheel (precompiled) form.
For each of the libraries, download the correct Wheel file. e.g. for numpy, if you installed Python 3.8 32-bit, you should download numpy‑1.17.3+mkl‑cp38‑cp38‑win32.whl
. Typically, there is a wheel file matching your architecture.
For each downloaded file, run pip install <wheel file>
, e.g. pip install numpy‑1.17.3+mkl‑cp38‑cp38‑win32.whl
.
Be sure to install numpy before pandas, as pandas depends on numpy.
Be sure to allow python
to perform outbound connections
Run python _3GPP_Meeting_Helper.py
to start the GUI. It should start by asking you whether you want to use an HTTP proxy or not.
It has been seen that sometimes some firewall issues happen, in which case the application may not run properly. In order to check whether Python has Internet access (not a proxy check, just whether it can do HTTP requests), you can run python
and once you are in the Python prompt, use the following code:
import requests
requests.get('http://www.3gpp.org/ftp/Meetings_3GPP_SYNC/SA2/TdocsByAgenda.htm')
You should get a "(Response [200])
string (maybe another response code if the file does not exist, which it did at the time this was written) and not a long list of exceptions. If the latter is the case, this means that the HTTP request could not reach the server.
Select the meeting from the drop-down list, input the TDoc number (e.g. S2-2004143) and press the button to download and open the TDoc.
The TDoc will be searched for in the Docs
folder, as well as in the local inbox if you find yourself in the meeting premises (detected by the 10.10.10.XX
IP address range allocated during the meeting).
Note: for eMeetings, you can also search for specific revisions, e.g. S2-2004143r01. In this case, the Docs/Revisions
folder is used.