2017-01-08 24 views
2

Я пытаюсь создать приложение UCMA 4.0 для Lync   2010. На этапе разработки приложение будет размещено на моем ноутбуке и сервере lync (на котором у меня нет юрисдикции) подключится к моему ноутбуку и запустит приложение. ОС на моем ноутбуке - это Windows 7 SP 1, а .NET Framework - 4.5.Общие сведения о командлете PowerShell для добавления доверенного приложения UCMA 4.0 и доверенной конечной точки приложения UCMA 4.0

Я довольно новичок в кодировании UCMA, и хотя я изучил его, все еще есть некоторые серые области, которые необходимо решить. Ниже приведены некоторые из вопросов, на которые я не получил четкого ответа. Кроме того, для меня важнее понять nitty gritties, потому что администратор сервера Lync - это новый человек на работе, который, как и я, никогда не работал над приложениями UCMA.

  1. Мне нужно создать пул приложений. Для этого, командлет PowerShell для использования является

    New-CsTrustedApplicationPool -Identity foo.example.com -Registrar [Registrar Id] -Site [Site id] –ComputerFqdn foo.example.com 
    

    Я предполагаю, что эта команда должна быть запущена на сервере Lync. Поскольку мой ноутбук будет единственным компьютером в пуле приложений на этапе разработки, мои -ComputerFQDN и -Identity пула приложений будут одинаковыми. Это верно? Кроме того, где я получу идентификатор регистратора и идентификатор сайта? В чем разница между запрограммированным вручную приложением и автоматически созданным приложением?

  2. Для добавления доверенного приложения:

    New-CSTrustedApplication –ApplicationId $ApplicationId -TrustedApplicationPoolFqdn $ApplicationFqdn -Port $PortNo 
    

    Что именно это идентификатор приложения. Является ли это моим компьютерным именем FQDN/application_name? Я предположил, что TrustedApplicationPoolFqdn совпадает с FQDN моего компьютера, поскольку в пуле приложений есть только один компьютер. Также будет доступен любой доступный номер порта. или он должен быть тем, кто слушает мое приложение? Поскольку я не закончил кодирование своего приложения, получив точный порт no. это невозможно. Они хотят настроить сервер до того, как будет выполнена кодировка. Это вызов.

  3. Для создания доверенного приложения конечной точки:

    New-CSTrustedApplicationEndpoint –ApplicationId $ApplicationId -TrustedApplicationPoolFqdn $ApplicationFqdn -SipAddress $ApplicationSipAddress –DisplayName 
    

    Что -SipAddress здесь? Где и как я получу адрес SIP?

Я знаю, что у меня было много вопросов. Но я мало разбираюсь в знаниях и доступных ресурсах, и я испытываю отчаянную потребность в каком-то направлении, учитывая временные ограничения, с которыми мне приходится сталкиваться. Помимо вопросов, если кто-нибудь может помочь мне с любыми головами, вы более чем приветствуетесь и цените это. Все, что мне сейчас нужно, - это перспектива сообщества stackoverflow.

+0

Не уверен, что это помогает, но вы посмотрели [этот ответ] (http://stackoverflow.com/a/25159900/45375)? – mklement0

+0

Я видел это. Это полезно, но не отвечает на все мои вопросы. – KChow

ответ

2

Я предполагаю, что этот командлет должен запускаться на сервере lync. Поскольку мой ноутбук будет единственным компьютером в пуле приложений на этапе разработки, так что my -ComputerFQDN и -Identity пула приложений одинаковы. Это правильно?

No. Он может быть запущен с любого компьютера, на котором установлены команды PowerShell Lync/SfB, и у вас достаточно «прав» для запуска команд powershell. Я все время запускаю такие команды из своей машины dev.

Обычно я разрабатываю UCMA v4 (не 5) и при установке ocscore.msi из SDK/runtime установите или скопируйте его из установки Lync 2013. Вы можете установить PowerShell SfB для установки, но я обнаружил, что это больнее, чем версия Lync 2013, и в основном вам не нужна версия SfB (то есть команды Lync 2013 powershell отлично работают на установке сервера SfB).

Также, где я получу идентификатор регистратора и идентификатор сайта?

Идентификатор регистратора - это фронт-пул (прокси-сервер для регистрации). Вы можете получить его с помощью команды Powershell: Get-CsService -Registrar

Посмотрите на поле "идентичность" и должны выглядеть следующим образом: регистратора: name.lyncdomain например Регистратор: myserver.company.com

Вы можете получить идентификатор сайта из команды Get-CsSite. Он должен выглядеть так: Сайт: ID, например. Сайт: MY_SITE

В чем разница между запрограммированным вручную приложением и автоматически созданным приложением?

Это очень большая разница.

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

Приложение с автозаполнением требует меньше кода для настройки и запуска. Все, что вам нужно - это идентификатор, и с этим идентификатором вы можете запросить API UCMA, чтобы вытащить всю эту доверенную установку приложения и все доверенные конечные точки приложения. Это звучит здорово, но недостаток автоматической настройки приложения означает, что все компьютеры в пуле приложений должны быть настроены как точка репликации для базы данных Lync. Чтобы настроить компьютер в качестве точки репликации, БОЛЬШАЯ боль в проходе (требуется около 1/2 часа для настройки, если вы знаете, что делаете).

Я предлагаю настроить пул приложений/приложение как приложение, созданное вручную, поскольку на самом деле это намного проще в долгосрочной перспективе, если только вам не требуется автоматически «знать», какие доверенные конечные точки приложения настраиваются для вашего приложения.

Что такое идентификатор приложения.

Все, что угодно. Он просто должен быть уникальным (вроде) в среде Lync. Вы можете использовать команду Get-CsTrustedApplication, чтобы узнать, какие другие идентификаторы приложения уже используются. В основном это уникальный идентификатор вашего приложения.

Это мое полное имя для компьютера/имя_приложения?

Это полное доменное имя (пул приложений) пула приложений. Если должно соответствовать значению компьютера ComputerFqdn пула приложений. В основном это говорит Lync, что пул приложений, на котором работает это доверенное приложение. Надежные приложения могут запускаться только на компьютере пула приложений.

- это то же самое, что и полное FQDN для компьютера, поскольку в пуле приложений есть только один компьютер.

В одном пуле приложений для компьютеров, да. В пуле приложений с несколькими компьютерами нет. Это ComputerFqdn пула.

Также имеется любой доступный порт №. или он должен быть тем, кто слушает мое приложение?

Номер порта должен быть доступным портом на компьютере бассейна. Он используется приложением UCMA для прослушивания и используется сервером Lync (FE) для подключения к приложению UCMA в соответствии с SIP RFC.

Для приложения с автоподдержкой приложение UCMA автоматически загружает это значение и использует его. Для приложения с ручным приложением вы можете либо жестко закодировать его, либо загрузить его из своей собственной настройки конфигурации (например, из реестра?). Я бы порекомендовал вам загружать из вашей собственной конфигурации где-то, как в реестре.

Что такое -SipAddress здесь? Где и как я получу адрес SIP?

Это то, что вы хотите, чтобы оно было. Он должен быть уникальным SIP-адресом во всей настройке Lync. Он должен быть в формате sip: name @ lyncdomain, например. sip: [email protected] Это будет основной точкой входа для сообщений SIP в ваше приложение, если ваше приложение даже использует/хочет конечную точку sip: совершать звуковые вызовы, получать звуковые вызовы, предоставлять присутствие, отправлять/получать сообщения IM и т. д.

Если вы не собираетесь использовать конечную точку доверенного приложения (например, вы хотите только олицетворять конечные точки пользователя), вам не нужны никакие доверенные конечные точки приложения.

+0

Спасибо, что нашли время, чтобы ответить на этот вопрос. Ваш ответ действительно полезен. Мой сценарий заключается в том, что я разрабатываю Lync-бот на своем ноутбуке, а сервер lync организации размещается где-то в другом месте. Какими должны быть шаги, предпринятые для создания прототипа прототипа lync? Что я должен делать с моей стороны и что должен делать администратор с его конца? Когда появляется дополнительный код для ручного обеспечения, как вы сказали? Я предполагал запустить другой командлет для ручного обеспечения, который я упомянул, будет делать. Было бы огромной помощью, если бы вы могли дать мне обзор о том, как идти по develpmnt. – KChow

+0

Я бы предложил настроить вашу машину-разработчик как единый пул компьютеров для тестирования. Ознакомьтесь с моим ответом здесь http://stackoverflow.com/a/39111201/23235 со ссылкой на документы по подготовке вручную. В зависимости от ваших прав AD вам или администратору может потребоваться выполнить команды powershell. Установите ocscore и попробуйте. Вы можете попросить своего администратора добавить пользователя в группу, чтобы вы могли запускать эти команды: https://technet.microsoft.com/en-us/library/dn481129.aspx –

+0

Для ручной или автоматической подготовки выписки https://technet.microsoft.com/en-us/library/gg425804.aspx, в частности параметр RequiresReplication. т.е. true == автоматическое или ручное предоставление, только false == manual. Если вы установили (или по умолчанию) значение true, вам нужно настроить компьютеры в пуле в качестве точки репликации. Это боль в заднице. –