Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
Very cool Daniel, thank you! Federico On Mon, Feb 14, 2022 at 3:02 PM Daniel-Constantin Mierla wrote: > Hello, > > I want to announce the availability of sipexer v1.0.0 - a sip cli tool > that can facilitate testing and monitoring of SIP signalling systems. It > tries to have a modern approach, with a flexible templating system, > supporting both IPv4 and IPv6 with all the common transport layers, > respectively UDP, TCP, TLS and WebSocket (for WebRTC). > > The project can be found at: > > * https://github.com/miconda/sipexer > > It is written in Go language for better portability, binaries for Linux, > MacOS and Windows are made available for download in the release page: > > * https://github.com/miconda/sipexer/releases/tag/v1.0.0 > > Among its features: > > * send OPTIONS request (quick SIP ping to check if server is alive) > * do registration and un-registration with customized expires value > and contact URI > * authentication with plain or HA1 passwords > * set custom SIP headers > * template system for building SIP requests > * fields in the templates can be set via command line parameters or a > JSON file > * variables for setting field values (e.g., random number, data, > time, environment variables, uuid, random string, …) > * simulate SIP calls at signalling layer (INVITE-wait-BYE) > * respond to requests coming during SIP calls (e.g., OPTIONS keepalives) > * send instant messages with SIP MESSAGE requests > * color output mode for easier troubleshooting > * support for many transport layers: IPv4 and IPv6, UDP, TCP, TLS and > WebSocket (for WebRTC) > * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) > > One usage example that could ease the testing of Kamailio is initiating > registrations or simulating calls over WebSocket without the need of > having a JavaScript soft phone application running in a web browser. > > Cheers, > Daniel > > -- > Daniel-Constantin Mierla > http://www.asipto.com > > > ___ > Kamailio (SER) - Development Mailing List > sr-dev@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev > ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
Certainly, but 90% of the various use-cases are covered by the invite scenario. Extensive compatibility with various CI tooling isn’t really required in my mind; as long as it can return positive or negative values depending on the outcome of the SIP request, it’s perfect. The real value is in the fact that it’s a true CLI tool, and the ability to formulate misshapen requests using Go templates. That’s beautiful! Another great thing is that you appear to have exposed your ad hoc SIP parser as a module, which means it could potentially be imported and used in other tools. — Sent from mobile, with due apologies for brevity and errors. > On Feb 14, 2022, at 1:51 PM, Daniel-Constantin Mierla > wrote: > > Probably it requires some hammering to make it compatible with various > CI pipelines, I tried to make a mode for nagious plugin, but coding in > golang should make it easy to adapt/enhance. > > I plan to add a few more common scenarios for session testing. Right now > can do register-wait-unregister and invite/200ok-ack-wait-bye. > > One that is my to-do is to register two users and make a call between > them. Another one would be to register and wait for calls, so another > sipexer instance can be used for register and initiate calls. > > Writing the sip traffic in a pcap file is something that I would like to > add as well. > > Cheers, > Daniel > >> On 14.02.22 19:27, Alex Balashov wrote: >> I haven’t had a chance to dig into it just yet, but this is an incredibly >> exciting development, and fills a very dire gap in open-source testing >> tools. >> >> SIPp was the only real game in town and, despite some very creative efforts >> over the years, fundamentally is not composable: it doesn’t lend itself to >> headless automation or embedding in CI pipelines, and isn’t terribly useful >> for monitoring. The remainder is a miscellany of relatively unsophisticated >> or quirky tools, none of which have the flexibility you are providing here. >> >> Very grateful that you wrote this, and excited to try it! Thank you so much >> for this work! >> >> — Alex >> On Feb 14, 2022, at 1:23 PM, Juha Heinanen wrote: >>> >>> Daniel-Constantin Mierla writes: >>> WebSocket (for WebRTC) * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) One usage example that could ease the testing of Kamailio is initiating registrations or simulating calls over WebSocket without the need of having a JavaScript soft phone application running in a web browser. >>> Thanks for the tool. Regarding SIP over WebSocket, baresip supports >>> WebSocket transport in all platforms. >>> >>> -- Juha >>> >>> ___ >>> Kamailio (SER) - Development Mailing List >>> sr-dev@lists.kamailio.org >>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev >> -- >> Alex Balashov | Principal | Evariste Systems LLC >> >> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) >> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/ >> >> >> ___ >> Kamailio (SER) - Development Mailing List >> sr-dev@lists.kamailio.org >> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev > > -- > Daniel-Constantin Mierla -- www.asipto.com > www.twitter.com/miconda -- www.linkedin.com/in/miconda > Kamailio Advanced Training - Online > Feb 21-24, 2022 (America Timezone) > * https://www.asipto.com/sw/kamailio-advanced-training-online/ > ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
Probably it requires some hammering to make it compatible with various CI pipelines, I tried to make a mode for nagious plugin, but coding in golang should make it easy to adapt/enhance. I plan to add a few more common scenarios for session testing. Right now can do register-wait-unregister and invite/200ok-ack-wait-bye. One that is my to-do is to register two users and make a call between them. Another one would be to register and wait for calls, so another sipexer instance can be used for register and initiate calls. Writing the sip traffic in a pcap file is something that I would like to add as well. Cheers, Daniel On 14.02.22 19:27, Alex Balashov wrote: > I haven’t had a chance to dig into it just yet, but this is an incredibly > exciting development, and fills a very dire gap in open-source testing tools. > > SIPp was the only real game in town and, despite some very creative efforts > over the years, fundamentally is not composable: it doesn’t lend itself to > headless automation or embedding in CI pipelines, and isn’t terribly useful > for monitoring. The remainder is a miscellany of relatively unsophisticated > or quirky tools, none of which have the flexibility you are providing here. > > Very grateful that you wrote this, and excited to try it! Thank you so much > for this work! > > — Alex > >> On Feb 14, 2022, at 1:23 PM, Juha Heinanen wrote: >> >> Daniel-Constantin Mierla writes: >> >>> WebSocket (for WebRTC) >>> * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) >>> >>> One usage example that could ease the testing of Kamailio is initiating >>> registrations or simulating calls over WebSocket without the need of >>> having a JavaScript soft phone application running in a web browser. >> Thanks for the tool. Regarding SIP over WebSocket, baresip supports >> WebSocket transport in all platforms. >> >> -- Juha >> >> ___ >> Kamailio (SER) - Development Mailing List >> sr-dev@lists.kamailio.org >> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev > -- > Alex Balashov | Principal | Evariste Systems LLC > > Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) > Web: http://www.evaristesys.com/, http://www.csrpswitch.com/ > > > ___ > Kamailio (SER) - Development Mailing List > sr-dev@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev -- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training - Online Feb 21-24, 2022 (America Timezone) * https://www.asipto.com/sw/kamailio-advanced-training-online/ ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
On 14.02.22 19:23, Juha Heinanen wrote: > Daniel-Constantin Mierla writes: > >> WebSocket (for WebRTC) >> * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) >> >> One usage example that could ease the testing of Kamailio is initiating >> registrations or simulating calls over WebSocket without the need of >> having a JavaScript soft phone application running in a web browser. > Thanks for the tool. Regarding SIP over WebSocket, baresip supports > WebSocket transport in all platforms. baresip is more like a proper SIP phone (which is great and I use it for such purpose), but I don't think it has the option to "forge" any kind of SIP request. The sipexer is a result of not having enough time to (fully understand and then) code C/C++ for sipsak to add websocket support (plus a few other like IPv6, more TLS flexibility). I wrote a couple of years ago wsctl to be able to do testing over websocket from cli, I don't think baresip had support for websocket at that time, anyhow my need was mainly to be able to reproduce by sending SIP traffic from a previous capture) and a few months ago I decided to start a more sip-oriented tool written in golang, considering is faster development due to embedded tls support and easier websocket integration (also hoping that contributions will be easier in golang than c/c++ nowadays from the new generation). sipexer has to be seen as a sip cli tool, not as a sip softphone, there is no media/audio support. Cheers, Daniel -- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training - Online Feb 21-24, 2022 (America Timezone) * https://www.asipto.com/sw/kamailio-advanced-training-online/ ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
I haven’t had a chance to dig into it just yet, but this is an incredibly exciting development, and fills a very dire gap in open-source testing tools. SIPp was the only real game in town and, despite some very creative efforts over the years, fundamentally is not composable: it doesn’t lend itself to headless automation or embedding in CI pipelines, and isn’t terribly useful for monitoring. The remainder is a miscellany of relatively unsophisticated or quirky tools, none of which have the flexibility you are providing here. Very grateful that you wrote this, and excited to try it! Thank you so much for this work! — Alex > On Feb 14, 2022, at 1:23 PM, Juha Heinanen wrote: > > Daniel-Constantin Mierla writes: > >> WebSocket (for WebRTC) >> * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) >> >> One usage example that could ease the testing of Kamailio is initiating >> registrations or simulating calls over WebSocket without the need of >> having a JavaScript soft phone application running in a web browser. > > Thanks for the tool. Regarding SIP over WebSocket, baresip supports > WebSocket transport in all platforms. > > -- Juha > > ___ > Kamailio (SER) - Development Mailing List > sr-dev@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev -- Alex Balashov | Principal | Evariste Systems LLC Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/ ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Re: [sr-dev] Info: sipexer v1.0.0 - sip cli tool
Hello Daniel, Very nice tool! Thank you for sharing! -ovidiu On Mon, Feb 14, 2022 at 09:02 Daniel-Constantin Mierla wrote: > Hello, > > I want to announce the availability of sipexer v1.0.0 - a sip cli tool > that can facilitate testing and monitoring of SIP signalling systems. It > tries to have a modern approach, with a flexible templating system, > supporting both IPv4 and IPv6 with all the common transport layers, > respectively UDP, TCP, TLS and WebSocket (for WebRTC). > > The project can be found at: > > * https://github.com/miconda/sipexer > > It is written in Go language for better portability, binaries for Linux, > MacOS and Windows are made available for download in the release page: > > * https://github.com/miconda/sipexer/releases/tag/v1.0.0 > > Among its features: > > * send OPTIONS request (quick SIP ping to check if server is alive) > * do registration and un-registration with customized expires value > and contact URI > * authentication with plain or HA1 passwords > * set custom SIP headers > * template system for building SIP requests > * fields in the templates can be set via command line parameters or a > JSON file > * variables for setting field values (e.g., random number, data, > time, environment variables, uuid, random string, …) > * simulate SIP calls at signalling layer (INVITE-wait-BYE) > * respond to requests coming during SIP calls (e.g., OPTIONS keepalives) > * send instant messages with SIP MESSAGE requests > * color output mode for easier troubleshooting > * support for many transport layers: IPv4 and IPv6, UDP, TCP, TLS and > WebSocket (for WebRTC) > * send SIP requests of any type (e.g., INFO, SUBSCRIBE, NOTIFY, …) > > One usage example that could ease the testing of Kamailio is initiating > registrations or simulating calls over WebSocket without the need of > having a JavaScript soft phone application running in a web browser. > > Cheers, > Daniel > > -- > Daniel-Constantin Mierla > http://www.asipto.com > > > ___ > Kamailio (SER) - Development Mailing List > sr-dev@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev > -- VoIP Embedded, Inc. http://www.voipembedded.com ___ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev