MscGen

Uses your system voice; voice and rate in settings.

Snapshot

≈ 2 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

Mscgen (short for MSC generator) is a software tool for drawing message sequence charts from a simple to manage text-based source file. Rendered charts can be output in PNG, SVG and PostScript, with hyperlink information in ismap format. There is an extension for MediaWiki, Sphinx (documentation generator) and integration with Doxygen that allows embedding of charts into source code comments with generated automatically inserted into the generated documentation page. Mscgen is free software licensed under the GNU General Public License (GPL).

Mscgen (short for MSC generator) is a software tool for drawing message sequence charts from a simple to manage text-based source file. Rendered charts can be output in PNG, SVG and PostScript, with hyperlink information in ismap format. There is an extension for MediaWiki, Sphinx (documentation generator) and integration with Doxygen that allows embedding of charts into source code comments with generated automatically inserted into the generated documentation page. Mscgen is free software licensed under the GNU General Public License (GPL).

Examples

The following example is from the author: msc { a,b,c; a->b [label="ab()"] ; b->c [label="bc(TRUE)"]; c=>c [label="process(1)"]; c=>c [label="process(2)"]; ...; c=>c [label="process(n)"]; c=>c [label="process(END)"]; a a [label="next()"]; a->c [label="ac()"]; b b [label="stalled(...)"]; a Here are two examples of input and output for some standard SIP message flows:

Simple Call Flow

msc { UAS1, UAC; UAS1->UAC [label="INVITE"]; UAS1 UAC [label="ACK"]; ...; --- [label="the client hangs up"]; UAS1

Alice calls Bob with Intermediary Proxies

msc { Alice, P1, P2, Bob; Alice->P1 [label="INVITE"]; Alice P2 [label="INVITE"]; P1=>>P2 [label="100 Trying"]; P2->Bob [label="INVITE"]; P2 P1 [label="ACK"]; P1->P2 [label="ACK"]; P2->Bob [label="ACK"]; --- [label="two way media"]; ...; }

See also

Message Sequence Chart Doxygen Sphinx (documentation generator) GraphViz for similar software for directed graphing PlantUML

References

External links

http://www.mcternan.me.uk/mscgen/ http://packages.python.org/sphinxcontrib-mscgen/

Text derived from https://en.wikipedia.org/w/index.php?oldid=1241303531 under CC BY-SA 4.0; modifications have been made.

Sources cited in this revision

Extracted from the cited revision's reference blocks; absent citations are not invented.