Python-SIP | primative SIP library built in pure python | TCP library

 by   SythilTech Python Version: Current License: MIT

kandi X-RAY | Python-SIP Summary

kandi X-RAY | Python-SIP Summary

Python-SIP is a Python library typically used in Networking, TCP applications. Python-SIP has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. However Python-SIP build file is not available. You can download it from GitHub.

primative SIP library built in pure python
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              Python-SIP has a low active ecosystem.
              It has 4 star(s) with 8 fork(s). There are 1 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 0 open issues and 1 have been closed. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of Python-SIP is current.

            kandi-Quality Quality

              Python-SIP has no bugs reported.

            kandi-Security Security

              Python-SIP has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              Python-SIP is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              Python-SIP releases are not available. You will need to build from source code and install.
              Python-SIP has no build file. You will be need to create the build yourself to build the component from source.

            Top functions reviewed by kandi - BETA

            kandi has reviewed Python-SIP and discovered the below as its top functions. This is intended to give you an instant insight into Python-SIP implemented functionality, and help decide if they suit your requirements.
            • Listen for incoming requests .
            • Sends a SIP invite
            • Send a SIP register
            • Send a SIP message
            • send a reply to the server
            • Clears the object handlers .
            • Add a new handler .
            • Remove a handler .
            • Fire an event .
            Get all kandi verified functions for this library.

            Python-SIP Key Features

            No Key Features are available at this moment for Python-SIP.

            Python-SIP Examples and Code Snippets

            No Code Snippets are available at this moment for Python-SIP.

            Community Discussions

            QUESTION

            How to initiate a SIP (session initiation protocol) and transfer media (voice) through RTP (real time transport protocol)
            Asked 2017-Dec-20 at 08:07

            I am working on a project where I need to write a server to initiate SIP sessions with connecting clients and a remote soft-switch. Once the session has been initiated, voice streams should be transmitted back and forth between the end-points using real time transport protocol. Given my above scenario, I have a few questions on how to go about solving this problem.

            1) How is SIP initiated? I do understand SIP are usually initiated by SIP clients in IP telecommunication devices. But if you want to initiate SIP sessions programatically, how do you do it without a SIP client? Currently I am using Python, so I came across a few libraries. Like simplesip (which looks overly complicated and not sure if it can do what I want), then there is sippy, which looks promising.

            I was also thinking if you can manually create SIP/SDP packets manually through the program and try to initiate a SIP session. I feel like I am reinventing the wheel here by trying to do that. So my question is how do initiate a SIP session programatically? If libraries are used, what are some good libraries. Or is it OK to create and send SIP packets manually in a program?

            2) When RTP is created during SIP, how can this RTP channel be referenced to a remote device so that it can use this referenced RTP channel? When researching online, I was told that SIP doesn't provide services to transmit media but just creates a session. Actually RTP does the heavy lifting of doing things in real time. So when a RTP is initiated what does this really mean in a software terminology. Is it a object which can which can be referenced to a device? How can I even add streams of media to this RTP?

            ...

            ANSWER

            Answered 2017-Dec-20 at 08:07

            1) Setting up and maintaining SIP sessions is done by sending and receiving messages in the Internet Message Format (see RFC 5322): text messages, usually sent using UDP or TCP. It's all about what message to send and when. SIP libraries can help you with that (and with sending/receiving RTP streams) but you can easily do it yourself if you just know how to send UDP messages.

            In short: to set up a SIP session you send a SIP INVITE request message, the other party returns SIP INVITE response message and you complete the session initiation by sending a SIP ACK message. Normally the INVITE request will contain an SDP offer in its body, specifying what kind of media the client is willing/able to receive and on which IP address/port. The INVITE response then contains an SDP answer specifying the same for the other party.

            The SIP protocol is described in RFC 3261, SDP in SDP 4566. If you google a bit you can find plenty of examples for SIP communication.

            2) You're right in that SIP doesn't provide services to transmit/receive media streams. SIP can be used to let another party know you want to set up a media session and negotiate the specifics. Sending/receiving the media stream has to be done seperately; again you could use a library or do it yourself.

            An RTP stream (see RFC 3550) is just an example of such a media stream. Sending an RTP stream means sending a continuous stream of RTP packets (usually as part of UDP packets). Every packet contains RTP data: an RTP header and the RTP payload (the actual audio samples).

            Mode of operation: The sending party samples its local audio. Every time it has (e.g.) 20 ms worth of audio samples it creates an RTP packet and sends this as payload in an UDP packet. This means it sends a packet every 20 ms, creating a stream of packets: the RTP stream. The receiving party buffers these packets and uses the audio samples in each packet to recreate the audio.

            I hope this helps.

            Source https://stackoverflow.com/questions/47896763

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install Python-SIP

            You can download it from GitHub.
            You can use Python-SIP like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/SythilTech/Python-SIP.git

          • CLI

            gh repo clone SythilTech/Python-SIP

          • sshUrl

            git@github.com:SythilTech/Python-SIP.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular TCP Libraries

            masscan

            by robertdavidgraham

            wait-for-it

            by vishnubob

            gnet

            by panjf2000

            Quasar

            by quasar

            mumble

            by mumble-voip

            Try Top Libraries by SythilTech

            Python-SDP

            by SythilTechPython