Как создать ссылку для набора SIP-адреса в приложении VoIP на iPhone - PullRequest
3 голосов
/ 10 марта 2011

Я хочу правильно разметить все телефонные номера на моем сайте, чтобы они были кликабельными. Решение было предложено для SO : в целом и специально для iPhone . Однако при нацеливании на iPhone это вызывает обычное приложение для телефона.

Возможно ли иметь ссылку, которая вызывает приложение SIP VoIP, если оно установлено (я полагаю, что на ПК телефонная ссылка всегда вызывает приложение VoIP, потому что у них просто нет встроенных обычных телефонов ...)

1 Ответ

5 голосов
/ 10 марта 2011

Возможно, но с некоторыми ограничениями.

Любое приложение может зарегистрировать пользовательскую схему URL . Но эта схема URL " должна " уникальна. Например, my-cool-sip-app: ..., другое приложение может иметь схему, такую ​​как super-duper-sip-app: и т. Д. Вы можете проверить, установлено приложение или нет с выбранной схемой URL (UIApplication, canOpenURL: ).

Или, несколько приложений могут иметь одинаковую схему URL, в вашем случае sip: ... например. Но если у вас установлено 2 или более приложений с одинаковой схемой, вы не можете сказать, какое из них должно обрабатывать sip: ... URL. Документация Apple:

Если ваш тип URL включает схему это идентично определенному Apple, приложение от Apple запускается вместо вашего приложение. Если несколько сторонних приложения регистрируются для обработки та же схема URL, она не определена как какое из приложений выбрано для обрабатывать URL этого типа.

Допустимые SIP-адреса:

  • SIP: somebody@10.1.2.3 SIP URL с IP адрес.
  • SIP: somebody@example.com; транспорт = TCP SIP URL с транспортом, указанным как TCP. Транспорт по умолчанию - UDP, если нет указано.
  • SIP: somebody@example.com Базовый SIP URL.
  • SIP: +12225550189@example.com; пользователь = телефон SIP URL с глобальным номером телефона и указанный шлюз.
  • SIP: +1 206 555-0146@10.2.3.4; user = SIP URL телефона с глобальным форматом номера телефона и указанный шлюз.

Итак, если у вас установлено приложение SIP, вы должны попробовать один из упомянутых URL SIP. Любое приложение SIP должно поддерживать его.

Вот приложение Acrobits Softphone , в котором вы можете прочитать (в описании), что оно поддерживает схему asoftphone: number URL. Это хорошо, если вы хотите использовать только это приложение, но это плохо для конечного пользователя, потому что другие разработчики не хотят проходить через AppStore и добавлять поддержку всех пользовательских схем URL, кроме sip: ...

Мой ответ - попробуйте sip: ... и если у вас хорошее SIP-приложение, оно должно безупречно обрабатывать эти ссылки.

...