А я для пыха использую http://code.google.com/p/xmpphp/ - клиентам часто требуется организовать уведомления о заказах с интернет магазинов. Собственно jabber для этого очень даже.
То, что xmpp компоненты вешают 1С, - возможная причина частый опрос клиентов сервером (на проверку соединения). Тут либо надо отключать это на сервере, либо урезать функционал компоненты. Другая причина - неправильное освобождение ресурсов(компонентой. либо в 1С коде не прописано). Из-за этого 1С вообще может крашится. На самом деле я рекомендую использовать jabber в 1С - только таким образом как у вас в статье (т.е. только для регламентных процедур - отправка сообщений по событию) - я как раз сейчас что-то такое и делаю. Для клиентов лучше использовать или какой-нибудь web клиент, либо Miranda. Для 1С-ки компонент можно использовать старый, но мне больше всех понравился - http://jabbercom.sourceforge.net/ - com server - документация, все есть(единственно, были замечены некоторые небольшие расхождения между ней и компонентой, видимо автор просто не обновил доки).
мКлиентJabber = Новый COMОбъект("JabberCOM.JabberSession");
ДобавитьОбработчик мКлиентJabber.OnConnect, OnConnect;
ДобавитьОбработчик мКлиентJabber.OnMessage, OnMessage;
ДобавитьОбработчик мКлиентJabber.OnException, OnException;
ДобавитьОбработчик мКлиентJabber.OnCommError, OnCommError;
ДобавитьОбработчик мКлиентJabber.OnAuthError, OnAuthError;
ДобавитьОбработчик мКлиентJabber.OnXML, OnXML;
ДобавитьОбработчик мКлиентJabber.OnXMLTag, OnXMLTag;
ДобавитьОбработчик мКлиентJabber.OnDisconnect, OnDisconnect;
ДобавитьОбработчик мКлиентJabber.OnRosterStart, OnRosterStart;
и т.д. событий там до хера. Описание событий есть в доках. Например OnMessage - при поступлении сообщения. Также есть возможность внедрять свой xml код. В таком случае удобно событие
Процедура OnXML(Direction, txt)
// Direction = 0 --> Исходящие
// Direction = 1 --> Входящие
КонецПроцедуры
пишу по памяти, - многое не помню. В этой компоненте главное правильно отключать соединение при завершении работы, иначе 1С-как может упасть.
(7) KV1s, Что значит не работает? Замечательно работает. На сервере, где стоит 1С сервер, должен быть установлен php и задано соответствие для файлов с расширением .php.
Я не знаю на чем у нас jabber крутится, по идее, должно работать на всех.
{ОбщийМодуль.jabber.Модуль(28,4)}: Процедура или функция с указанным именем не определена (ЗапуститьПриложение)
<<?>>ЗапуститьПриложение(sender); (Проверка: Сервер)
Тип: Строка.
Командная строка для запуска приложения либо имя файла, ассоциированного с некоторым приложением.
<ТекущийКаталог> (необязательный)
Тип: Строка.
Задает текущий каталог запускаемого приложения.
В режиме веб-клиента игнорируется.
<ДождатьсяЗавершения> (необязательный)
Тип: Булево.
Истина - дожидаться завершения запущенного приложения перед продолжением работы.
Значение по умолчанию: Ложь
<КодВозврата> (необязательный)
Тип: Число; Неопределено.
Параметр (если он указан) содержит код завершения работы системы - значение, передаваемое приложением операционной системе, если работа была завершена корректно, если такой код был получен. В противном случае возвращает Неопределено.
Для получения кода возврата значение параметра ДождатьсяЗавершения должно быть установлено в Истина, запускаемое приложение должно существовать и завершить свою работу корректно.
Описание:
Выполняет запуск внешнего приложения либо открытие файла с использованием ассоциированного с ним приложения.
В отличие от функции КомандаСистемы запуск приложения выполняется непосредственно, минуя командный интерпретатор.
Поведение метода зависит от используемой операционной системы и режима запуска. Используемые в реализации метода механизмы операционной системы допускают различные варианты использования. Например, в некоторых режимах метод может открывать html ссылки с помощью браузера "по умолчанию". Такие возможности не являются штатными т.к. не гарантируется их наличие во всех режимах запуска.
Для работы метода на веб-клиенте, необходимо предварительно подключить расширение работы с файлами.
Пример:
// открытие файла MS Excel
ЗапуститьПриложение("Таблица.xls");
Но это только пол беды сами PHP скрипты при запуске из CMD не отправляют сообшения :(
Понимаю что php скрипт не ваш но может что посовеуете, по логам видно что конект прошол и сообшение отправлено.. а ничего не приходит.
Version: Openfire 3.6.4
2012-05-16 17:29:56
Initializing class variables
2012-05-16 17:29:56
Trying to connect at server-2010:5223
2012-05-16 17:29:58
Connection made successfully at server-2010:5223
2012-05-16 17:29:58
Sending XML>>
<?xml version="1.0"?><stream:stream xmlns:stream="http://etherx.jabber.org/streams" version="1.0" xmlns="jabber:client" to="orion" xml:lang="en" xmlns:xml="http://www.w3.org/XML/1998/namespace">
2012-05-16 17:29:59
Sending XML>>
<message type="chat" from="helpdesk@domen" to="user@domen"><body>Тестовое сообщение</body></message>
2012-05-16 17:29:59
Sending XML>>
</stream:stream>
Принцип работы такой: формируется текстовый файл с php кодом с расширением .php, запускается с помощью интерпретатора. Чем он формируется, разницы нет.
Обзовите меня некропостером, но...
Насколько я понимаю, чтобы сервер смог что-то записать в файлик на "\\server\e$\AddIn\jabber\", нужно пользователю, под которым запущен сервер, дать права на запись на диск Е. Так?