Below are some sample configurations to demonstrate various scenarios with complete pjsip.conf files. To see examples side by side with old chan_sip config head to Migrating from chan_sip to res_pjsip. Explanations of the config sections found in each example can be found in PJSIP Configuration Sections and Relationships.
A tutorial on secure and encrypted calling is located in the Secure Calling section of the wiki.
An endpoint with a single SIP phone with inbound registration to Asterisk
12 Comments
Max
Are names like [auth6001] mandatory or I can simply use just [6001] as with aor, endpoint etc?
Edit: Seems like the latter is the case.
Rusty Newton
That is answered here: PJSIP Configuration Sections and Relationships#SectionNames
Thanks!
Sunny
But there is not mention anywhere that names like [auth6001] mandatory ?
Rusty Newton
No, there is not. However, I'm not sure I understand your statement as a question. The section linked is fairly explicit. You'll have to rephrase your question to be more clear if you think I'm not understanding.
Sunny
Actually my question was what Max has asked above that
Are names like [auth6001] mandatory or I can simply use just [6001] as with aor, endpoint etc?
because I am also little bit confused because the link you shared above and other many articles I read on pjsip everywhere it is mentioned like auth+extension, can you shed some light on this?
Rusty Newton
This may be a language translation issue. As the article linked explicitly answers Max's question.
"In most cases, you can name a section whatever makes sense to you. For example you might name a transport [transport-udp-nat] to help you remember how that section is being used.
However, in some cases, (endpoint and aor types) the section name has a relationship to its function. In the case of endpoint and aor their names must match the user portion of the SIP URI in the "To" header for inbound SIP requests. The exception to that rule is if you have an identify section configured for that endpoint. In that case the inbound request would be matched by IP instead of against the user in the "To" header."
I'm not sure how to explain it another way. You can name most PJSIP configuration objects anything you want. For endpoints and aors you need to name them based on the SIP users calling in, as explained on the wiki.
You do not need to use an object type plus an extension number as the name, I'm not sure where you are reading that.
Steven Haigh
It may be worthwhile to change the contact line in the AOR record to match the server_uri in the registration section.
It is not obvious from the example what this is actually meant to do or that the two values are related.
Rusty Newton
Hmm, the example says "This example assumes that sip.example.com resolves to 203.0.113.1"
The values are not necessarily related. The contact or contacts may be different than the address we register to.
Steven Haigh
Agreed, but as you can supply both an FQDN or IP address to both the aor and the match values, for a normal example there would be no need to separate the config into hostname and IP address.
Rusty Newton
Good point and now that I can't remember why we had it different in this example.. I'll go ahead and change it up.
Sunny
Where to define the host in endpoint so that we can call outside from that peer/endpoint?
Rusty Newton
See the example configuration under:
"A SIP trunk to your service provider, including outbound registration"
On this page.
Also see this other page: Dialing PJSIP Channels