Thursday, December 30, 2010

Detailed configuration of a Grandstream HT-502 for home VIOP use

This entry relates specifically to my VIOP post, and starts in the middle of things. To anyone else, don't expect it to make sense.

First step is to get your computer web browser talking to the Grandstream ATA. The following excerpt is from the HT-502 manual:

ACCESS THE WEB CONFIGURATION MENU
The HT502 HTML configuration page can be accessed via LAN or WAN ports.
• FROM THE LAN PORT:
1. Directly connect a computer to the LAN port
2. Open a command window on the computer
3. Type in “ipconfig /release”, the IP address etc becomes 0
4. Type in “ipconfig /renew”, the computer gets an IP address in 192.168.2.x segment by default
5. Open a web browser, type in the default IP address of the LAN port. http://192.168.2.1. You
will see the log in page of the device.

The login using the default password "admin". This will bring you to a set of 5 long, complex setup pages. Here are the settings I remember changing, although just in case I will also append my full configuration page for reference at the end of this post:

STATUS page: nothing to be configured here, but a good page to reference to see if things are working.

BASIC SETTINGS page:
  • End User Password: change if desired (but don't forget it!)
  • Device Mode: NAT router
  • WAN side HTTP: suggest keeping disabled, keeps hackers out of your ATA
  • LAN DHCP Base IP: 193.169.2.1 (or some other value) - needed this to work with my router, perhaps not required. Remember this address, as this is what you will need to access the device from your web browser after it is entered
  • Port forwarding - used to punch holes in your firewall for remote access, etc. Many should leave this blank. An example setting (for windows remote desktop, for instance) would be to forward WAN port 3389 to 193.169.2.100 LAN port 3389 for TCP. Note that the LAN IP should be consistent with the value you put in the LAN DHCP and Base IP values.
ADVANCED SETTINGS page:
  • I don't think I needed to make any changes here
FXS PORT 1 page:
  • Account active: Yes
  • Primary SIP server: callcentric.com
  • Outbound proxy: callcentric.com
  • SIP user ID: Here insert your callcentric SIP ID (which is not the same as your incoming telephone number). Mine begins with 17772, and is a 11 digit number
  • Authenticate ID: Same as the SIP user ID
  • Authenticate password: your callcentric password
  • Name: Fill in what you want, optional. This is not what peoples caller ID will display.
  • DNS Mode: SRV
  • User ID is a phone number: Yes
  • SIP Registration: yes
  • Unregister on Reboot: no
  • Outgoing call without registration: No (this will keep you from getting a dial tone if things are not working, highly recommended).
  • Enable Call Features: yes
  • Distinctive ring tone: I didn't play with this, but this lets you change rings for special numbers, etc.
  • Dial plan: this is what gets you 11 + 7 dialing, e.g. 1(AAA)NNN-MMMM and just NNN-MMMM for "local" calls. You will have to customize the following string (between the angle brackets, which should not be included: <{^1900x. |<=1AAA>[2-9]xxxxxx|1[2-9]xx[2-9]xxxxxx|011[2-9]x.|[3469]11|*x.}>, where AAA is your area code. Also, if you are crazy and want to be able to place calls to 900 numbers, delete the first part, e.g. ^1900x. |
  • Preferred vocoders: This probably changes with time, but the following settings work for me, with each choice separated by commas: G729, G723, iLBC, G726-32, PCMU, PCMA, AAL2-G726-40, G729.
FXS PORT2 page: Account Active = No, unless you have a second line.

In case I forgot something, here is my reference dump of my config. pages, with some private values deleted:

End User Password: (purposely not displayed for security protection) Web Port: (default for HTTP is 80) Telnet Server: No Yes IP Address:
dynamically assigned via DHCP
DHCP hostname: (optional)
DHCP domain: (optional)
DHCP vendor class ID: (optional)
use PPPoE
PPPoE account ID:
PPPoE password:
PPPoE Service Name:
Preferred DNS server: . . .
statically configured as:
IP Address: . . .
Subnet Mask: . . .
Default Router: . . .
DNS Server 1: . . .
DNS Server 2: . . .
Time Zone: Self-Defined Time Zone: (For exampe: MTZ+6MDT+5,M4.1.0,M11.1.0) Language: NAT/DHCP Server Information & Configuration: Device Mode: NAT Router Bridge NAT maximum ports: (range: 0 - 4096, default is 1024) NAT TCP timeout: (range: 0 - 3600, default is 3600) NAT UDP timeout: (range: 0 - 3600, default is 300) Uplink bandwidth: Downlink bandwidth: Enable UPnP support: No Yes Reply to ICMP on WAN port: No Yes (Unit will not respond to PING from WAN side if set to No) WAN side HTTP/Telnet access: No Yes (WAN side access will be rejected if set to No) Cloned WAN MAC Addr: (in hex format) Enable LAN DHCP: No Yes LAN DHCP Base IP: (base IP for the LAN port, default is 192.168.2.1) LAN DHCP Start IP: (default is 100) LAN DHCP End IP: (default is 199) LAN Subnet Mask: (default is 255.255.255.0) DHCP IP Lease Time: (in units of hours, default is 120 hours or 5 days) DMZ IP: Port Forwarding: WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol
WAN port LAN IP LAN port Protocol

================== ADVANCED SETTINGS PAGE ======================

Admin Password: (purposely not displayed for security protection) Layer 3 QoS: (Diff-Serv or Precedence value) Layer 2 QoS: 802.1Q/VLAN Tag 802.1p priority value (0-7) STUN server is : (URI or IP:port) Keep-alive Interval: (in seconds, default 20 seconds) Use STUN to detect network connectivity: No
Yes, total STUN response misses to restart DHCP (mininum=3) Firmware Upgrade and Provisioning: Upgrade Via TFTP HTTP HTTPS
Firmware Server Path:
Config Server Path:

Firmware File Prefix: Firmware File Postfix:
Config File Prefix: Config File Postfix:

Allow DHCP Option 66 to override server:
No Yes

Automatic Upgrade:
No Yes, every minutes(60-5256000).
Yes, daily at hour (0-23). Yes, weekly on day (0-6).

Always Check for New Firmware at Boot up
Check New Firmware only when F/W pre/suffix changes
Always Skip the Firmware Check Authenticate Conf File: No Yes (cfg file would be authenticated before acceptance if set to Yes) Firmware Key: (in Hexadecimal Representation) SSL Certificate:
SSL Private Key: SSL Private Key Password: System Ring Cadence: Call Progress Tones:
Dial Tone:
Ringback Tone:
Busy Tone:
Reorder Tone:
Confirmation Tone:
Call Waiting Tone:
Syntax: f1=val[,f2=val[,c=on1/off1[-on2/off2[-on3/off3]]]];
(Frequencies are in Hz and cadence on and off are in ms) Lock keypad update: No Yes (configuration update via keypad is disabled if set to Yes) Disable voice prompt: No Yes (voice prompt is disabled if set to Yes) Disable Direct IP Call: No Yes (direct IP call is disabled if set to Yes) NTP Server: (URI or IP address) Syslog Server: Syslog Level:

===================== FXS PORT 1 setup ===========================
Account Active: No Yes Primary SIP Server: (e.g., sip.mycompany.com, or IP address) Failover SIP Server: (Optional, used when primary server no response) Outbound Proxy: (e.g., proxy.myprovider.com, or IP address, if any) SIP transport: UDP TCP TLS (default is UDP) NAT Traversal (STUN): No No, but send keep-alive Yes SIP User ID: (the user part of an SIP address) Authenticate ID: (can be identical to or different from SIP User ID) Authenticate Password: (purposely not displayed for security protection) Name: (optional, e.g., John Doe) DNS Mode: A Record SRV NAPTR/SRV User ID is phone number: No Yes SIP Registration: No Yes Unregister On Reboot: No Yes Outgoing Call without Registration: No Yes Register Expiration: (in minutes. default 1 hour, max 45 days) SIP Registration Failure Retry Wait Time: (in seconds. Between 1-3600, default is 20) local SIP port: (default is 5060 for UDP and TCP; 5061 for TLS) local RTP port: (1024-65535, default 5004) Use random port: No Yes Refer-To Use Target Contact: No Yes Transfer on Conference Hangup: No Yes Remove OBP from Route Header: No Yes Support SIP Instance ID: No Yes Validate Incoming SIP Message: No Yes Check SIP User ID for incoming INVITE: No Yes (no direct IP calling if Yes) SIP T1 Timeout: SIP T2 Interval: DTMF Payload Type: Preferred DTMF method:
(in listed order) Priority 1:
Priority 2:
Priority 3: Send Hook Flash Event: No Yes (Hook-Flash will be sent as a DTMF event if set to Yes) Enable Call Features: No Yes (if Yes, call features using star codes will be supported locally) Offhook Auto-Dial: (User ID/extension to dial automatically when offhook) Proxy-Require: Use NAT IP: (used in SIP/SDP message if specified) Distinctive Ring Tone: used if incoming caller ID is
used if incoming caller ID is
used if incoming caller ID is
Disable Call-Waiting: No Yes Disable Call-Waiting Caller ID: No Yes Disable Call-Waiting Tone: No Yes Disable Visual MWI: No Yes Ring Timeout: (10-300, default is 60 seconds) Delayed Call Forward Wait Time: (Allowed range 1-120, in seconds.) No Key Entry Timeout: (in seconds, default is 4 seconds) Early Dial: No Yes (use "Yes" only if proxy supports 484 response) Dial Plan Prefix: (this prefix string is added to each dialed number) Use # as Dial Key: No Yes (if set to Yes, "#" will function as the "(Re-)Dial" key) Dial Plan: [2-9]xxxxxx|1[2-9]xx[2-9]xxxxxx|011[2-9]x.|[3469]11|*x.}" maxlength="1024" size="60" name="P4200"> SUBSCRIBE for MWI: No, do not send SUBSCRIBE for Message Waiting Indication
Yes, send periodical SUBSCRIBE for Message Waiting Indication Send Anonymous: No Yes (caller ID will be blocked if set to Yes) Anonymous Call Rejection: No Yes Special Feature: Session Expiration: (in seconds. default 180 seconds) Min-SE: (in seconds. default and minimum 90 seconds) Caller Request Timer: No Yes (Request for timer when making outbound calls) Callee Request Timer: No Yes (When caller supports timer but did not request one) Force Timer: No Yes (Use timer even when remote party does not support) UAC Specify Refresher: UAC UAS Omit (Recommended) UAS Specify Refresher: UAC UAS (When UAC did not specify refresher tag) Force INVITE: No Yes (Always refresh with INVITE instead of UPDATE) Preferred Vocoder:
(in listed order) choice 1:
choice 2:
choice 3:
choice 4:
choice 5:
choice 6:
choice 7:
choice 8: G723 rate: 6.3kbps encoding rate 5.3kbps encoding rate iLBC frame size: 20ms 30ms iLBC payload type: (between 96 and 127, default is 97) AAL2-G726-16 payload type: (between 96 and 127, default is 100) AAL2-G726-24 payload type: (between 96 and 127, default is 99) AAL2-G726-32 payload type: (between 96 and 127, default is 104) AAL2-G726-40 payload type: (between 96 and 127, default is 103) G729E payload type: (between 96 and 127, default is 102) VAD: No Yes Symmetric RTP: No Yes Fax mode: T.38 (Auto Detect) Pass-Through Fax tone detection mode: Caller Callee Caller or Callee Jitter buffer type: Fixed Adaptive Jitter buffer length: Low Medium High SRTP Mode: Disabled Enabled but not forced Enabled and forced SLIC Setting: Caller ID Scheme: Polarity Reversal: No Yes (reverse polarity upon call establishment and termination) Loop Current Disconnect: No Yes (loop current disconnect upon call termination) Loop Current Disconnect Duration: (In 100-10000 milliseconds range, default is 200) Hook Flash Timing: In 40-2000 milliseconds range, minimum: maximum: On Hook Timing: (In 40-2000 milliseconds range, default is 400) Gain: TX RX Ring Tones (Syntax: c=on1/off1-on2/off2-on3/off3; [...]) Ring Tone 1: Ring Tone 2: Ring Tone 3: Ring Tone 4: Ring Tone 5: Ring Tone 6: Ring Tone 7: Ring Tone 8: Ring Tone 9: Ring Tone 10:

2 comments:

Chuck Rowe said...

Have you done anything to get the |<=1AAA>[2-9]xxxxxx| part of your dial string working with CallCentric? I've not had any success with that. The phone always seems to ignore it and just sends out the 7 digits, to which CallCentric returns an error message.

Chuck Rowe said...

Never mind. I figured it out. I left the default part of the plan in there. That was messing up the rest. Thanks for the info!