...
<внешний адрес>
- внешний IP-адрес или доменное имя , и порт, по которым будет осуществляться доступ к сприкладному прикладному решению.<порт>
- порт, на котором будет отвечать веб-сервер<имя установки>
- желаемое имя прикладного решения (видаhttp://<адрес сервера>:<порт>/<имя установки>
) (EN, без пробела)- данные для подключения к серверу MSSQL:
<адрес СУБД>
- адрес или имя сервера- тип аутентификации (встроенная или Windows)
- логин и пароль для аутентификации в СУБД
...
- скачать пакет с решением и распаковать его в нужное место (по умолчанию - в корень системного диска C: ). На каталог назначить права для пользователя, от имени которого запускается пул приложений.
- структура каталога следующая
express
- каталог прикладного решенияadmin
- в каталоге лежит веб-интерфейс и все для его настройкиapp
- каталог для размещения сборок мобильного приложенияservices
- каталог с веб-сервисами
GrotemServer
- каталог, в котором рекомендуется разворачивать сервер Grotem.Mobilesolutions
- каталог, в котором рекомендуется разворачивать решения (задается в настройках сервера Grotem.Mobile)metadata
- каталог с файлами дял для создания мобильного решения (metadata.xml и т.д.)
- скачать и распаковать архив сервера Grotem.Mobile по ссылке https://develop.superagent.ru. Содержимое скаченного архива (папку
bin
и находяшиеся находящиеся рядом с ней файлы) поместить в каталогGrotemServer
. - установить права на каталог с прикладным решением и сервером
...
- в структуре перейти на "Default Web Site"
- в контекстном меню выбрать пункт "Добавить приложение..."
- в поле "Псевдоним" указать
GrotemServer
- в поле "Пул приложений" выбрать ранее созданный пул "grotem_pool"
- в поле "Физический путь" указать путь до каталога, куда распакован архив сервера Grotem.Mobile
...
DataBaseServer - параметры соединения с БД (укзаать указать параметры в строке соединения)
для смешанной авторизации на SQL строка подключения будет иметь вид
server=localhost;User Id=<username>;Pwd=<password>;Connection Timeout=3600
для Windows-авторизации:
server=localhost;Integrated Security=SSPI;Connection Timeout=3600
SolutionsFolder - указать каталог для создания решений
- BitMobileServerId - в случае необходимости - изменить префикс сервера
- RootPassword - установить пароль для доступа к серверу
...
средствами Utils.exe
создать мобильное решение на основе файла
metadata.xml
из каталогаmetadata
(имя в EN без пробелов)Utils.exe -sc -host http://localhost/GrotemServer -p <server_password> -sn express
установить пароль решения
Utils.exe -ssp -host http://localhost/GrotemServer -p <server_password> -sn express -sp <solution_password>
загрузить метаданныеметаданные на основе файла
metadata.xml
из каталогаmetadata
(имя в EN без пробелов)Utils.exe -dm -host http://localhost/GrotemServer -sp <solution_password> -sn express ..\metadata\metadata.xml
загрузить начальные данные
Utils.exe -ud -host http://localhost/GrotemServer -sp <solution_password> -sn express ..\metadata\data.xml
...
с помощью SQL Management Studio (или другими средствами)
- убедиться, что создана БД мобильного решения (имя БД состоит из
Bitmobile_<префикс_сервера>_<имя_решения>
, напримерBitmobile_1_express
) - к этой БД применить скрипт
SuperServiceDatabaseUpdate.sql
из каталогаmetadata
- В таблицу dbo.dbConfig внести следюущие следующие значения:
- в строку, где Key=bitmobileURL - в поле Value вставить URL мобильного решения (вида
https://express.grotem.com/bitmobile3/solution
) - где Key=bitmobileLogin - вставить admin
- где Key=bitmobilePass - вставить пароль от мобильного решения
- в строку, где Key=bitmobileURL - в поле Value вставить URL мобильного решения (вида
- убедиться, что создана БД мобильного решения (имя БД состоит из
...
- проконтролировать доступ к мобильному решению: в браузере перейти по адресу
http(s)://<внешний адрес клиента:порт>/<имя сервера Grotem.Mobile>/<имя решения>/device/ping
, где:<внешний адрес клиента:порт>
- полученные от клиента данные (см. раздел "Заполнение паспорта клиента", пункт 1)<имя сервера Grotem.Mobile>
- имя приложения, под которым был развернут сервер Grotem.Mobile (по умолчанию server)<имя решения>
- в случае успеха в окне браузера болжен должен отобразиться ответ "pong"
...
Подключение каталога с прикладным решением к IIS
В останстке оснастке "Internet Information Server (IIS)" ("Панель управления" - "АдминистраированиеАдминистрирование") перейти в раздел "Default Web Site".
- в контекстном меню "Default Web Site" выбрать пункт "Добавить витруальный виртуальный каталог..."
- в открывшемся окне указать
- в поле "Псевдоним" -
<имя установки>
(см. паспорт клиента) - в поле "Физический путь" - путь до каталога
express
в каталоге с решением (по умолчаниюc:\inetpub\<имя_распакованого_решения>\express
)
- в поле "Псевдоним" -
- проверить настройки при помощи "Тест настроек..."
если наблюдаются ошибки авторизации - укажите учетные данные в разделе "Подкл. как..."
...
- в IIS создать новое Приложение
- в структуре "Диспетчера служб IIS" найти подкаталог
express\service
- в контекстном меню выбрать "Преобразовать в приложение"
- в качестве Application Pool выбрать созданный ранее пул
- проверить настройки соединения
- в случае ошибок авторизации - принудительно установить учетные данные для подключения
- в структуре "Диспетчера служб IIS" найти подкаталог
Также необходимо добавить приложение под именем "services" с настройками аналогичными "service" .
выполнить настройки вебвыполнить настройки веб-сервиса:
- перейти в "Редактор конфигураций"
- адрес сервера БД - в параметры
DataAccess:Database:ServerName
иDataAccess:DatabaseRo:ServerName
- имя БД мобильного решения - в
DataAccess:Database:DatabaseName
иDataAccess:DatabaseRo:DatabaseName
- признак использования Windows-аутентификации - в
DataAccess:Database:UseWindowsAuthentification
иDataAccess:DatabaseRo:UseWindowsAuthentification
- логин (если используется встроенаня встроенная авторизация MSSQL) - в
DataAccess:Database:UserName
иDataAccess:DatabaseRo:DatabaseName
- пароль (если используется встроенаня встроенная авторизация MSSQL) - в
DataAccess:Database:Password
иDataAccess:DatabaseRo:Password
...
Проверка работоспособности веб-сервисов
Для проверки работоспосбности работоспособности используется встроенный модуль Swager, автоматически публикуемый по адресу http(s)://<внешний адрес клиента:порт>/<имя прикладного решения>/service/Docs
где:
<внешний адрес клиента:порт>
- полученные от клиента данные (см. раздел "Заполнение паспорта клиента", пункт 1)<имя установки>
- имя установки прикладного приложения (по умолчанию GrotemExpress) (см. соответсвующий соответствующий параметр в паспорте клиента)
...
- в каталоге admin скопировать файл index.html.template в index.html
в файле index.html заполнить следуюшие следующие параметры:
%BASE_HREF% - строкой вида
/<имя решения>/admin/
(в 2-х местах)- начальный и конечный "слэши" - обязательны
%BASIC_URL% - адресом подключения в виде
http://<имя решения>[:<порт>]/
- "слэш" в конце строки обязятелен обязателен
- порт нужно указывать, только если он отличается от стандартных для проотоколво протоколов http (80) или https (443)
%SERVICE_URL% - строкой вида
/<имя решения>/service/
- начальный и конечный "слэши" - обязательны
%API% - заменить на строку
api/
- %VERSION% - заменить на строку
version
- %HASH_LINK% - заменить на строку
HASH_LINK
- %GOOGLEPLAYURL% - оставить без изменений - это ссылка для скачивания приложения с Google Play
- %ANDROID_URL% - оставить без изменений, либо указать ссылку для скачивания apk-файла для ANDRIODANDRIOD со страницы входа в веб-интерфейс
В итоге файл должен выглядеть примерно следующим образом (считаем. что параметр <имя решения>
принят за GrotemExpress)
...
...
<head>
<base href='/express/admin/'>
...
<script>
var config = {
"BASE": "/express/admin/",
"BASIC_URL": "http://xx.xx.xx.xx/",
"SERVICE_URL": "/express/service/",
"API": "api/",
"VERSION": "version",
"HASH_LINK": "HASH_LINK",
"ADMIN_SERVICE_DEV": "/"
"GOOGLE_PLAY_URL": "https://play.google.com/store/apps/details?id=com.grotem.express",
"ANDROID_URL": "%ANDROID_URL%"
"
}
</script>
```
Проверка работоспособности веб-интерфейса
...
В настройке URL Rewrite
создайте одно пустое правило - оно будет выступать в качестве шаблона. Заполним обязательные поля: "Имя", "Шаблон" и "URL-адрес переопределения значением" значением "Template rule" и нажмем "Применить".
Далее перейдите в каталог, где расположено прикладное решение и отредактеруйте отредактируйте находящийся там файл Web.config - раздел <rules>
должен иметь принять следующий вид:
``` ...
<rules>
<rule name="WebAdmin" enabled="true" stopProcessing="true">
<match url="(admin)/.*"/>
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_URI}" matchType="IsDirectory" negate="true" pattern="admin/(api)"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
<add input="{REQUEST_URI}" pattern="admin/(api)" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
</conditions>
<action type="Rewrite" url="{R:1}/"/>
</rule>
<rule name="app to admin" enabled="true" stopProcessing="true">
<match url="([^/]*)app/$"/>
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
</conditions>
<action type="Redirect" url="{R:1}/express/admin/" redirectType="Found"/>
</rule>
<rule name="From Root to login" stopProcessing="true">
<match url="^(\s*)$"/>
<action type="Redirect" url="{R:0}/express/admin/" redirectType="Found"/>
</rule>
</rules>
...
- Запросить лицензии (адрес https://clients.superagent.ru/getlicense/)
- Активировать лицензии на сервере Grotem.Mobile с помощью
Utils.exe
- Убедиться, что вход в мбоильное мобильное приложение и первоначальная синхронизация проходят успешно (по умолчанию с пользователем Admin и новым паролем)
Установка сертификата для Push-уведомлений на iOS
Операционаая Операционная система iOS для отправки Push-уведомлений требует установку специального сертификата.
...
Установка сертификата производится при помощи утилиты Utils.exe
, запускаемй запускаемой с ключом -ucert
(подробности смотрите в справке Utils.exe -h
)
...