conferencetimer


Nameconferencetimer JSON
Version 1.0.2 PyPI version JSON
download
home_pageNone
SummaryPyQt6 based timer and remote application for conference talks
upload_time2025-08-12 08:34:33
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseNone
keywords conference timer pyqt6
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Conference Timer

This project provides a timer and a remote PyQt6 application for a conference timer.
The talk and questions times can be set and the timer will provide the speakers with the remaining time.

After installing the package you can run the timer via
```bash
ctimer
```
and the remote via
```bash
cremote
```

Add the *-h* flag to see the allowed command line arguments.


Alternatively, you can start the timer via python
```python
import conferencetimer
conferencetimer.start_timer()
```
and accordingly the remote via

```python
import conferencetimer
conferencetimer.start_remote()
```

If you want to use the remote from a different computer, make sure that both computers are in the same network and that your firewall is configured accordingly.

## Remote

The remote functionality is based on a small tcp server which expects a json dictionary with *command* being one of the following:

- *startpause* (toggle between running and pause)
- *reset* (resetting the timer, if *talk* and *qna* are specified the time for the talk and the questions is set respectively)
- *adjust* (adds or subtracts time specified by *delta* from the timer)
- *fullscreen* (toggles fullscreen)

### Unix systems

You can also control the timer app via the command line with netcat:

```bash
echo '{"command": "startpause"}' | nc 127.0.0.1 5555
echo '{"command": "reset", "talk": 30, "qna": 15}' | nc 127.0.0.1 5555
```

### Windows Powershell Example

A small example script to control the timer app via the powershell:

```powershell
$payload = '{"command":"start"}'
$ip = "192.168.1.50"
$port = 5555
$client = New-Object System.Net.Sockets.TcpClient($ip, $port)
$stream = $client.GetStream()
$writer = New-Object System.IO.StreamWriter($stream)
$writer.Write($payload)
$writer.Flush()
$writer.Close()
$client.Close()
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "conferencetimer",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "Conference, Timer, PyQt6",
    "author": null,
    "author_email": "Luis Bonah <bonah@ph1.uni-koeln.de>",
    "download_url": "https://files.pythonhosted.org/packages/ed/5e/2b3f85f9cd449b0a7824c148347077c74f821e6f8e8e9978b4de45a03bca/conferencetimer-1.0.2.tar.gz",
    "platform": null,
    "description": "# Conference Timer\n\nThis project provides a timer and a remote PyQt6 application for a conference timer.\nThe talk and questions times can be set and the timer will provide the speakers with the remaining time.\n\nAfter installing the package you can run the timer via\n```bash\nctimer\n```\nand the remote via\n```bash\ncremote\n```\n\nAdd the *-h* flag to see the allowed command line arguments.\n\n\nAlternatively, you can start the timer via python\n```python\nimport conferencetimer\nconferencetimer.start_timer()\n```\nand accordingly the remote via\n\n```python\nimport conferencetimer\nconferencetimer.start_remote()\n```\n\nIf you want to use the remote from a different computer, make sure that both computers are in the same network and that your firewall is configured accordingly.\n\n## Remote\n\nThe remote functionality is based on a small tcp server which expects a json dictionary with *command* being one of the following:\n\n- *startpause* (toggle between running and pause)\n- *reset* (resetting the timer, if *talk* and *qna* are specified the time for the talk and the questions is set respectively)\n- *adjust* (adds or subtracts time specified by *delta* from the timer)\n- *fullscreen* (toggles fullscreen)\n\n### Unix systems\n\nYou can also control the timer app via the command line with netcat:\n\n```bash\necho '{\"command\": \"startpause\"}' | nc 127.0.0.1 5555\necho '{\"command\": \"reset\", \"talk\": 30, \"qna\": 15}' | nc 127.0.0.1 5555\n```\n\n### Windows Powershell Example\n\nA small example script to control the timer app via the powershell:\n\n```powershell\n$payload = '{\"command\":\"start\"}'\n$ip = \"192.168.1.50\"\n$port = 5555\n$client = New-Object System.Net.Sockets.TcpClient($ip, $port)\n$stream = $client.GetStream()\n$writer = New-Object System.IO.StreamWriter($stream)\n$writer.Write($payload)\n$writer.Flush()\n$writer.Close()\n$client.Close()\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "PyQt6 based timer and remote application for conference talks",
    "version": "1.0.2",
    "project_urls": null,
    "split_keywords": [
        "conference",
        " timer",
        " pyqt6"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9237763b39a894b808c8011c92e3db5ea20b70ab9dc63b32d178ec34b74622e5",
                "md5": "1e10173977dccd5e7a53212575ad36e2",
                "sha256": "d1ab823cd225591c8bd894900bc05368dbf4afef4b6b66547806cc34849e5e10"
            },
            "downloads": -1,
            "filename": "conferencetimer-1.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1e10173977dccd5e7a53212575ad36e2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 8740,
            "upload_time": "2025-08-12T08:34:31",
            "upload_time_iso_8601": "2025-08-12T08:34:31.456462Z",
            "url": "https://files.pythonhosted.org/packages/92/37/763b39a894b808c8011c92e3db5ea20b70ab9dc63b32d178ec34b74622e5/conferencetimer-1.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed5e2b3f85f9cd449b0a7824c148347077c74f821e6f8e8e9978b4de45a03bca",
                "md5": "80ddb4b28941c30eaf6c5a6b0d887824",
                "sha256": "e842e4ab4b5e8e7173388f2ae85025e0583a5d52493e9397a59b3c47eb935bb3"
            },
            "downloads": -1,
            "filename": "conferencetimer-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "80ddb4b28941c30eaf6c5a6b0d887824",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 8180,
            "upload_time": "2025-08-12T08:34:33",
            "upload_time_iso_8601": "2025-08-12T08:34:33.945069Z",
            "url": "https://files.pythonhosted.org/packages/ed/5e/2b3f85f9cd449b0a7824c148347077c74f821e6f8e8e9978b4de45a03bca/conferencetimer-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-12 08:34:33",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "conferencetimer"
}
        
Elapsed time: 0.97924s