Адрес
Концепция адреса является основой для большинства операций связи. Адрес представляет расположение в сети. Локальное назначение адреса строке или каналу обычно выполняется во время установки поставщика услуг, но его можно изменить позже. Подробные сведения о процедурах можно найти в пакете ресурсов операционной системы для поставщиков услуг, предоставляемых корпорацией Майкрософт, и в документации по поставщикам услуг для сторонних продуктов.
Один адрес может совместно использоваться несколькими устройствами. Разные поставщики коммутаторов имеют разные имена для этой концепции, такие как мосты адресов, номер каталога с множественным оформлением (MADN) или внешний вид моста. Входящий звонок по общему адресу предлагается во всех строках, связанных с адресом. Описание конфигураций, распознаваемых TAPI, см. в разделе константы LINEADDRESSSHARING_ .
Сам адрес является строкой, определяющей расположение в сети. В случае с телефонной сетью адресом является номер телефона с национальными или международными кодами. Если сеть основана на IP-адресе, это может быть IP-адрес. См . LINEADDRESSTYPE_ константы для типов адресов, определенных TAPI. Поставщик услуг может определить дополнительные типы адресов.
Разные адреса имеют разные функции, возможности и состояния. Источником такой информации являются поставщики услуг. Возможности запросов к устройству TAPI, а также механизмы создания отчетов о состоянии и событиях предоставляют приложению сведения для управления адресами.
Приложения получают эти сведения путем обработки событий из TAPI или с помощью операций запроса. Это позволяет приложению учитывать такие факторы, как, например, поддерживает ли данный адрес определенную возможность, например парк.
TAPI 2.x: Приложения вызывают функцию lineGetAddressCaps для определения возможностей телефонии каждого адреса, а затем получают эти сведения в структуре данных LINEADDRESSCAPS . Аналогичным образом приложение может вызывать lineGetDevCaps для линейного устройства, чтобы определить количество адресов, назначенных строке, а также другие сведения.
TAPI 3.x: Приложения используют интерфейсы объектов address для получения сведений о возможностях и событиях адреса.
Многие пользователи выбирают людей, факсы, доски объявлений и другие сущности, выбирая их имена из адресной книги. Фактический набранный номер зависит от географического расположения пользователя и способа подключения устройства, которое будет использоваться. Например, настольный компьютер может иметь доступ к двум линиям, одна из которых подключена к УАТС, а другая — к центральному офису телефонной компании. При вызове одной и той же стороны может потребоваться использовать разные номера. (Например, для набора через УАТС компьютеру может потребоваться набирать префикс "9", чтобы получить внешнюю линию, или другой префикс может потребоваться для вызова через центральный офис.) Кроме того, пользователь может совершать звонки с портативного компьютера и хочет использовать одну статическую адресную книгу даже при звонках из разных расположений или сред телефонии. Возможности преобразования адресов TAPI позволяют пользователю сообщить компьютеру о текущем расположении и нужном устройстве линии для вызова. ЗАТЕМ TAPI обрабатывает любые различия при наборе номера, не требуя изменений в адресной книге пользователя. Приложение использует преобразование адресов для преобразования адреса из канонического формата адреса в формат набираемого адреса .
Связанной темой является обработка международного мониторинга хода выполнения звонков, который представляет собой процесс прослушивания звуковых сигналов, таких как тон звонка, специальные сигналы информации, сигналы о занятости и мелодии звонка, чтобы определить состояние звонка (его ход выполнения по сети). Так как частота и частота сигналов о ходе вызова зависят от страны или региона к стране или региону, поставщик услуг должен знать, какой прогресс вызова следует следовать при выполнении международного исходящего звонка. Таким образом, приложения указывают код страны или региона назначения при размещении исходящих вызовов.
Канонический формат адреса предназначен для универсального постоянного номера каталога. По этой причине числа в адресных книгах лучше всего хранить в каноническом формате.
Ниже приведены сведения о том, что считается каноническим для телефонного адреса.
Канонический адрес телефона — это текстовая строка со следующей структурой:
+ Код страны Space [(AreaCode) Space] SubscriberNumber | Subaddress ^ Name CRLF ...
Компоненты этой структуры описаны в следующей таблице.
Компонент
Значение
+
Эквивалент шестнадцатеричного 2B. Указывает, что число, которое следует за ним, использует канонический формат.
Код страны
Строка с разными размерами, содержащая одну или несколько цифр от "0" до "9" (шестнадцатеричное число от 30 до 39 включительно). CountryCode разделен следующим пробелом. Он определяет страну или регион, в котором находится адрес.
Пробел
Ровно один символ пробела (шестнадцатеричный 20). Он используется для разделения конца части CountryCode адреса.
Код области
Строка с разными размерами, содержащая ноль или больше цифр от "0" до "9" (шестнадцатеричное число от 30 до 39 включительно). Код области — это часть кода области в адресе и является необязательной. Если код области присутствует, ему должен предшествовать ровно один символ левой скобки (28), а за ним следует ровно один символ правой круглой скобки (29) и один пробел (20).
SubscriberNumber
Строка с разными размерами, содержащая одну или несколько цифр от "0" до "9" (шестнадцатеричное число от 30 до 39 включительно). Он также может содержать другие символы форматирования, включая любые управляющие символы набора, описанные в разделе Формат набираемого адреса:
Знак
шестнадцатеричная кодировка
! #
$
*
,
?
@
ABCD
P
T
W
abcd
p
t
w
21 23
24
2A
2C
3F
40
41-44
50
54
77
61-64
70
74
79
Номер подписчика не должен содержать левую скобку или символ правой скобки (которые используются только для разделения кода области), а также не должен содержать символы "|", "^" или CRLF (которые используются для начала следующих полей). Чаще всего символы nondigit в номере подписчика включают только пробелы, точки (".) и дефисы ("-"). Все допустимые символы nondigit, отображаемые в номере подписчика, опущены в dialableString , возвращаемом функцией lineTranslateAddress , но сохраняются в DisplayableString.
|
Шестнадцатеричный (7C). Если этот необязательный символ присутствует, следующие за ним сведения до следующего + | ^ CRLF, или конец канонической строки адреса, обрабатывается как сведения о подадресе, как для подадреса ISDN.
Вложенный адрес
Строка с изменяющимся размером, содержащая вложенный адрес. Строка разделена символами + | ^ CRLF или конец строки адреса. Во время набора номера сведения о дочерних адресах передаются удаленной стороне. Это может быть вложенный адрес ISDN или адрес электронной почты.
^
Шестнадцатеричный (5E). Если этот необязательный символ присутствует, информация, следующая за ним, вплоть до следующего CRLF или конца канонической строки адреса обрабатывается как имя ISDN.
имя;
Строка с разными размерами, которая обрабатывается как сведения об имени. Имя разделено CRLF или концом канонической строки адреса и может содержать другие разделители. Во время набора данных об имени передаются удаленной стороне.
CRLF
Шестнадцатеричный (0D), за которым следует Шестнадцатеричный (0A), и является необязательным. Если он присутствует, это означает, что за этим следует другое каноническое число. Он используется для разделения нескольких канонических адресов как части одной строки адреса (обратное мультиплексирование). Например, каноническое представление номера телефона main коммутатора в корпорации Майкрософт будет следующим:
+1 (425) 882-8080
Формат набираемого адреса — это форма, в которой адрес передается поставщику услуг, который обрабатывает телефонные номера. Следующие сведения касаются доступных для набора адресов в телефонной сети.
Формат набираемого номера позволяет указать несколько адресов назначения одновременно. Эта возможность может быть полезна, если поставщик услуг предлагает некоторую форму обратного мультиплексирования, настроив вызовы к каждому из указанных назначений, а затем управляя информационным потоком как одним потоком мультимедиа с высокой пропускной способностью. Приложение воспринимает эту группу вызовов как один звонок, так как получает только один дескриптор вызова, представляющий совокупную совокупность отдельных телефонных вызовов.
Также можно поддерживать обратное мультиплексирование на уровне приложения. Для этого приложение настроит ряд отдельных вызовов и синхронизирует потоки мультимедиа.
Subaddressing — это возможность, предоставляемая в линиях ISDN, которая позволяет использовать при наборе номера больше информации, чем один номер телефона. Эти дополнительные сведения могут указать отдельное телефонное расширение, которое будет звонить, или в вычислительной среде конкретное приложение, которое будет оповещено. Другие параметры могут описывать необходимые аспекты запрошенного подключения, такие как скорость и время.
Если вложенная адресация поддерживается поставщиком услуг, приложение включает его в адрес, передаваемый любой операции, требующей такой операции.
Телефонный адрес с возможностью набора содержит часть адресной информации и частично навигационный по своему характеру. Любая входная строка, которая не начинается с символа "+", считается не в каноническом формате и, следовательно, в формате адреса с возможностью набора, и возвращается приложению без изменений. Набираемый адрес — это текстовая строка со следующей структурой:
DialableNumber | Вложенный адрес ^ Имя CRLF...
Компоненты этой структуры приведены в следующей таблице.
Компонент | Значение |
---|---|
DialableNumber | Цифры и модификаторы 0-9 A-D * # , ! W W P P T t @ $ ? ; с разделителями | ^ CRLF или конец строки набираемого адреса. Знак "плюс" (+) является допустимым символом в набираемых строках. Он указывает, что номер телефона является полным международным номером. В dialableNumber обратите внимание на следующие определения: 0-9 A-D * # Символы, соответствующие DTMF и (или) импульсным цифрам. |
! | Шестнадцатеричный (21). Указывает, что в строку набора набора необходимо вставить перехватчик (половину секунды перехватчика, а затем половину секунды перед продолжением). |
P p | Шестнадцатеричный (50) или шестнадцатеричный (70). Указывает, что импульсный набор будет использоваться для цифр после него. |
T t | Шестнадцатеричный (54) или шестнадцатеричный (74). Указывает, что тональный набор (DTMF) будет использоваться для цифр после него. |
, | Шестнадцатеричный (27). Указывает, что набор номера должен быть приостановлен. Длительность паузы зависит от устройства и может быть получена из возможностей устройства линии. Для более длительных пауз можно использовать несколько запятых. |
W w | Шестнадцатеричный (57) или Шестнадцатеричный (77). W в верхнем или нижнем регистре указывает, что набор должен продолжаться только после обнаружения сигнала набора. |
@ | Шестнадцатеричный (40). Указывает, что при наборе номера необходимо "дождаться спокойного ответа", прежде чем набирать оставшуюся часть набираемого адреса. Это означает, что нужно ждать по крайней мере один тон звонка, за которым следует несколько секунд тишины. |
$ | Шестнадцатеричный (24). Указывает, что при наборе сведений о выставлении счетов требуется дождаться "сигнала выставления счетов" (например, кредитной карта подсказки). |
? | Шестнадцатеричный (3F). Указывает, что пользователю необходимо получить запрос перед продолжением набора номера. Поставщик фактически не выполняет запрос, но наличие "?" заставляет поставщика отклонить строку как недопустимую, предупреждая приложение о необходимости разбить ее на части и предложить пользователю между ними. |
; | Шестнадцатеричный (3B). Если он указан в конце частично указанной строки с набираемым адресом, это означает, что сведения о набираемом номере являются неполными, а дополнительные сведения об адресе будут предоставлены позже. Компонент ";" разрешен только в части DialableNumber адреса. |
| | Шестнадцатеричный (7C) и является необязательным. Если они есть, то следующие за ним сведения до следующего + | ^ CRLF, или конец строки набираемого адреса обрабатывается как сведения о подадресах (как для подадресов ISDN). |
Вложенный адрес | Строка с изменяющимся размером, содержащая вложенный адрес. Строка разделена следующим элементом + | ^ CRLF или конец строки адреса. При наборе номера сведения о подадресе передаются удаленной стороне. Это может быть вложенный адрес ISDN, адрес электронной почты и т. д. |
^ | Шестнадцатеричный (5E) и является необязательным. Если они есть, информация, следующая за ней, вплоть до следующего CRLF или конца строки набираемого адреса обрабатывается как имя ISDN. |
имя; | Строка с разными размерами, которая обрабатывается как сведения об имени. Имя разделяется CRLF или конце строки набираемого адреса. При наборе номера сведения об имени передаются удаленной стороне. |
CRLF | Шестнадцатеричный (0D), за которым следует шестнадцатеричный (0A). При наличии этот необязательный символ указывает, что за этим следует другой набираемый номер. Он используется для разделения нескольких набираемых адресов как части одной строки адреса (для обратного мультиплексирования). |
Преобразование адресов можно использовать для перевода адреса из канонического формата в формат с возможностью набора номера.