GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Net::SIP::Request(3) User Contributed Perl Documentation Net::SIP::Request(3)

Net::SIP::Request - handling of SIP request packets

  my $req = Net::SIP::Request->new( 'INVITE',... );
  my $ack = $req->create_ack();

Subclass of Net::SIP::Packet for handling request packets. Has methods to create responses to requests and to authorize requests.

  # create INVITE request
  my $invite = Net::SIP::Request->new(
        'INVITE', 'sip:you@example.com',
        { from => ..., to => ... },
        Net::SIP::SDP->new( ... )
  );

  # somehow send request and retrieve response $resp
  ...
  if ( $resp->code eq '401' or $resp->code eq '407' ) {
        # need to authorize request
        $invite->authorize( $resp, [ username, password ] );

        # somehow send again and retrieve response $resp
        ...
  }

  if ( $resp->code ~m{^[2345]\d\d} ) {
        # got final response, send ACK
        my $ack = $invite->create_ack( $resp );

        # somehow send $ack
        ...
  }

Inherited from Net::SIP::Packet. See there.

method
Get method of request.
uri
Get URI part of request.
set_uri ( STRING )
Set URI of request to STRING
set_cseq ( NUMBER )
Set sequence number if "CSeq" header to NUMBER.
create_ack ( RESPONSE )
Returns Net::SIP::Request object for ACK request for the case when Net::SIP::Response RESPONSE was received in reply for packet $self.
create_cancel
Returns Net::SIP::Request object to cancel request in $self.
create_response ( CODE, [MSG,] [ \%HEADER, BODY ] )
Returns Net::SIP::Response packet for the received request $self with numerical code CODE and text message MSG. Header for the response will be based on the request, but can be added or overridden using \%HEADER. If MSG is not given (e.g. argument is missing, second argument is \%HEADER already) a builtin message for the code will be used.

For details to \%HEADER and BODY see new_from_parts in Net::SIP::Packet.

authorize ( RESPONSE, AUTH )
Tries to authorize request $self based on the information in RESPONSE (a 401 or 407 "Authorization required" response) and AUTH. AUTH is either "[ user,pass ]" if a global authorization info exists for all realms or "{ realm1 => [ user1,pass1 ], realm2 => [ user2,pass2 ],... }" if different credentials are provided for different realms or a callback "callback(realm)->[user,pass]". The realms, for which authorization is needed, are read from RESPONSE.

The request $self is modified in-place. If a modification occurred, e.g. if (parts of) the authorization requests could be resolved it will return TRUE, else FALSE.

Supports only RFC2617 with md5 and empty qop or qop 'auth', not md5-sess or qop's like 'auth-int'.

2021-05-04 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.