Mon, 18 Jan 2010 20:35:22 +0100
Correct FTP URLs.
michael@13 | 1 | ISN (ITAD Subscriber Number) lookup integration contribution code |
michael@13 | 2 | |
michael@13 | 3 | Contribution |
michael@13 | 4 | |
michael@13 | 5 | This contribution introduces ISN formatting logic into the OpenSIPS |
michael@13 | 6 | ENUM module, allowing it to perform NAPTR based ISN lookups on the |
michael@13 | 7 | user part of the Request-URI in addition to the existing ENUM lookups. |
michael@13 | 8 | |
michael@13 | 9 | Rationale |
michael@13 | 10 | |
michael@13 | 11 | This extends the utility of the existing E.164 formatting logic which |
michael@13 | 12 | previously caused valid ISN lookups to fail (although the OpenSIPS |
michael@13 | 13 | documentation did suggest that lookups to freenum.org would succeed.) |
michael@13 | 14 | |
michael@13 | 15 | Compliance |
michael@13 | 16 | |
michael@13 | 17 | The author believes that the introduced logic complies with the |
michael@13 | 18 | relevant ITAD standards as defined by RFC 3872 and RFC 2871, however |
michael@13 | 19 | it seems that at this time ISN is rather loosely defined according to |
michael@13 | 20 | nonstandard documentation provided by freenum.org. |
michael@13 | 21 | |
michael@13 | 22 | Location |
michael@13 | 23 | |
michael@13 | 24 | http://scm.europalab.com/contrib/opensips/ |
michael@13 | 25 | http://scm.europalab.com/contrib/file/tip/opensips/ |
michael@13 | 26 | |
michael@13 | 27 | Instructions |
michael@13 | 28 | |
michael@13 | 29 | To integrate this contributed logic into the source code tree of |
michael@13 | 30 | a OpenSIPS distribution, download the unified diff and use the |
michael@13 | 31 | patch(1) command: |
michael@13 | 32 | |
michael@13 | 33 | $ cd /tmp && mkdir enum-patch && cd enum-patch |
michael@13 | 34 | $ wget http://scm.europalab.com/contrib/raw-file/tip/opensips/enum-isn.diff |
michael@13 | 35 | $ tar zxf /tmp/opensips-<version>-tls.tar.gz |
michael@13 | 36 | $ cd opensips-<version>-tls |
michael@13 | 37 | $ patch -p0 <../enum-isn.diff |
michael@13 | 38 | |
michael@14 | 39 | Testing |
michael@14 | 40 | |
michael@14 | 41 | A basic test of this contribution |
michael@14 | 42 | Once compiled and installed, a basic test of this contributed software |
michael@14 | 43 | involves calling the new exported function in the routing script of the |
michael@14 | 44 | OpenSIPS configuration file: |
michael@14 | 45 | |
michael@14 | 46 | # dial '1234*256' from a UAC first |
michael@14 | 47 | isn_query(); |
michael@14 | 48 | t_relay(); |
michael@14 | 49 | |
michael@14 | 50 | According to the freenum.org cookbook, the ISN '1234*256' is being |
michael@14 | 51 | provided for testing. After dialing the caller hears monkeys screaming. |
michael@14 | 52 | |
michael@13 | 53 | Disclaimer |
michael@13 | 54 | |
michael@13 | 55 | This software contribution is based on source code from OpenSIPS SVN |
michael@13 | 56 | revision 6511. The author makes no guarantees as to this contribution. |
michael@13 | 57 | A user who downloads and executes it does so at his own risk. |
michael@13 | 58 | |
michael@13 | 59 | Michael Schloh von Bennewitz |
michael@13 | 60 | http://michael.schloh.com/ |
michael@13 | 61 | Monday, 18. January 2010 |