07.03.2015 1:21, Kevin Harwell пишет:


On Fri, Mar 6, 2015 at 3:46 PM, Dmitriy Serov <serov....@gmail.com <mailto:serov....@gmail.com>> wrote:

    07.03.2015 0:24, Kevin Harwell пишет:
    On Fri, Mar 6, 2015 at 2:06 PM, Dmitriy Serov
    <serov....@gmail.com <mailto:serov....@gmail.com>> wrote:

        Hello.

        Asterisk 13.2.
        I transfer configs from chan_sip to res_pjsip.
        In chan_sip i have "match_auth_username=yes" and have nothing
        in pjsip.

        I have a lot of endpoints and registrations on same SIP
        server. And it's problem in pjsip now. Is not it?

        I requesting to add new value for endpoint option
        identify_by. The value 'uri'.
        Simple config (cutted):

        [siptrunk]
        type=registration
        transport=udp-transport
        outbound_auth=siptrunk
        server_uri=sip:sip.example.com  <http://sip.example.com>
        client_uri=sip:1234567...@sip.example.com  
<mailto:client_uri=sip:1234567...@sip.example.com>
        retry_interval=60
        contact_user=siptrunk-in

        [siptrunk-in]
        type=endpoint
        transport=udp-transport
        context=from-trunk
        disallow=all
        allow=ulaw
        outbound_auth=siptrunk
        aors=siptrunk
        identify_by=uri


        Registration section has option "contact_user". Incoming call
        from this registration will be INVITE sip:siptrunk-in@....
        I offer to change res_pjsip_endpoint_identifier_user to
        realize endpoint identification by sip uri.

        I think it will be usefull.

        P.S. i hope issues will be rejected:
        https://issues.asterisk.org/jira/browse/ASTERISK-22306 and
        SWP-6069


        Dmitriy Serov

        -


    I believe what you are looking for is already available. See the
    "identify" type (type=identify) section that is in the pjsip.conf
    file and the "identify" option for endpoints. These allow you to
    identify and endpoint by IP address.

    For more information see the pjsip.conf.sample file.  Also take a
    look at configuring Asterisk for res_pjsip [1] specifically the
    part about configuring endpoint identification by IP address [2].
    If you run into problems more information can also be found in
    the res_pjsip troubleshooting guide [3], specifically the section
    on "identify by IP address"

    [1] https://wiki.asterisk.org/wiki/display/AST/Configuring+res_pjsip
    [2]
    
https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+Configuration_res_pjsip_endpoint_identifier_ip
    [3]
    
https://wiki.asterisk.org/wiki/display/AST/Asterisk+PJSIP+Troubleshooting+Guide

    Hope that helps,


    Thank you for answer. But...
    ones again: I have a lot of endpoints and registrations on same
    SIP server. And it's problem in pjsip now. Is not it?

    Simple Example. I have two trunks with their own credentials (and
    did) to the same sip server:
    - for home
    - for bussiness

    [home-example.com-endpoint]

    [bussiness-example.com-endpoint]

    [home-example.com-registration]
    contact_user=home-example.com-endpoint

    [bussiness-example.com-registration]
    contact_user=bussiness-example.com-endpoint

    ;and ok... i wrote identify by IP section
    [example.com-identify]
    type=identify
    match=example.com <http://example.com>
    endpoint= ???

    It is very! important for me to know what trunk passes through the
    incoming call: home or bussiness.
    1. Identify by IP. Do you have answer?
    2. Identify by username. What? I can't make endpoints to all of my
    contacts.

    Ok. I can use contact_user in registraction and route incoming
    call by INVITE uri.
    Can i?

    Dmitriy Serov



I don't think I fully understand the scenario, but if you have different named endpoints originating from the same address (or even different addresses) then these can be identified by the username portion of the sip uri. However, if you have endpoints for instance with the same name, but different addresses then these can be distinguished by using the identity type.

Your scenario looks like the first option. The endpoint names are different, but the address is the same, so identification based on the username should be sufficient.

However, if you have a mix of both types on your system, for instance multiple endpoints on two different systems (IP addresses) with the same names, then I am unsure how you would select the correct endpoint even while attempting to "identify_by" uri.

--
Kevin Harwell
Digium, Inc. | Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at:http://digium.com  &http://asterisk.org



I have different named endpoints originating from the same address.
>>then these can be identified by the username portion of the sip uri
ok. A little more examples.

case 1. Device!
we have: endpoint in config and registered device.
incoming call. In this case identification makes by username portion of sip uri "from". And we know endpoint.
Excellent!

case 2. Trunk!
we have: endpoint and registration of trunk1 to sip server "u...@example.com" in config. Registration section have option contact_user. I can fill it by usefull value. For example: "201"
and now... someb...@example.com makes call to u...@example.com
i have incoming call to my server:
INVITE sip:201@
to: 201
from: someb...@example.com
Question: how can i identify my endpoint?

P.S. discussion of this issue goes in IRC #asterisk-dev now. And also difficult :(
-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to