@@ -70,6 +70,8 @@ python3 -m pip install --use-pep517 --break-system-packages --user 'multicast>=2
7070
7171* Source builds require development tools including (but not limited to): ` git ` , and ` make ` *
7272
73+ #### Stable builds (Release Candidates)
74+
7375``` bash
7476# clone the multicast source repository
7577git clone " https://github.com/reactive-firewall/multicast.git" multicast
@@ -84,16 +86,30 @@ make user-install
8486python3 -m multicast --version
8587```
8688
87- ### Developer builds
89+ #### Developer builds
8890
8991> [ !WARNING]
9092> ** Development Builds** * (e.g. Cutting-Edge)* are not intended as full-fleged releases, however
9193> updates to the Development Builds are more frequent than releases.
9294
95+ ``` bash
96+ # clone the multicast source repository
97+ git clone " https://github.com/reactive-firewall/multicast.git" multicast
98+ cd multicast
99+ # switch to the default "master" branch
100+ git checkout master
101+ # build the multicast module
102+ make -f Makefile build
103+ # install the build
104+ make user-install
105+ # Optionally check the install
106+ python3 -m multicast --version
107+ ```
108+
93109### Legacy egg style install
94110
95111> [ !WARNING]
96- > ** Egg Style Builds** * (Deprecated)* are not supported after version ` 2.1 ` :shrug :
112+ > ** Egg Style Builds** * (Deprecated)* are not supported since version ` 2.1 ` :shrug :
97113
98114``` bash
99115pip install -e " git+https://github.com/reactive-firewall/multicast.git#egg=multicast"
@@ -132,16 +148,32 @@ print('Received:', message)
132148
133149### Listening for Multicast Messages
134150
151+ * Depending on what needs to be done with recieved data each case will be a bit different.
152+
135153``` python3
154+ # setup console logging as example
155+ import logging
156+ multicast_logging_sink = logging.getLogger()
157+ handler = logging.StreamHandler()
158+ multicast_logging_sink.setLevel(logging.INFO ) # increase default logging from multicast module
159+ handler = logging.StreamHandler() # example trivial log handler
160+ multicast_logging_sink.addHandler(handler)
161+
162+ # import multicast
136163from multicast import hear
137164
138165# Create a multicast listener
139166listener = hear.McastHEAR()
140167
141- # Listen for messages indefinitely
168+ # Listen for messages indefinitely (use control+C to stop)
142169listener(group = ' 224.0.0.1' , port = 59259 , ttl = 1 )
143170```
144171
172+ > [ !TIP]
173+ > While this trivial example just scratches the surface, the ` multicast.hear ` module provides an
174+ > extendable implementation of the default handler for customizing the listening behavior well
175+ > beyond just logging.
176+
145177## Command-Line Usage
146178
147179The ` multicast ` package provides command-line tools for multicast communication prototyping.
@@ -188,12 +220,12 @@ assessing and mitigating risks in your implementations and use of `multicast`.
188220## Documentation
189221
190222For more detailed documentation and advanced usage, please refer to the
191- [ official documentation] ( https://reactive-firewallmulticast.readthedocs.io/en/master/ ) .
223+ [ documentation] ( https://reactive-firewallmulticast.readthedocs.io/en/master/ ) .
192224
193225## Contributing
194226
195227Contributions are welcome! Please read the
196- [ contributing guidelines] ( https://github.com/reactive-firewall/multicast/blob /stable/.github/CONTRIBUTING )
228+ [ contributing guidelines] ( https://github.com/reactive-firewall/multicast/tree /stable/.github/CONTRIBUTING )
197229for more information.
198230
199231### Next steps
@@ -205,8 +237,8 @@ Next steps and bug fixes are tracked by the
205237
206238### Copyright (c) 2021-2025, Mr. Walls
207239
208- This project is licensed under the MIT License. See the
209- [ LICENSE.md] ( https://github.com/reactive-firewall/multicast/blob /stable/LICENSE.md ) file for
240+ The Multicast Python Module is licensed under the MIT License. See the
241+ [ LICENSE.md] ( https://github.com/reactive-firewall/multicast/tree /stable/LICENSE.md ) file for
210242details.
211243
212244[ ![ License - MIT] ( https://img.shields.io/pypi/l/multicast?cacheSeconds=3600 )] ( https://github.com/reactive-firewall/multicast/blob/stable/LICENSE.md )
0 commit comments